WordPress 3.1から投稿フォーマットという機能が追加されているのですが、これまで活用できていなかったので、ここで少し勉強したいと思います。
投稿フォーマットでは、投稿内容を各フォーマットに合わせて、デザイン・レイアウトを切り替えることができます。
例えば、記事として投稿する場合でも、通常の投稿とは別で、リンク集や画像ギャラリーとしてレイアウトを分けたい場合に役に立ちます。
functions.phpでフォーマットを有効にしてみる
フォーマット機能を有効にするためには、functions.phpで以下を追加するだけです。
add_theme_support('post-formats', array( 'aside', 'image', 'video', 'audio', 'quote', 'link', 'gallery', ));
そうすると、投稿画面に以下のような項目が表示されるようになります。
標準に加え、関数「add_theme_support」で指定したとおり、アサイド、画像、動画、音声、引用、リンク、ギャラリーのフォーマットが追加されました。
投稿フォーマットをテンプレートで活用する
投稿時に選択した投稿フォーマットを活用する1つの例として、クラスの切り替えがあります。
<div <?php post_class(); ?>> (コンテンツ内容) </div>
例えばフォーマットに「画像」を選択した場合に、「class=”format-image”」が出力されるので、そのcssを用意しておけばデザインを切り替えることができるわけです。
もう1つはテンプレート自体を切り替える方法です。
single.phpなどで以下のように記述すれば、
get_template_part('content', get_post_format());
「画像」を選択した場合に「content-image.php」のテンプレートが呼び出されるので、好きなレイアウトに切り替えることができます。
デザイナとコーダーとしっかりとした設計ができれば、十分に活用できそうですね。
コメントする