2

TLDR; 複数のレベルで複雑な仮想アイテムを操作するための最良または推奨される方法は何ですか?

現在、クエリ文字列変数を使用してプロパティをフィルタリングする代わりに、URLを拡張して、それらのURLをフィルタリングできるようにする作業を行っています。
イベント:
~/events/2012/aprilまたは
~/events/lunchesまたは
~/events/6CB27D08-358E-49AA-8107-16A50E963C70

現在、最後のケースまたは年を処理するためのワイルドカード設定がありますが、1つのレベルしか処理しないワイルドカードの障害に遭遇したため、1つのワイルドカードだけでは処理できません/events/{0}/{1}。さらに、私は一般的なフレンドリーなURLが最終的になると信じています/events/2012/april/<external_id>_<event_name>

ワイルドカードを使用して、現在知っていることからそれぞれのケースを処理するために、3つの異なるレイアウトで3つのレイヤーを深く配置する必要があります

Events/
        *
          *
            *

複数のレベルで複雑な仮想アイテムを処理するためのより良い方法またはより推奨される方法はありますか?

4

2 に答える 2

3

ここでは正しいパスを使用しており、URLのセグメントごとにワイルドカードアイテムが必要になるという点で正しいです。ただし、ワイルドカードが存在するからといって、それを使用する必要があるわけではありません。つまり、/events/*/*アイテムは/events/2012/aprilURLを処理します。

このブログ投稿http://www.sitecore.net/Community/Technical-Blogs/Getting-to-Know-Sitecore/Posts/2011/09/Wildcards-and-Data-Driven-URLs.aspxをご覧ください。ワイルドカードモジュールにつながります

于 2012-05-02T12:45:35.110 に答える
2

ワイルドカードアイテムを使用する特別な理由はありますか?ワイルドカードを1レベル以上使用する場合は、URLを書き換えた方がよいと思います。

だから、/eventsアイテムだけを作って、に書き直し/events/{0}/{1}てください/events?year={0}&month={1}

于 2012-05-02T13:57:52.107 に答える