WEMOブロックエディター完全対応のWordPressテーマ「SWELL」をリリースしました!コピペで終わらない、本質的な理解を目指した知識整理のメモをお届け。ホームWEMOについて人気記事一覧フロントエンドHTMLCSS/SassJavaScriptSVGバックエンドPHPサーバーWordPress基礎知識カスタマイズプラグインちょいメモ集もう迷わんよ。2019.08.16WordPressをいじっていると、投稿ページや固定ページなど、そのページが持つ情報を取得するというのは日常茶飯事かと思います。ひとつの情報に対し、取得する方法が複数あってなにかとややこしい。テンプレートタグや関数を使えばいいってのはわかるんだけど、綴りとか覚えきれなくて同じことを何度も調べなおしてしまったり。いうか、似たような関数いっぱいあるけど違いが分からないまま、その時調べて出てきたやつを使ってるけどいいのだろうか...。いうことで、自分でも散らかった知識を整理するために今回は固定ページ・投稿ページの様々な情報を取得する方法をまとめていこうと思います。この記事では「ループ」という表現を多用しています。WordPress初心者の方が見ておられましたら、予備知識としてWordPressのループについて勉強してみてください。基本情報(投稿のIDやタイトルやなど)の取得方法をまとめていきます。$postget_post()get_post_field()上記3つのいずれかを使用することで基本情報は簡単に取得できます。get_post_field()については内部でget_post()を使用しており、機能面についてはCodexで以下のようにに書かれています。advantage.ようするに、get_post_field()が優れていることは特にないということですので、今回は説明を省略し、グローバル変数$postおよびget_post()について説明していくこととします。いうグローバル変数に格納されています。(array)以上のような情報が、簡単に取得できます。すると表示される...。わかる人いらっしゃいませんか(笑)よく使うものをピックアップすると次のような感じでしょうか。グローバル関数はバージョンアップに伴って使用の変更があるかもしれないので、この下にあるget_post()や後述する専用の関数を使用するほうが安全だという意見もあるようです。初心者の方は意図せずしてグローバル変数を汚染してしまうことを防ぐためにも、不用意に使用すべきではないかもしれません。get_post()を使用すると、引数に投稿IDを渡すことでその投稿に関する情報を簡単に取得できます。ループ中であれば、引数を省略すると自動的にその投稿に関する情報を取得できます。$postと同じです。いう、get_post()と見た目が非常に似ている関数もありますが、これは全くの別物ですので注意しましょう。非推奨になっています。get_post()で問題なく情報が取得できるので、こちらを使いましょう。get_post()は投稿が持つ基本的な情報を全て取得してきますが、IDやタイトルなど、特定の情報にフォーカスして取得や出力を行う関数もあります。//URLこれらの関数は、ループ中に使用するのであれば投稿IDに関する引数は必要ありません。自動的にループ中の投稿IDが渡されます。投稿ID以外にも引数を指定できるものもあります。覚えておく必要はなさそうなのでここでは記載しませんが「引数は投稿IDだけじゃないんだな」と、頭の片隅にでも置いておきましょう。出力してくれるようになります。$postを使用するよりもこれらの関数を使用することを推奨しているサイトをよく見かけます。get_the_ID()だと普通に動作する、という場合もあったりしますので、これらの個別関数を使用する方が無難かもしれません。記載していますが、パーマリンク・URLを取得できる関数は他にもいくつかあってややこしいです。get_permalink()だけ覚えていればいいと思いますが、ややこしい関数たちを別の記事でまとめてみましたので、時間があれば是非チェックしてみてください。あわせて読みたい【WordPress】投稿・固定・アーカイブなど各ページへのパーマリンク・URLを取得する方法まとめWordpressでは特定のページまでのパーマリンク・URLを取得するためのテンプレートタグが複数あってややこしいので、各関数の役割や使い方を簡単にまとめてみました。アイキャッチ画像」というものが設定できるようになります。アイキャッチ画像を有効化するコードadd_theme_support('post-thumbnails');ほとんどの無料テーマではデフォルトで有効化されているかと思います。the_post_thumbbail()という関数があります。アイキャッチ画像を出力するthe_post_thumbnail();ループ内であればこの関数を呼び出すだけで、アイキャッチ画像のimgタグが出力されるのですごく簡単です。出力がすごく汚いです。