2015年07月13日

カスタム投稿タイプを追加 ~function.phpにコードを書け~


最近更新が飛び飛びです(´・ω・`)
つーのもWordpressの仕事が多いのはいいんですが、基本的に仕事が夜になるのです(´・ω・`)
昼は昼で仕事があるので中々…というわけで今日はお昼更新です。

さて、前回の日記でカスタム投稿タイプとカスタムタクソノミーの追加をやりました。
前回はプラグイン『Custom Post Type UI』を使いましたが、
今回はテーマのfunction.phpに直接コードを書き込む方法をご紹介します。

まずは、カスタム投稿タイプから。
テーマのfunction.phpに以下のコードを貼り付けてくださいまし。

こんな感じ。とりあえず今回はカスタム投稿タイプ『game』を作る前提です。
要注意なのが、supportsの部分。
ここに配列で『thumbnail』を指定してあげないと、アイキャッチ画像が使えないようです。
これ以上特に触れること無いんですよね…

ちなみに余談ですが、こちらのコードを加えると、
既存のタクソノミーを他のカスタム投稿タイプと共有出来ます。

こいつ。こいつをregister_post_typeの下あたりに入れてあげれば、
他の投稿タイプとカテゴリの共有が可能です。
ちなみに、既存のカテゴリょ既存の投稿と共有したい場合は、
タクソノミーの名前のところに『category』と入れてあげて下さい。

続きまして、カスタムタクソノミー『ゲームのジャンル』の追加。

こんな感じ。これもまぁそのまんますね(´・ω・`)
気をつけたいのか、$argのhierarchical。
詳しくは前回の日記を見ていただくとして、
ここをtrueにするとカテゴリ、falseにするとタグになります。

というわけで、カスタム投稿タイプの作成を2回にわたって行いました。

ちなみに、巷で『カスタム投稿タイプ』『カスタムタクソノミー』で検索すると、
プラグイン派とコード記入派の二通りがいらっしゃいます。

プラグイン派のメリットは『わかりやすさ』と『テーマを変更しても使えるところ』で、
コード記入派のメリットは『そのテーマを適応すれば、投稿タイプとタクソノミーが自動で追加される』
というところでしょうか。

面白がって遊ぶ分には特にどちらでも問題はないとは思いますが、
真面目に先のことを考えた場合、
『テーマを頻繁に変更する』という場合はプラグイン、
『使用しているテーマを配布する可能性がある』という場合はコード記入の方がいいかなぁと。

おれは元々あるテーマをカスタマイズしたものを使ってますし、
今後も今のところ変更する予定はないですが、
かといって配布する予定もないので、プラグインの方を使ってます。
その方がテーマ変更の際に融通が効くんですよね。
『あれッ?! カスタム投稿タイプが足りないッ!!ヽ(`Д´#)ノ』
『やっばまたコード書かなきゃ!!ヽ(`Д´#)ノ』
て事態にならないのはすごくいい。

逆に開発者の人なんかは、function.phpに書いたほうがいいんじゃね?と思います。
素晴らしいテーマを作れば、それ配布できますしね。
その時、テーマを適応しただけで、そのテーマ特有のカスタム投稿タイプとタクソノミーが適応されますし。

まぁそんなわけで、
どちらでもお好きな方をお使い下さいw


コメントを残す

メールアドレスが公開されることはありません。

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)