Sitecore ワイルドカード モジュールについて

736 views

Published on

Web サイトとシステム連携をする際に非常に便利な Sitecore のワイルドカードアイテム、この仕組みを Sitecore 側でパラメーターなどを管理することができるワイルドカードモジュールに関して紹介をしています。

Published in: Travel, Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
736
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Sitecore ワイルドカード モジュールについて

  1. 1. © 2013 Sitecore www.sitecore.net/japan/ Page 1© 2013 Sitecore www.sitecore.net/japan/ Page 1Sitecore システム連携 :Wildcard Moduleサイトコア株式会社
  2. 2. © 2013 Sitecore www.sitecore.net/japan/ Page 2Sitecore Wildcard モジュールについて• Sitecore CMS が提供している Wildcard の機能をより使いやすくするためのモジュール– Wildcard を利用することで、外部データベースと連動をさせる際に、URL の文字をパラメーターとして利用してページを生成することが出来るようになります。– モジュールを利用することで、逆引きなどのパターンを比較的簡単にできるようになります– モジュールはサンプルソースコードと合わせて、SitecoreMarketplace でモジュールを無償で提供• Wildcard はアイテム作成が不要– 例: example.com/item/8341 や example.com/item/4549 などの URLを展開する場合に、個別のデータは外部のデータソースで管理をして、example.com/item/* の URL の部分で * をパラメーターとして外部システムと連動させることができます。
  3. 3. © 2013 Sitecore www.sitecore.net/japan/ Page 3モジュールのインストール• Sitecore Marketplace よりモジュールをダウンロード– http://marketplace.sitecore.net/en/Modules/Wildcard_module.aspx• インストールウィザードの実行– 本文書は Sitecore CMS 6.5 以降での使い方を紹介しています*** INSTRUCTIONS FOR CMS 6.5 ***When using this module with CMS 6.5 you may useeither ReplaceWildcardsInUrlAction orReplaceWildcardInUrlAction. The route at thefollowing location provides an example ofhow to use the ReplaceWildcardInUrlAction action:/sitecore/system/Modules/Wildcards/Routes/BlogRoute for 65
  4. 4. © 2013 Sitecore www.sitecore.net/japan/ Page 4ルールの設定 – その1 階層の設定• URL のパラメーターに関しての意味を設定します– 例:ここでは「商品」ページの下に「商品カテゴリ」-「商品詳細」という形で Wildcard アイテムを作成します• 商品情報アイテム、その下に * を利用したワイルドカードアイテムを2つ作成します– ワイルドカードアイテムに関して、「表示名」で分かりやすく項目の名前を設定しました
  5. 5. © 2013 Sitecore www.sitecore.net/japan/ Page 5ルールの設定 – その2 トークンの設定• ワイルドカードで利用している項目のトークンを設定します– ここでは商品カテゴリは Product Category 、商品詳細は ProductInformation というアイテムを作成して、表示名を設定しています
  6. 6. © 2013 Sitecore www.sitecore.net/japan/ Page 6ルールの設定 – その3 ルート設定• ワイルドカードのルールを設定する– システム – モジュール – ワイルドカード – ルート にルートを作成します– 「アイテム」には該当するアイテムを設定します(左下)– 「ルール」で URL の項目をトークンに割り当てる設定を行います(右下)
  7. 7. © 2013 Sitecore www.sitecore.net/japan/ Page 7サブレイアウトの設定• サンプルで提供しているダイナミック URL の表示、トークンの値を表示するサブレイアウトを設定します– プレースホルダー設定 – コンテンツ(content)にサブレイアウトを設定する– サブレイアウトは、ダイナミック URL をパラメーターとして動作するWeb コントロールを設定するなどで、ページの中で利用するサブレイアウトに対してトークンを渡せるようになります
  8. 8. © 2013 Sitecore www.sitecore.net/japan/ Page 8サブレイアウトで利用しているサンプルの変更• サンプルのデータを変更します– WebsitelayoutsWildcards にサンプルのサブレイアウトのコードが添付されていますconst string TOKEN_GROUP_NAME = "%Group Name%";const string TOKEN_BLOG_NAME = "%Blog Name%";const string TOKEN_PRODUCT_CATEGORY = "%Product Category%";const string TOKEN_PRODUCT_INFORMATION = "%Product Information%";list.Add(new NameValueCollection { { TOKEN_GROUP_NAME, "group1" }, { TOKEN_BLOG_NAME, "blogA" } });list.Add(new NameValueCollection { { TOKEN_GROUP_NAME, "group1" }, { TOKEN_BLOG_NAME, "blogB" } });list.Add(new NameValueCollection { { TOKEN_GROUP_NAME, "group2" }, { TOKEN_BLOG_NAME, "blogC" } });list.Add(new NameValueCollection { {TOKEN_PRODUCT_CATEGORY , "group1" }, {TOKEN_PRODUCT_INFORMATION ,"ProductA" } });list.Add(new NameValueCollection { {TOKEN_PRODUCT_CATEGORY , "group1" }, {TOKEN_PRODUCT_INFORMATION ,"ProductB" } });list.Add(new NameValueCollection { {TOKEN_PRODUCT_CATEGORY , "group2" }, {TOKEN_PRODUCT_INFORMATION ,"ProductC" } });
  9. 9. © 2013 Sitecore www.sitecore.net/japan/ Page 9サブレイアウトで利用しているサンプルの変更• 変更後のデータ(サンプル)//The following constants must match tokens defined in Sitecoreconst string TOKEN_PRODUCT_CATEGORY = "%Product Category%";const string TOKEN_PRODUCT_INFORMATION = "%Product Information%";private List<NameValueCollection> GetSampleData(){var list = new List<NameValueCollection>();list.Add(new NameValueCollection { {TOKEN_PRODUCT_CATEGORY , "group1" },{TOKEN_PRODUCT_INFORMATION , "ProductA" } });list.Add(new NameValueCollection { {TOKEN_PRODUCT_CATEGORY , "group1" },{TOKEN_PRODUCT_INFORMATION , "ProductB" } });list.Add(new NameValueCollection { {TOKEN_PRODUCT_CATEGORY , "group2" },{TOKEN_PRODUCT_INFORMATION , "ProductC" } });return list;}※ ここでは DB を見に行かずに持っているデータを表示しているだけとなっています。
  10. 10. © 2013 Sitecore www.sitecore.net/japan/ Page 10サブレイアウトの挿入 – その1• ページエディタでサブレイアウトを指定します– 今回はダイナミック URL の表示を選択します• プロパティを開いて「ターゲットアイテム」を設定します
  11. 11. © 2013 Sitecore www.sitecore.net/japan/ Page 11サブレイアウトの挿入 – その2• ターゲットアイテムとして、ワイルドカードアイテムをすでに準備しているアイテムを指定します
  12. 12. © 2013 Sitecore www.sitecore.net/japan/ Page 12URL に合わせたデータの確認• ワイルドカードアイテムの URL の値が、どのようにトークンに渡されているかを確認することができます– ターゲットアイテムは /products/*/* と製品の下の URL を指定しています– ルールで入っている値が、どのように受け渡しをするか確認することができます
  13. 13. © 2013 Sitecore www.sitecore.net/japan/ Page 13サブレイアウトの挿入 – その3• ワイルドカードを用意しているデータを指定して、トークンの値を表示するコンポーネントを追加する。• サブレイアウト追加後、保存をする。
  14. 14. © 2013 Sitecore www.sitecore.net/japan/ Page 14商品詳細のページを確認する• プレビューモードに切り替えます。• 「サブレイアウトの挿入 – その2」で追加した際のサンプル URL をクリックする(階層を上に戻してください)。– 例: /products/group1/product.aspx• URL に合わせたパラメーターが設定されています

×