カスタム投稿タイプを使用出来るようにするにはfunctions.phpに直接追加する場合とプラグインを使って追加する方法とあります。
今回は簡単に「Custom Post Type UI」プラグインを使った方法で作成したいと思います。
解凍し/wp-content/plugins/フォルダの中にアップロードし有効化します。
有効化するとダッシュボードにCustom Post Typesのボタンが表示されます
Add NEWをクリックし、まずはカスタム投稿タイプを作成します
設定が終わるとダッシュボードにFAQというボタンができているはずです。
もういちどAdd Newをクリック
ダッシュボードのFAQボタンをクリックするとFAQ分類ボタンが出来ているはずです。
まずFAQ分類ボタンをクリックしてカテゴリーを作成します。(通常のカテゴリー作成と同じ)
Add Faqボタンで記事を投稿します。
*カテゴリーを作成すると投稿画面にカテゴリーの選択画面も表示されます
まずカスタム投稿タイプはダッシュボードのCustom Post Typesボタンの中のManage Post Typeをクリックすると下記の画面になります。
操作の下のDaleteで削除、Editで修正ができます。
カスタム分類はManage Taxonomiesで削除、修正が同じ様にできます。
テンプレートを指定して使用したい場合:
記事の場合はsingle.phpをコピーしてsingle-question.phpを作成*赤文字部分を作成した投稿タイプ名に変更
カテゴリー分類はarchive.phpをコピーしてarchive-faqlist.phpを作成*赤文字部分を作成したカスタム分類の分類名に変更
タームを出力したい場合はarchive.phpをコピーしてtaxonomy-タームスラッグ名.phpを作成
アーカイブページでタイトルのみ一覧で表示したい場合は
<a href="<?php the_permalink() ?>"><?php the_title(); ?></a>
固定ページに一覧を表示する場合は
<?php /* post_type faq はあなたのつけた名前に変更してください */ ?> <?php $loop = new WP_Query( array( 'post_type' => 'faq' ) ); while ( $loop->have_posts() ) : $loop->the_post(); ?> <div class="gallery-post"> <h2><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></h2> <?php the_excerpt(); ?> </div> <?php endwhile; wp_reset_query(); ?>
※the_excerpt();部分を削除すればタイトルのみの表示になります。
サイドバーにカスタム分類を表示する場合はwp_list_categoriesで出力できます。
<?php wp_list_categories('title_li=&taxonomy=faqlist'); ?>
カスタム分類を表示しているarchiveテンプレートにカテゴリータイトル(カスタムタクソノミー)を表示する場合は
<?php /* faqlist はあなたのつけた分類名に変更してください */ ?> <h1 class="archive-title"><?php if(is_tax()) { $taxonomy = get_taxonomy(get_query_var('faqlist')); echo sprintf('%s', single_term_title('', false)); } ?></h1>
Custom Field Gui Utilityのconf.iniファイルのclass部分に作成した投稿タイプ名を追加。例:class = post page question
後は表示したいテンプレートにタグを追加
<?php /* textarea は使用したいフィールド名に変更 */ ?> <?php if ( get_post_meta($post->ID,'textarea',TRUE) ): ?> <?php echo get_post_meta($post->ID,'textarea',TRUE); ?> <?php endif; ?>