Breadcrumbsでパンくずリストを出力するとして、
VICUNA CMSのスキンの一つ「Vicuna + Ninja Skin」を使用すると現在ページをあらわすClassは「current」となっている。
(これは、使用しているスキンによるのかどうか、全部のスキンを確認したわけではないので)

Breadcrumbsで出力されるパンくずリストのHTMLはspanのclassが固定でソースに書かれているのでこれをパラメータにて対応できるように変更。

Breadcrumbsのclassは以下のとおり

  • B_crumbBox
  • B_hideCrumb
  • B_firstCrumb
  • B_lastCrumb
  • B_crumb
  • B_homeCrumb
  • B_currentCrumb

これらを適当な変数にセットして
パラメータを受け取った場合には、その内容で書き換えるというもの

    // スタイルを指定できるように変更
    // $crumBoxClass [string]
    // style .B_crumbBox
    (isset($crumBoxClass)) ? $crumBoxClass : $crumBoxClass = "B_crumbBox;";

    // $hideCrumbClass [string]
    // style .B_hideCrumb
    (isset($hideCrumbClass)) ? $hideCrumbClass : $hideCrumbClass = "B_hideCrumb;";

    // $firstCrumbClass [string]
    // style .B_firstCrumb
    (isset($firstCrumbClass)) ? $firstCrumbClass : $firstCrumbClass = "B_firstCrumb;";

    // $lastCrumbClass [string]
    // style .B_lastCrumb
    (isset($lastCrumbClass)) ? $lastCrumbClass : $lastCrumbClass = "B_lastCrumb;";

    // $crumbClass [string]
    // style .B_crumb
    (isset($crumbClass)) ? $crumbClass : $crumbClass = "B_crumb;";

    // $homeCrumbClass [string]
    // style .B_homeCrumb
    (isset($homeCrumbClass)) ? $homeCrumbClass : $homeCrumbClass = "B_homeCrumb;";

    // $currenClass [string]
    // style .B_currentCrumb
    (isset($currenClass)) ? $currenClass : $currenClass = "B_currentCrumb;";

こんな感じでBreadcrumbsスニペットに追加して
classが書かれている箇所を各変数に置き換えた。

チャンクは次にようにしている。

<p class="topicPath">[[BreadcrumbsV2? ¤Class=current]]</p>

これでVICUNA CMSのCSSでパンくずリストに対応。

カテゴリー: MODx