Wordpress/Movable Type

2016年2月8日 at 3:47 PM

WordPressで、すぐ表示されてしまう関数をバッファリング(一時的に変数に格納するようなイメージ)して後で表示するようにしたい

WordPressにてたとえば、

 

<?php bloginfo(‘name’); ?>

とかすると、サイトの情報(サイト名)が表示されますが、

$blog_title = bloginfo(‘name’);

みたいに一時的に変数に格納して、後で<?php echo $blog_title ?>したいときがあると思います。

 

 

この場合なら

 

$blog_title = get_bloginfo(‘name’);

echo  $blog_title

すればいいじゃん!ということなんですが、たとえばget_bloginfoみたいなものが存在しないときどうすればいいか?ということです。

 



◆実施方法

バッファリングします。

 

 

ob_start();
$blog_title = bloginfo(‘name’);
$popular = ob_get_clean();

 

print $popular;

 

 

これで$popularの中に、ブログ名が格納されています。

 

 

 

◆応用

なんでこんなことに需要があるかというと、

たとえばWordPress Popular Postsプラグインで、アクセスが多い記事ランキングの<li>リスト中に、カスタムフィールドの中身を入れたいときなどに使えるからです。

 

アクセスの多い記事のURL一覧を取得して、それからPost_IDを取得し、そのPost_IDを元に、カスタムフィールドの値を取り出す・・・というときに便利なのです。

 

 

プラグイン関連は、関数が少なくて困るんですよね・・・

Leave a Reply

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>



こちらの関連記事もオススメ!