こんにちはの方もこんばんはの方もようこそ、イカスミです。
WordPressでテーマ制作などをやっているとき、the_titleとwp_titleの違いについて気になったことはありませんか?
僕も本で勉強していて、ちょっと気になったので、違いについてまとめようと思います。
この記事でわかること
- テンプレートタグとは
- the_title、wp_titleとは
- the_titleとwp_titleの違い
テンプレートタグとは
テンプレートタグとは、Wordpressが定義するPHPの関数です。
簡単に使用できるので、PHPに詳しい必要がないのがポイントです。
the_title
the_titleは、投稿のタイトルを表示する関数です。
この関数は、必ずWordPressループの中で使う必要があります。
wp_title
wp_titleは、ブログページのタイトルを表示する関数です。
詳しくは、この後解説しようと思います。
the_titleとwp_titleの違い
それでは、the_titleとwp_titleの違いを、スクショとコードで解説していきます。
ちなみに、この記事で使うスクショは、「WordPress 仕事の現場でサッと使える! デザイン教科書」で使用しているテーマのスクショです。
こちらのホームページを見てください。
投稿が3つ並んで表示されています。
投稿部分のコードは、このようになっています。
html<article id="post-<?php the_ID(); ?>" <?php post_class('news'); ?>><div class="news_pic"><a href="<?php the_permalink(); ?>"><?php if (has_post_thumbnail()) : ?><?php the_post_thumbnail('medium'); ?><?php else : ?><img src="<?php echo get_template_directory_uri(); ?>/assets/img/common/noimage_600x400.png" alt=""><?php endif; ?></a></div><div class="news_meta"><?php the_category(); ?><time class="news_time" datetime="<?php the_time('Y-m-d'); ?>"><?php the_time('Y年m月d日'); ?></time></div><h2 class="news_title"><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2><div class="news_desc"><?php the_excerpt(); ?><p><a href="<?php the_permalink(); ?>">[続きを読む]</a></p></div></article>
the_titleで、投稿のタイトルが表示されているのがわかります。
では、このthe_titleをwp_titleに変更するとどうなるでしょうか?
投稿のタイトルが表示されなくなりました。
次は、違うページを例に挙げてみます。
こちらは、カテゴリーページのスクショです。
「お知らせ」というカテゴリーページのタイトルが表示されています。
このページの投稿部分のソースコードは、こちらです。
html<?php if (is_month()) : ?><h2 class="main_title"><?php the_time('Y年m月'); ?></h2><?php else : ?><h2 class="main_title"><?php wp_title(''); ?></h2><?php endif; ?>
今回の場合、wa_titleにより、カテゴリー名である「お知らせ」が表示されています。
それでは、wp_titleをthe_titleに変えてみます。
「お知らせ」ではなく、投稿のタイトルが表示されてしまいました。
まとめ
結論を言うと、それぞれのテンプレートタグは、
- the_titleは、投稿のタイトルを表示したいとき
- wp_titleは、カテゴリーページなどの、特定の用途のページのタイトルを表示したいとき
のような場合に使うべきです。
実際は、the_titleの方が、使う機会が多そうですね。
最後までご覧いただき、ありがとうございました。