topicpath_related.inc.php

サマリリンク解析によるパンくずリスト
リビジョン1.0
対応バージョン1.4.5
投稿者choi
投稿日2005-06-02 (木) 23:15:02

概要

リファラー(cache/*.ref)を解析してパンくずリストを自動生成するプラグイン。幅優先探索でトップページまでのパスを探索します。ライセンスはGPLです。

自作プラグイン/topicpath.inc.phpでは「/」でカテゴリを作る必要があります。複数のカテゴリに属す場合や、「/」を使わないページではtopicpath.inc.phpが使えないのが現状です。そこでこのプラグインではあらゆるページにパンくずリストを付けれるように、リンク構造(リファラ)を用いてパンくずリストを出力します。

ページを読み込むごとにリファラをトップページまで辿っていくのでかなり負荷がかかりそうな気がしますが、設定しだいでは非常に高速に動作します。

ダウンロード

インストール

アーカイブを解凍して出てきた2つのファイルをプラグインフォルダに入れて下さい。

自作プラグイン/topicpath.inc.php を参考にスキンに組み込んでください。

<?php if ($is_page) { ?>
<?php require_once(PLUGIN_DIR.'topicpath_related.inc.php'); echo plugin_topicpath_related_convert(); ?>
<?php } ?>

ブロックプラグインとして出力すると、<div class="topicpath"> ... </div>に囲まれて出力されます。

こんなサイトの構造だとします。

トップページ
   |
   |-----> A
   |       |
   |       |-> B
   |       |   |
   |       |   v   
   |       |-> C
   |           ^
   |           |
   |-----> D --|

B は A から
C は A と B と D から
A, D はトップページからリンクされています。

すると各ページに表示されるパンくずリストは(初期設定で)

  • A では 「トップページ / A
  • B では 「トップページ / A / B
  • C では 「トップページ / A / C」 と 「トップページ / D / C
  • D では 「トップページ / D」 です。

C は 「トップページ / A / B / C」 というパスも考えられますが、より短いステップでトップページに到達できているので、これ以上の探索はされません。

コメント

  • 欲しいのですが、作者様サイトにつがらないです・・ -- 2008-03-08 (土) 14:18:01
  • ごめんなさい、リンク直しました! -- choi 2008-04-27 (日) 05:13:20

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2008-04-27 (日) 21:26:09
Site admin: PukiWiki Development Team

PukiWiki 1.5.2+ © 2001-2019 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u7. HTML convert time: 0.217 sec.

OSDN