エントリー

freoのページの検索結果で該当ページの親ページを表示する方法

freoのページの検索結果では、ページのタイトルと文章(200文字まで)が表示されるようになっています。
ファイル 83-1.jpg

この検索結果で、該当ページのタグを表示する方法は、templates/page/default.html の221行目あたりに、

<!--{if $page_tags[$page.id]}-->
  <p>タグ:<!--{foreach from=$page_tags[$page.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}--></p>
<!--{/if}-->

を追加することで表示が可能になるのですが、該当ページの親ページを表示する方法がわかりませんでした。
しかし、ようやく方法が判明したので、ご紹介します。

1) libs/freo/common.php の645行目あたりにある

$stmt = $freo->pdo->query('SELECT id FROM ' . FREO_DATABASE_PREFIX . 'pages ORDER BY pid, sort, id');

の部分を、

$stmt = $freo->pdo->query('SELECT * FROM ' . FREO_DATABASE_PREFIX . 'pages ORDER BY pid, sort, id');

に変更(緑字赤字に)します。

2) templates/page/default.html の221行目あたりに、

<!--{if $page.pid}-->
  <p>親ページ:<a href="{$freo.core.http_file}/page/{$page.pid}">{$freo.refer.pages[$page.pid].title}</a></p>
<!--{/if}-->

を追加します。

すると、検索結果に親ページが表示されます。
ファイル 83-2.jpg

検索プラグインの検索結果に該当ページの親ページを表示させたい場合

上記の1)の変更をした後、templates/plugins/search/default.html の96行目あたりに、

<!--{if $article.pid}-->
  <li>親ページ:<a href="{$freo.core.http_file}/page/{$article.pid}">{$freo.refer.pages[$article.pid].title}</a></li>
<!--{/if}-->

を追加して下さい。

【2013.9.20に追加しました】

新着ページに該当ページの親ページを表示させたい場合

上記の1)の変更をした後、新着ページの表示部分に、

<!--{if $plugin_page_recently.pid}-->
  親ページ:<a href="{$freo.core.http_file}/page/{$plugin_page_recently.pid}">{$freo.refer.pages[$plugin_page_recently.pid].title}</a&gt
<!--{/if}-->

を追加して下さい。

ページ移動

関連エントリー

コメント

  • コメントはまだありません。

コメント登録

  • コメントを入力してください。
  • 一旦登録したコメントは、あとで編集できませんのでご注意下さい。
登録フォーム

基本的には「全体に公開」されますが、内容によっては管理人の方で公開を制限する場合がありますので、その旨ご了承下さい。

ユーティリティ

2024年04月

- 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 - - - -

キーワード検索

キーワード検索フォーム

ユーザー

  • cccのアバター

新着画像

ブログパーツ

Twitter

Twilogを見る

Feed