ノブの質問the_title()を使用せずに投稿のタイトルを取得する別の方法はありますか。
私は文字列パラメータを取る関数を使用しているので私は尋ねている、そしていくつかのコードの後、この文字列を返す。 the_title()を渡したとき。このパラメータとして、何らかの理由で文字列として渡されないため、メソッドは失敗します。
The_title()の代わりに "some random string"を渡すと。機能は正しく動作します。
理にかなって?
これは the_title()
が投稿のタイトルをエコーするからです(リンクされたドキュメンテーションを見てください)。タイトルを文字列として返す代わりに get_the_title()
を使用してください。
2つの選択肢があります。
get_the_title()
を使用します。the_title
をフィルタリングします。get_the_title()
を使う<?php
// NOTE: Inside the Loop,
// or else pass $post->ID
// as a parameter
$post_title = get_the_title();
?>
the_title
フィルタを使う<?php
function wpse48523_filter_the_title( $title ) {
// Modify or replace $title
// then return the result
// For example, to replace,
// simply return your own value:
// return 'SOME CUSTOM STRING';
//
// Or, you can append the original title
// return $title . 'SOME CUSTOM STRING'
//
// Just be sure to return *something*
return $title . ' appended string';
}
add_filter( 'the_title', 'wpse48523_filter_the_title' );
?>