WordPressユーザーのbaserCMS覚え書き


ページをエレメントとして読み込む

WordPress

get_posts()

テンプレートタグ/get posts

baserCMS(2系)

$bcBaser->page( $id, [$params] )

[page] ページをエレメントとして読み込む|baserCMS 2系関数リファレンス

baserCMS(3系)

$this->BcBaser->page( $url, [$params], [$options] )

[page] ページをエレメントとして読み込む|baserCMS 3系関数リファレンス

メモ

サイトのフロントページなどで、特定ページの記事本文を載せたいときに使うと便利な関数です。クライアントワークで「フロントページのテンプレートはさわってほしくないけど、ページ内の特定の領域をクライアント先で書き換えられるようにしておきたい」というようなとき、その領域を「固定ページ」の一つとして管理するというわけです。

なお、この関数で呼び出される内容は、HTMLタグでマークアップされた〈記事本文〉のみです。呼び出される内容を確認したいときは /app/webroot/theme/{テーマ名}/pages(3系) /app/webroot/themed/{テーマ名}/pages(2系) の中にあるPHPファイルを開いてみるとよいでしょう。

WordPressであればテンプレートタグ get_posts() で同様の機能を実現できます。get_posts() だと引数が記事IDになるので、特定の「固定ページ」の内容を呼び出したいなら get_page_by_title() でタイトル指定で呼び出す方法もありますね。

Function Reference/get page by title

[2014.1.23追記]
バージョン2では引数がページIDでしたが、バージョン3になりページ名(URL)へと引数が変更になりました。したがって

  • ページID……1
  • ページ名……foo

というページをエレメントとして読み込む場合

《バージョン2》

<?php $bcBaser->page(1) ?>

《バージョン3》

<?php $this->BcBaser->page('/foo') ?>

と書き分ける必要があります。

[2015.10.21追記]
バージョン3環境下で、ページIDでエレメントを呼び出す方法を記事にしました。

関数 page() の引数にページIDを使う方法