ページリストをトピックで絞り込みしたときに、パンくずリストのページ名もトピック名に変えたい

2019年12月12日 at 15:28

ページリストをトピックで絞り込んだときに、

・タグ内のページ名
・page_titleブロック

上記については、ページ名にトピック名を表示するオプションが存在しているのですが、
パンくずリストで使うautonavブロックに関しては、オプションが存在しません。

ブログを含むサイトを作成していて、
トピックで絞り込んだ際に、パンくずリストにもトピックを出して欲しいという要求がクライアントからあったので、とりあえずview.php側で対処はしました。

use Concrete\Core\Tree\Node\Type\Topic;

$uri = $_SERVER["REQUEST_URI"];
$pieces = explode("/", $uri);
if($pieces[4] === 'topic') {
$topic = Topic::getByID(intval($pieces[5]));
echo $topic->getTreeNodeDisplayName();
} else {
echo $ni->name;
}

ただ、他によい方法があるのでは、と思いますので、同様の実装やった事ある方いらっしゃいましたら、参考にこちらに投稿頂けるとありがたいです。
よろしくお願いします。

タグ:

Re: ページリストをトピックで絞り込みしたときに、パンくずリストのページ名もトピック名に変えたい

2020年2月11日 at 6:45
取り急ぎ。

このコードだと特定の URL 階層にトピック ID があるという前提ですね。
page list の controller.php に topic ID を取得するコードが入っていたと思いますので、
そのコードを参考にされると良いと思います。