カスタム投稿+カスタムフィールド in Cocoon

WordPressで小説サイト

 エンサイクロペディアをCocoonへテーマ変更してリニューアルしました。
 一旦取り下げていた「TOP SECRET」および「夢のきざはし」も、本編再開!の気合いをいれるためにまずはエンサイクロペディアのページから復活させることにしました。

 用語集とか人名録といったページを作るにはどうしたらいいんだろう、というのは、サイトをWordPress化した頃からの懸案事項でした。プラグインを使ってみたり、テーマを探してみたり、いろいろ試したけどなんだか今ひとつしっくりこない。まあとりあえずこれでやってみよう、というのが今までであった気がします。

 ところが今回、本館のテーマを「Cocoon」に変更してみたところ、本稿(WordPressで小説サイト!)の整理が非常に簡単になったのです。あ、これいいかも!と思ったのでした。
 時の勢いモノのはずみ、と申します。…まあ勢いって大事ですよね。
 かくて、「Cocoon」で再構成したのが現在のエンサイクロペディアという次第。

 エンサイクロペディアはジャンルごとにカスタム投稿タイプを設定しています。そしてそれぞれの投稿タイプにカスタムフィールドを作るために今回導入したのがプラグイン「Advanced Custom Fields(ACF)」なのです。
 ACFのことは知っていましたが、以前は別のプラグイン「カスタムフィールドテンプレート」を使っていたのです。ただこれが柳の環境ではイマイチ動作が不安定でした。(入力エリアが表示されたりされなかったり…etc.)それでも「ショートコードでカスタムフィールドの値を表示できる」という強力な利点があり、以前のテーマではどうしてもカスタム投稿タイプのテンプレートにカスタムフィールドの値を表示させる記述を突っ込むことができなかった柳としては、少々扱いづらくても中身が表示できるほうを使うしかないという判断で「カスタムフィールドテンプレート」を使用していたのでした。
 しかしこれまた「Cocoon」にするといともかんたんに記述をいれるべき部分が特定できた1のです。有難きかなCocoon。開発者わいひらサマに心より感謝。
 投稿へ出力するための記述ができさえすれば、カスタムフィールド支援ツールとしてはACFの方が断然扱いやすいので、あっさりと乗り換えてしまったのでした。

  「Advanced Custom Fields(ACF)」はコンテンツの種類(固定ページ、投稿ページ、カスタム投稿タイプのページ)で適用するカスタムフィールドを設定できるので非常に便利です。しかもラジオボタン等いろいろな入力方法も指定できる上、WYSIWYG エディターでの入力が可能。入力・修正がスムーズでいいです。

 さて、個別の記事が出来上がったらそれを表示する算段をしなければなりません。
 今回はメインページおよび各セクショントップだけ固定ページで作成し、あとはカテゴリページ2を使用することにしました。Cocoonだとカテゴリーページのカスタマイズがこれもお手軽にできてしまうのです。

 「シ者降臨」で言うと…
 まずは「シ者降臨」のトップページとして固定ページをひとつ作り、その固定ページにCocoonの機能である「ボックスメニュー」を貼り付けます。ボックスメニューの中身となるメニューは【ダッシュボード】→【外観】→【メニュー】で新規にメニューを作成するのですが、この時メニューの中身をカテゴリで指定します(この場合EVAキャラ、オリジナル、半オリジナル、設定の4つ)ボックスメニューの設定でこの作成したメニューを指定すると、ボックスメニューが作成され、そのボックスからカテゴリページに飛べるという仕様。目次のように順番について喧しいことをいわなくていいならこれほど簡単なこともありません。
 類似品にタグページといって、これはあるタグを持ったページの一覧を作成する仕組みもあります。これはこれで面白そうですが、今のところ使い処がないですね。

 そういうわけで、千柳亭書房エンサイクロペディアがなんとか形を成しました。
 あとはちゃんと中身を詰めなきゃ…(笑)

 

 

  1. カスタム投稿タイプを表示させるテンプレート(single.phpからコピー&リネームしたもの)から、コンテンツを表示する記述を見つけ、その直下へ以前「カスタムフィールドテンプレート」で使用していた記述のためのコードをまるっと写して貼り付けるだけ!
  2. カテゴリページ…各記事をカテゴリ分けした際に表示される、該当カテゴリに属するページヘのリストページ。平たく言うとカテゴリのインデックスで、アーカイブページの一種といっていいんでしょうね。

コメント