意外と知られていない!?WordPressテーマ作成で使える豆知識とMarcatGiaのご紹介

自分のオリジナルなテーマテンプレートを作ってみたい!
WordPressサイトを作っていると出てくるのではないでしょうか。
そして、codexなどのサイトを色々見て挫折し、そこで諦めてしまうことってありませんか?
今回は、作成時に知っておくと便利な「豆知識」をご紹介していきましょう。 

 

 

一覧時に今いる場所のタイトルやidを取得する方法

先日解説を行ったwp-queryが最も多く使われる「一覧部分」

こちらから参考をどうぞ。

関連記事

 

で、タイトルやidを取得したり出力したりする事があると思います。そんなとき今いる場所がどこになっているのか?と言うのがわかっていれば、下記の方法で取得・出力ができるようになります。 

今いる記事一覧が「カテゴリー記事一覧の場合」

WordPressで使うカテゴリー。この記事一覧にいる場合。下記の方法でカテゴリー名とidを取得することができます。

タイトルを出力したい場合

<?php single_cat_title(); ?>

タイトルを出力方法としてこちらが難しくなく出力することができる方法かと思います。あとは<h1>タグや<h2>タグを使って囲えば、記事一覧時に「今このカテゴリーの記事一覧にいますよ」ということをユーザー側に伝えることができます。

タイトルを変数に置き換えたい場合

<?php $cat_title = single_cat_title( '' , false ); ?>

カテゴリーの説明文を出力する場合

<?php $category = get_category($cat); echo $category->description; ?>

カテゴリーの説明という項目があると思います。そこに入力した文言の出力を行う場合には上記の方法で出力ができるようになります。

Idを取得したい場合

<?php $cat_id = $cat; ?>

カテゴリーに関する記事一覧時にはこの$catという変数に自動的に今いるカテゴリーidが入ってくるようWordPressが自動的に行なってくれているのです。

私が記事一覧時にidを元に複雑な記事一覧作成をするときによくこの$catを使ったりしています。これを知っているのと知っていないのとでは作業の効率が3倍位変わってきます。

スラッグ名を出力する場合

<?php $category = get_category($cat); echo $category->slug; ?>

私は主にURLにスラッグを使うようにしているのですが、一覧時に、「カテゴリー名(日本語)/カテゴリー名(英語)」みたいな形で使う場合に、こういった方法で出力ができるようになります。

上記のコードを<p>タグなどで囲っていけば、今いる「カテゴリーの英文字タイトル?」的なものを出力することができるようになります。

今いるカテゴリーの記事数を出力する場合

<?php $category = get_category($cat); echo $category->category_description; ?>

カテゴリーの記事一覧時で、該当する記事が何件あるかをユーザーに伝える場合に使う方法です。

 

 

今いる記事一覧がタグ記事一覧である場合

WordPressでカテゴリーの次に使用されるタグ記事一覧。カテゴリーとは違い、こういった形でそれぞれ出力や取得ができるようになっています。

タイトルを出力したい場合

<?php single_tag_title(); ?>

タイトルを出力方法としてこちらが難しくなく出力することができる方法かと思います。あとは<h1>タグや<h2>タグを使って囲えば、記事一覧時に「今このタグに関する記事一覧にいますよ」ということをユーザー側に伝えることができます。

タイトルを変数に置き換えたい場合

<?php $cat_title = single_tag_title( '' , false ); ?>

タグの説明文を出力する場合

<?php $tagdata = get_tag($tag_id); echo $ tagdata->description; ?>

カテゴリーと同様タグにも説明という項目があると思います。そこに入力した文言の出力を行う場合には上記の方法で出力ができるようになります。

Idを取得したい場合

<?php $cat_id = $tag_id; ?>

一覧時にはこの$tag_idという変数に自動的に「今いるタグ記事一覧時」に「今いるタグのid」が入ってくるようWordPressが自動的に行なってくれているのです。

スラッグ名を出力する場合

<?php $tagdata = get_tag($cat); echo $tagdata->slug; ?>

私は主にURLにスラッグを使うようにしているのですが、一覧時に、「タグ名(日本語)/タグ名(英語)」みたいな形で使う場合に、こういった方法で出力ができるようになります。

上記のコードを<p>タグなどで囲っていけば「今いるタグの英文字タイトル?」的なものを出力することができるようになります。

今いるタグの記事数を出力する場合

<?php $tagdata = get_tag($cat); echo $tagdata->count; ?>

タグの一覧時で、該当する記事が何件あるかをユーザーに伝える場合に使う方法です。

今いる記事一覧が作者記事一覧である場合

WordPressには作者専用の記事一覧ができるようになっています。その作者記事記事一覧時には下記に方法でそれぞれ取得や出力が行えるようになります。

ユーザーid(番号)を取得したい場合

<?php $user_id = $author; ?>

一覧時にはこの$tag_idという変数に自動的に今いる作者記事一覧時に今いるタグのidが入ってくるようWordPressが自動的に行なってくれているのです。

 

作者名を出力したい場合

<?php the_author_meta('display_name', $author); ?>

タイトルを出力方法としてこちらが難しくなく出力することができる方法かと思います。あとは<h1>タグや<h2>タグを使って囲えば、作者記事一覧時に「この作者に関する記事一覧にいますよ」ということをユーザー側に伝えることができます。

作者の説明文を出力する場合

<?php the_author_meta('description', $author); ?>

カテゴリーと同様作者名には説明ではなく、プロフィールという項目があると思います。そこに入力した文言の出力を行う場合には上記の方法で出力ができるようになります。

登録している作者のメールアドレスを出力する場合

<?php  echo get_the_author_meta('user_email', $author); ?>

作者登録時に登録したメールアドレスを出力する際には上記の方法で出力ができるようになっています。

今いる作者の書いた記事数を出力する場合

<?php echo count_user_posts($author); ?>

作者の記事一覧時で、該当する記事が何件あるかをユーザーに伝える場合に使う方法です。

 

と上記でWordPressが用意してくれている入力欄をカテゴリー・タグ・作者記事一覧で出力する方法を解説していきましたが、実際のところこの他に「カテゴリーに関する入力欄を増やしてそれを出力したい!」ということが出てくると思います。

 

そこで今回紹介するのが、MarcatGiaというWordPressをカスタマイズするシステムです。

このMarcatGiaにはいろいろな機能があるのですが、この中に

カテゴリーの入力欄を増やすという機能

があります。こちらも今回合わせてご紹介していきましょう。

 

MarcatGiaで広がるカテゴリーのカスタマイズ。

MarcatGiaのカテゴリー入力拡張機能を使用することで、カテゴリーに関する「テキスト」「画像」を組み込むことができるようになります。

こちらがMarcatGiaのカテゴリー入力拡張機能の仕様前と使用後になります。

【使用前】

【使用後】

項目に画像やテキストが追加されているかと思います。

また、こちらでは使用してはいませんが、テキストエリア(長めの文章)にはWordPressと記事と同様のエディターを備えており、カテゴリー記事一覧時に指定した個所を更新できるようなシステムになっています。

このMarcatGiaにご興味を抱いた方はぜひお問合せを。

 

この記事と同じカテゴリの記事