ちょっとした質問です。使用に違いはありますか
<?php the_title() ?>
または
<?= get_the_title() ?>
ええ、私は誰かが短いエコータグを使用することを悪い習慣と考えることができることを知っています、私はちょうどこれら2つの関数を呼び出した結果に違いがあることを知りたいです。
両者は100%同一ではありませんが、近いです。
the_title()
はecho
content デフォルトでは になりますが、3番目のパラメータを使用してそのデフォルトを変更できます。the_title()
は、オプションの$before
を付加し、オプションの$after
引数を追加します。テーマまたはプラグインコードがこれらの引数を使用する場合、2つの関数の出力は異なります。あなたが ソースを見てみると 、違いを見つけるのは簡単です:
32 /**
33 * Display or retrieve the current post title with optional content.
34 *
35 * @since 0.71
36 *
37 * @param string $before Optional. Content to prepend to the title.
38 * @param string $after Optional. Content to append to the title.
39 * @param bool $echo Optional, default to true.Whether to display or return.
40 * @return string|void String if $echo parameter is false.
41 */
42 function the_title( $before = '', $after = '', $echo = true ) {
43 $title = get_the_title();
44
45 if ( strlen($title) == 0 )
46 return;
47
48 $title = $before . $title . $after;
49
50 if ( $echo )
51 echo $title;
52 else
53 return $title;
54 }
the_title()
の最初の行にget_the_title()
を使用してデータを取得していることがわかります。その時点では、2つは同じです。しかしthe_title()
は追加の操作をする可能性があります。
the_content()
やget_the_content()
のような他の "echo"/"not echo"関数にも同じことが言えます。近いうちに、それらはまったく同じではありません。
the_title()
あなたのためにタイトルをエコーし、 'ループ'内でのみ使用できます https://codex.wordpress.org/Function_Reference/the_title
get_the_title()
echo
または<?=
がないと、単にタイトルが返されます。それで、あなたはそれを変数に格納して、あなたが https://codex.wordpress.org/Function_Reference/get_the_title に必要であればそれを操作することができます