例えば、
<a href="<?php the_permalink(); ?>".....
といった記述があるのですが、
the_permalink() の結果を、一度変数に入れてから使い回したいと考えております。
例えば、このような感じです。
$the_permalink = the_permalink();
print "<a href=¥"$the_permalink¥".....
しかし、このようにすると、
$the_permalink = the_permalink();
と書いた時点で、the_permalink() の結果が表示されてしまいます。
the_permalink() の中を全く変更する事なく、
the_permalink() の結果を変数に入れる方法を教えて下さい。
もし、できない場合は、この質問を無視してください。
宜しくお願い致します。
出力制御関数というのがある様です。
http://php.net/manual/ja/ref.outcontrol.php
<?php ob_start(); the_permalink(); $the_permalink = ob_get_clean();
こんな感じに出来るらしいです。
get_permalink() を使って変数に入れるのはどうでしょう。
Wordpress/the_permalink()を変数で使う - kobapan @ wiki | @wiki
頭にget_を付ければ取得だけできるテンプレートタグが多い、ということをリンクURLから伝えたかったのですが、言葉足らずだったですかね。
そう言えば3.9からはget_the_permalink()も使えるようになってたのをさっき思い出しました(笑
ゴーゴーウェブマーケット技術BLOG | get_the_permalinkとget_permalink
ま、解決したようなのでこれにて。
お~~!!
殆どの関数に通用するのですかね?
試しに、しばらくこちらを使ってみます。
ありがとうございました。
出力制御関数というのがある様です。
http://php.net/manual/ja/ref.outcontrol.php
<?php ob_start(); the_permalink(); $the_permalink = ob_get_clean();
こんな感じに出来るらしいです。
http://ideone.com/QV5ekE
関数にしました。get_obがそれ。
$output = get_ob("感数名", 引数, 引数...)
とか使います。ただ、エラー時の挙動とかがちょっと不安な感じ。
<?php function get_ob() { $arg_list = func_get_args(); if (ob_start()) { call_user_func_array(array_shift($arg_list), $arg_list); return ob_get_clean(); } }
ありがとうございました。勉強になります。
http://ideone.com/QV5ekE
2015/05/06 01:03:08関数にしました。get_obがそれ。
$output = get_ob("感数名", 引数, 引数...)
とか使います。ただ、エラー時の挙動とかがちょっと不安な感じ。
ありがとうございました。勉強になります。
2015/05/06 07:09:07