1

私はコードをもっている

<link rel="canonical" href="{!$Setup.websiteSystemVariables__c.Main_URL__c+$CurrentPage.Name}"/>

どこからチェックしたい

$Setup.websiteSystemVariables__c

$CurrentPage.Name

値が来ています..私はソースをページビューしますこれは-として表示されます

<link href="xyz.comhomepageAB" rel="canonical" />

しかし、私はそれをしたい-

URLで述べたように、URLとページ名の間にバックスラッシュを追加したい--

 <link href="xyz.com/homepageAB" rel="canonical" />

このバグを修正することはできません。

私はこれについて研究しました..クラス、コンポーネントをチェックしましたが、これを解決できません..助けてください..

ありがとう !!

4

1 に答える 1

1

あなたが求めたことの完全な説明

$Setup.websiteSystemVariables__cカスタム設定オブジェクトの名前になります(Setup->Develop->Custom Settings)。おそらくすでに設定があります(そうでない場合、ページはコンパイルされません)。そこに少なくとも1つの行があり、Main_URL__cフィールドに何か意味があるかどうかを確認します。開発者サンドボックス(フルコピーではない)を使用している場合、データは本番環境からコピーされないため、設定が空である可能性が高いことに注意してください。階層設定のようです。「組織」レベルでデータを追加すれば、準備は完了です。

$CurrentPage.NameVisualforceページの名前は何でもかまいません( ?)ここhomepageABでもう少し詳しく読むことができます。必要に応じて、PageReferenceクラスのメソッドを模倣するマージフィールドを試してください(「get ...」の部分を除く)。 。

あなたの実際の問題の解決策;)

このカスタム設定に移動し、「メインURL」の値を変更してバックスラッシュを追加するxyz.com/か(つまり「」)、コードを次のように変更します。

href="{!$Setup.websiteSystemVariables__c.Main_URL__c+ '/' + $CurrentPage.Name}"

本番環境での値を確認し、サンドボックスで同じ形式を使用してください。そうしないと、URLに2つの円記号が含まれる可能性があります...

于 2013-01-08T10:42:51.753 に答える