遷移が違う共通ページでのパン屑リスト表示について

2014年12月8日 at 11:27

複数ページから共通に遷移するページXがあります。
このページAに着地した時のパン屑リストの表示について、ご質問させて下さい。

−− 環境 −−
環境について未記載でしたので、追記させて頂きます。
# concrete5 Version
5.6.3.2
−− 環境 −−

サイトマップは
 ホーム ┳ ページA ━ ページXa(ページXのエイリアス)
     ┣ ページB ━ ページXb(ページXのエイリアス)
     ┗ ページX(ナビ非表示設定)
と成っています。

このサイトマップで

ページXa に着地している場合は、
パン屑リストを ホーム > ページA
  ・・・表示ケース(ア)

ページXb に着地している場合は、
パン屑リストを ホーム > ページB
  ・・・表示ケース(イ)

と表示したいのですが、現状では
パン屑リストは ホーム
  ・・・表示ケース(ウ)

と表示されます。

他サイトから「ページX」に直接リンクされていた場合は、
表示ケース(ウ)として、パン屑リストが表示されても良いのですが、
サイト内を回遊しているユーザには、直前に居たページをパン屑リストに表示したいと考えています。
どのような設定or開発をすればいいか、アドバイス頂けないでしょうか?
もしくは、サイトマップの設定で対応できるのであれば、その方法について、アドバイス頂けると幸いです。

タグ:

Re: 遷移が違う共通ページでのパン屑リスト表示について

2014年12月8日 at 12:01
ページAに置くページリストブロックのカスタムテンプレートで、ページXへのリンクにパラメーターを付けて(?from=aとか)、ページXにおくオートナビブロックのカスタムテンプレートで、パラメーターを取得して($_GET["from"]とか)、無理くり追加する、というパターンがあるかなと。GETではなくてセッションに保存すると言う手もオシャレさんですね。SEOも考えると。
 

Re: 遷移が違う共通ページでのパン屑リスト表示について

2014年12月8日 at 15:35
hissyさん

ご回答、有り難う御座いました。
セッション管理がスマートですね。
ちょっと、頑張ってみたいと思います。

ちょっと、話しはそれますが、自分の周りで、パン屑リストは、
・サイトマップ通りが良い派
・導線通りが良い派
が分かれています。
concrete5の話題とは違いますが、この辺の考え方はどちらが一般的でしょうかね?

私は、ユーザ導線を尊重したいので、
・導線通りが良い派
ですが、ページの所属を明確に成るので、
・サイトマップ通りが良い派
の主張も理解できるので。
 

Re: 遷移が違う共通ページでのパン屑リスト表示について

2014年12月8日 at 19:07
concrete5的にはサイトマップ通りしか標準機能にはないわけですが、検索サイトを作るときは導線を辿ることも多いですね。
 

Re: Re: 遷移が違う共通ページでのパン屑リスト表示について

2014年12月8日 at 20:39
検索サイトも確かに、考えられますね?

企業の商品ページなども、分類が複数カテゴリに該当する商品などは、
導線が複数用意される事が想像できますね?


こういった場合は、パンくずで、サイト内導線を確保するのではなく、
着地するページ内に関連ページ一覧や上位ページ一覧を表示させるような、
サイト設計が必要かも知れませんね?
 

Re: 遷移が違う共通ページでのパン屑リスト表示について

2014年12月8日 at 20:33
先ずは、結果からご報告です。

・セッショに保持
・URLパラメータで判断
等のアドバイスを頂いき、セッションに持とうかな?と思ったものの、
セッションをクリアするタイミング等を考えると、やっかいだったので、
結果的には、リファラー情報を参照し、
リファラーが(同一サイト内で遷移していて)特定のpathだった場合、
パンくずに 途中導線を追加する

という実装にしてしまいました。

この方法ですと、path情報やページ名等をハードコーディングしてしまうので、
concrete5のスマートさを失ってしまい、かっこ悪いのですが・・・

$navItem に登録されている情報が、自分自身のページ情報
だけなので、ここをもう少し拡張して、直前のページ情報も保持できるようにしたら、
スマートなロジックに出来るかも知れませんが、今の私には無理でした。

ページハンドル名の取得方法など、もう少し勉強してみます。