2016-08-21 2 views
1

私のプロジェクトでワイルドカードURLを使用しようとしましたが、それは私のためには機能しません。私はページURLを/path/to/page/{UserId}に設定しました(名前付けの競合を防ぐためにUserNameNinjaMasterワイルドカード名を試しました)が、テンプレートまたはWebパーツでこの変数にアクセスできませんでした。Kentico 9でワイルドカードURLを使用するには?

私のHTMLテンプレートでは、{% UserId #%},{% UserName #%}および{% NinjaMaster #%}を渡してみましたが、何も起こりません。 /path/to/page/12345/path/to/page/?UserId=12345/path/to/page/?userid=12345などのURLを試しました。

答えて

2

URLのワイルドカード名は実際にはクエリ文字列です。 /path/to/page/5を訪問(ワイルドカードURLが/path/to/page/{UserId}である)、URLをマクロでクエリ文字列値にアクセスするには/CMSPages/PortalTemplate.aspx?aliasPath=/actual/path/to/page&UserId=5

の線に沿って何かに書き換えられ

query string macrosを読む{% QueryString.UserId %}

1

を使用。私は形式でマクロを使用し、URLからクエリ文字列パラメータの値をロードするにはKentico's documentation

から直接引用しています{? UserId ?}または{% QueryString.UserId %}

0

:あなたは構文の2種類を使用することができます

{? parameter ?}

クエリ文字列マクロは、すべてのK#構文をサポートしています。使用可能なすべてのクエリ文字列パラメータの名前は、対応するパラメータの値を格納する変数として自動的に機能します。

{% QueryString.parameter %}

は例えば、/Home.aspx?nodeid=10のようなURLを持つページに、{? nodeid ?}はあなたが標準マクロ内のクエリ文字列パラメータの値を取得することができ、また10

に解決します

関連する問題