• 虹色ミツバチ
  • freoカスタマイズメモ、テンプレート・プラグイン配布/officeTIPS
検索プラグイン
虹色ミツバチ

> Entry >freo>freoTips>プラグイン系TIPS> ページ一括表示プラグインテンプレートの読み方

【freo】【freoTips】【プラグイン系TIPS】ページ一括表示プラグインテンプレートの読み方

ページ一括表示プラグインは、あるページ以下のページをプラグインテンプレートを利用して読み込むプラグインです。
詳細な説明は上記URLをご参照ください。

ここでは、ページ一括表示プラグインテンプレートの読み方っぽいものを説明します。

ページ一括表示プラグインテンプレートの読み方

[freo/templates/plugins/page_all/default.html]を利用して説明します。

[freo/templates/plugins/page_all/default.html]を開いて頂くと、

 <!--{foreach from=$page_alls|smarty:nodefaults item='page_all'}-->
<!--{if $page_all.pid == $pid}-->
<!--{php}if (!$flag) :{/php}--><ul><!--{php}endif;{/php}-->
<li>
<a href="{$freo.core.http_file}/page/{$page_all.id}">{$page_all.title}</a>
<!--{assign var="pid" value=$page_all.id}-->
{include file='plugins/page_all/default.html'}
<!--{assign var="pid" value=$page_all.pid}-->
</li>
<!--{php}$flag = 1;{/php}-->
<!--{/if}-->
<!--{/foreach}-->
<!--{php}if ($flag) :{/php}--></ul><!--{php}endif;{/php}-->

これを簡単にすると多分こんな感じです。違ってたらすみません。

 <!--{$page_allsの配列の繰り返しここから}-->
<!--{もし$page_all.pid(ページ一括表示プラグインのテーブル内の親ページID)が$pid(今表示しているページの親ページID)と同じだったらここから}-->
<!--{PHPここから}if (!$flag) :{PHPここまで}--><ul><!--{こっからPHP}endif;{PHPここまで}-->
<li>
<a href="ページのURL">{ページのタイトル}</a>
<!--{今表示してるページ以下のページを読み込むここから}-->
{読みこむテンプレートは'plugins/page_all/default.html'を使う}
<!--{今表示してるページ以下のページを読み込むここまで}-->
</li>
<!--{PHPここから}$flag = 1;{PHPここまで}-->
<!--{もし$page_all.pid(ページ一括表示プラグインのテーブル内の親ページID)が$pid(今表示しているページの親ページID)と同じだったらここまで}-->
<!--{$page_allsの配列の繰り返しここまで}-->
<!--{PHPここから}if (!$flag) :{PHPここまで}--></ul><!--{こっからPHP}endif;{PHPここまで}-->

ぶっちゃけ意味がわかりません。
重要なのは

<!--{assign var="pid" value=$page_all.id}-->
{include file='plugins/page_all/default.html'}
<!--{assign var="pid" value=$page_all.pid}-->

↑の部分で、どのページ以下のページを読み込むのか、どのプラグインテンプレートを使うのかを指定してるってことと、
このプラグインテンプレートの中身が、読み込みたいページのなにをどのように読み込むか決めてますよってことです。

どのページ以下のページを読み込むか

公式の解説の「特定のページ以下のタイトルのみを表示する」を読むと、

<!--{assign var="pid" value=$page_all.id}-->

$page_all.id部分を変更すると、任意のページID以下のページを読み込むことができることがわかります。

<!--{assign var="pid" value=’novel’}-->にするとページIDが’novel’のページ以下を読み込む
<!--{assign var="pid" value=’gallery’}-->にするとページIDが’gallery’のページ以下を読み込む
といった感じです。
任意のページIDを指定したい場合は、’任意のページID’という風に、「''(シングルクォーテーション)」でくるむのを忘れないようにしてください。

読み込みたいページのなにをどのように読み込むか

default.htmlを利用したページのソースをブラウザから見てみると、

<ul>
<li><a href="ページのURL">{ページのタイトル}</a></li>
<li><a href="ページのURL">{ページのタイトル}</a></li>
                                  :
                                省略
                                 :
<li><a href="ページのURL">{ページのタイトル}</a></li>
</ul>

こんな感じになります。
<!--{assign var="pid" value=$page_all.id}-->で決めたページ以下のページを
リストに入れて、タイトルにリンクを貼る形式で、ひたすらforeach、つまり繰り返しています。

リストではなく、<div>~</div>にするとか、<p>~</p>にすれば、表示方法を変えられます。
タイトルではなくページイメージなどの画像を表示したかったり、オプションを表示したかったり、本文を引用したかったり、呼び出すもの自体を変えたいなら、

32877:ページ一括表示プラグインでオプションの内容を表示する方法
32877:ページ一括表示プラグインで本文を引用する方法
32877:ページ一括表示プラグインで添付ファイルを表示する方法

ここらへんを参考にすると良いかと思われます。

ページ移動

関連記事

ページ上部へ