人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

php、wpについて

例えば、
<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() の結果を変数に入れる方法を教えて下さい。


もし、できない場合は、この質問を無視してください。

宜しくお願い致します。


●質問者: worldtravel
●カテゴリ:ウェブ制作
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● dilutionist
●0ポイント

get_permalink() を使って変数に入れるのはどうでしょう。

Wordpress/the_permalink()を変数で使う - kobapan @ wiki | @wiki


worldtravelさんのコメント
ありがとうございました。

worldtravelさんのコメント
コメントにも書いたのですが、 この関数だけのお話しではないので、 TransFreeBSDさんの回答を選ばせて頂きました。 ありがとうございました。

dilutionistさんのコメント
頭にget_を付ければ取得だけできるテンプレートタグが多い、ということをリンクURLから伝えたかったのですが、言葉足らずだったですかね。 そう言えば3.9からはget_the_permalink()も使えるようになってたのをさっき思い出しました(笑 [http://techblog.55w.jp/2014041800867/:title] ま、解決したようなのでこれにて。

worldtravelさんのコメント
お〜〜!! 殆どの関数に通用するのですかね? 試しに、しばらくこちらを使ってみます。 ありがとうございました。

2 ● TransFreeBSD
●100ポイント ベストアンサー

出力制御関数というのがある様です。
http://php.net/manual/ja/ref.outcontrol.php

<?php
ob_start();
the_permalink();
$the_permalink = ob_get_clean();

こんな感じに出来るらしいです。


worldtravelさんのコメント
ありがとうございます。 こちらで解決しました。 相当前に同じ質問をして、同じ回答を得ている気がします。 探したのですが見つけられませんでした。 ちなみに、多くの場所で3行を使うのが嫌なので、 試しに↓このように書いたら特に問題なく動いてはいるのですが、問題ないでしょうか? $the_permalink = ob_start();the_permalink();ob_get_clean(); ご存知でしたら教えて頂ければ幸いです。

TransFreeBSDさんのコメント
上記だと$the_permalinkがtrueになってません? ちょっと悪魔的ですが、 >|| $the_permalink = ob_start()&&the_permalink()||1?ob_get_clean():""; ||< とは書けます。 もしくは関数にするか。

TransFreeBSDさんのコメント
http://ideone.com/QV5ekE 関数にしました。get_obがそれ。 $output = get_ob("感数名", 引数, 引数...) とか使います。ただ、エラー時の挙動とかがちょっと不安な感じ。 >|php| <?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(); } } ||<

worldtravelさんのコメント
ありがとうございました。勉強になります。
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ