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

> Entry >freo>freoTips>freo変数一覧> 子ページ表示プラグインで子ページの情報を表示する方法

【freo】【freoTips】【freo変数一覧】子ページ表示プラグインで子ページの情報を表示する方法

freoのページ画面では、子ページの情報を取得することができます。
freoには子ページ表示プラグインがデフォルトで備わっているので、あるページの子ページの情報を取得することができます。

子ページ表示プラグインが利用されている箇所は、デフォルト状態(なにも加工していない状態)のテンプレートでいうと、
[freo/templates/pages/default.html]の57~64行目

    <!--{if $plugin_page_childs|smarty:nodefaults}-->
    <h3>目次</h3>
    <ul>
        <!--{foreach from=$plugin_page_childs|smarty:nodefaults item='plugin_page_child'}-->
        <li><a href="{$freo.core.http_file}/page/{$plugin_page_child.id}">{$plugin_page_child.title}</a></li>
        <!--{/foreach}-->
    </ul>
    <!--{/if}-->

の部分です。

上記を解説すると

    <!--{もし子ページがあったらここから}-->
    <h3>目次</h3>
    <ul>
        <!--{子ページの情報をplugin_page_childとして繰り返すここから}-->
        <li><a href="{freo設置URL}/page/{子ページのID}">{子ページのタイトル}</a></li>
        <!--{子ページの情報をplugin_page_childとして繰り返すここまで}-->
    </ul>
    <!--{もし子ページがあったらここまで}-->

以上のように、子ページのタイトルを子ページのIDへリンクを貼って表示しています。

子ページ表示プラグインで表示できるのは、ページIDとタイトルだけではありません。
子ページの情報を取得する方法は下記の通りです。

子ページの情報を表示する方法

$plugin_page_childテーブルの情報をforeachする。

子ページの情報は、「$plugin_page_child」というテーブルに格納されています。
「$plugin_page_child」テーブルの情報を表示したいときは、foreachしなければなりません。

とにかく、子ページの情報を表示したいなら、下記の通りにしなければならないってことです。

<!--{foreach from=$plugin_page_childs|smarty:nodefaults item='plugin_page_child'}-->

子ページの情報を表示したい部分

<!--{/foreach}-->

上記のように、子ページの情報を表示したい箇所は、<!--{foreach from=$plugin_page_childs|smarty:nodefaults ~中略}-->と<!--{/foreach}-->で挟みます。
foreachの中に入れないで変数だけ書いても、子ページの情報は表示されませんので注意して下さい。

子ページの基本的な情報を表示するための変数

変数
{$plugin_page_child.id} 子ページのページID
{$plugin_page_child.pid} 子ページの親ページID
{$plugin_page_child.user_id} 子ページの投稿ユーザーID
{$plugin_page_child.created} 子ページの登録日時
{$plugin_page_child.modified} 子ページの更新日時
{$plugin_page_child.approved} 子ページの承認がされているかどうか
{$plugin_page_child.restriction} 子ページの閲覧制限状態
{$plugin_page_child.password} 子ページのパスワード
{$plugin_page_child.status} 子ページの公開状態
{$plugin_page_child.display} 子ページの表示状態
{$plugin_page_child.comment} 子ページがコメントを受け付けているかどうか
{$plugin_page_child.trackback} 子ページがトラックバックを受け付けているかどうか
{$plugin_page_child.sort} 子ページの並び順
{$plugin_page_child.title} 子ページのタイトル
{$plugin_page_child.tag} 子ページのタグ
{$plugin_page_child.datetime} 子ページの日時
{$plugin_page_child.close} 子ページの公開終了日時
{$plugin_page_child.file} 子ページのファイル名
{$plugin_page_child.image} 子ページのイメージ名
{$plugin_page_child.memo} 子ページのファイルの説明
{$plugin_page_child.text} 子ページの本文

子ページの添付ファイルの情報を表示する

添付ファイルについての情報は、「$plugin_page_child_file」テーブルに格納されています。

変数
{$plugin_page_child_files[$plugin_page_child.id].height} 子ページの添付ファイルの高さ
{$plugin_page_child_files[$plugin_page_child.id].width} 子ページの添付ファイルの幅
{$plugin_page_child_files[$plugin_page_child.id].size} 子ページの添付ファイルのサイズ

$plugin_page_child_file」テーブルに格納されている情報以外で子ページの添付ファイルに関する情報は以下のとおりです。

変数等
{$plugin_page_child.file} 子ページの添付ファイルのファイル名
{$freo.core.http_url}{$smarty.const.FREO_FILE_DIR}page_files/{$plugin_page_child.id}/{$plugin_page_child.file} 子ページの添付ファイルのURL

子ページのサムネイルの情報を表示する

サムネイルについての情報は、「$plugin_page_child_thumbnails」テーブルに格納されています。

変数
{$plugin_page_child_thumbnails[$plugin_page_child.id].height} 子ページのサムネイルの高さ
{$plugin_page_child_thumbnails[$plugin_page_child.id].width} 子ページのサムネイルの幅
{$plugin_page_child_thumbnails[$plugin_page_child.id].size} 子ページのサムネイルのサイズ

$plugin_page_child_thumbnails」テーブルに格納されている情報以外で子ページのサムネイルに関する情報は以下のとおりです。

変数等
{$plugin_page_child.file} 子ページのサムネイルのファイル名
{$freo.core.http_url}{$smarty.const.FREO_FILE_DIR}page_thumbnails/{$plugin_page_child.id}/{$plugin_page_child.file} 子ページのサムネイルのURL

子ページのイメージの情報を表示する

イメージについての情報は、「$plugin_page_child_images」テーブルに格納されています。

変数
{$plugin_page_child_images[$plugin_page_child.id].height} 子ページのイメージの高さ
{$plugin_page_child_images[$plugin_page_child.id].width} 子ページのイメージの幅
{$plugin_page_child_images[$plugin_page_child.id].size} 子ページのイメージのサイズ

$plugin_page_child_images」テーブルに格納されている情報以外で子ページのイメージに関する情報は以下のとおりです。

変数等
{$plugin_page_child.image} 子ページのイメージのファイル名
{$freo.core.http_url}{$smarty.const.FREO_FILE_DIR}page_images/{$plugin_page_child.id}/{$plugin_page_child.image} 子ページのイメージのURL

子ページのタグを表示する

子ページのタグは「$plugin_page_child_tags[$plugin_page_child.id]」という配列に格納されています。
子ページのタグの情報を表示したいときは、foreachしなければなりません。
子ページの情報は「$plugin_page_childs」のforeachの中に表示しなければならないので、子ページのタグの情報は、$plugin_page_childsの中でさらにforeachして表示します。

<!--{foreach from=$plugin_page_childs|smarty:nodefaults item='plugin_page_child'}-->
     <!--{foreach from=$plugin_page_child_tags[$plugin_page_child.id]|smarty:nodefaults item='page_tag' name='loop'}--><a href="{$freo.core.http_file}/page?tag={$page_tag|smarty:nodefaults|escape:'url'}">{$page_tag}</a><!--{if !$smarty.foreach.loop.last}-->,&nbsp;<!--{/if}--><!--{/foreach}-->
<!--{/foreach}-->

 

ページ移動

関連記事

ユーティリティ

Twitter

記事検索

ページ上部へ