勉強で作ったWordPressプラグイン「Newpost Catch」の機能追加のために色々プログラムを変更しているのですが・・・投稿の本文を加工する必要が出てきました。よく使うであろうWordPressのテンプレートタグは、
- 投稿の本文を出力する 「the_content」
がありますが、このテンプレートタグを使うと全文出力されます。今回は「投稿の本文を加工したいので何か方法はないか」と思っていたのですが、色々探しまわって、出力する方法を見つけました。
私的には重要なことなので、以下に書きとめておこうかと思います。
get_the_content
または
$post->post_content(global変数$postを使用する)
上記を使っても取得できます。この方法は「the_content」とは違い、
本文に何か加工をしてから出力させたい場合には重宝します。
使い方は、例えば「本文中の文字数を指定して出力したい」ってことがあるとします。
30文字で出力する場合を考えますと、
【ケース1】
<?php echo mb_substr(get_the_content(), 0, 30); ?>
【ケース2】
<?php global $post; echo mb_substr($post->post_content, 0, 30); ?>
上記のどちらを使ってもOKです。
これを応用すれば、条件文と組み合わせることで、例えば本文中の投稿で特定のhtmlタグで囲まれた文字列を取得したりできます。まさに今それをやっているのですが、使い方いろいろですね。
このやりかたは覚えておいても損はしないと思います。個人的に最も使えると思ったのは、「WordPressループ外でも使用できる」という点です。
ちなみに、下記サイトを参考にさせていただきました。ありがとうございます。
とても詳しく書かれていて、わかりやすいです。とても勉強になりました。
記事のいろいろな情報をGetする。 | WPCMS.jp
WordPressで記事の本文を加工して出力する方法を情報をお探しの方に、ご参考いただければ幸いです。
このページを共有する