1. nomaharu2013

    No comment

    nomaharu2013
Changes in body
Source | HTML | Preview
@@ -1,113 +1,115 @@
勉強用なので間違っていたら随時修正していきます。
## カスタム投稿を作成
#### function.phpに記載。
//----------------------------------------------
// カスタム投稿 「旅行日記」
//----------------------------------------------
register_post_type(
'travel_diary', //カスタム投稿名
array(
'label' => '旅行日記', //左のメニューに表示される名前
'menu_position' => 4, // メニューが表示される位置
'public' => true, // ダッシュボードに表示・非表示
'has_archive' => true, // アーカイブ機能の追加
'exclude_from_search' => true, //
'supports' => array( // 投稿画面何を挿入するか?↓
'title', // タイトル
'editor', // 本文
'thumbnail', //アイキャッチ
'revisions' // リビジョン
)
)
);
add_post_type_support( 'travel_diary', 'page-attributes' );//投稿一つひとつにに順序をつける
☆その他参考になるタグ
[テンプレートタグ/get posts](https://wpdocs.osdn.jp/%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88%E3%82%BF%E3%82%B0/get_posts#.E3.82.BF.E3.82.AF.E3.82.BD.E3.83.8E.E3.83.9F.E3.83.BC.E3.83.91.E3.83.A9.E3.83.A1.E3.83.BC.E3.82.BF)
## タクソノミー(タグ・カテゴリー)追加
#### function.phpに記載。
//----------------------------------------------
// カスタム投稿 「旅行日記」 カテゴリー
//----------------------------------------------
register_taxonomy(
'td_cat', //カテゴリー名
'travel_diary', //カスタム投稿の名前
array(
'label' => 'カテゴリー', //表示される名前
'hierarchical' => true, //親子関係の有無
'query_var' => true , //スラッグ名でアドレスが開けるように
'show_ui' => true //管理画面で一覧ページを表示
)
);
//----------------------------------------------
// カスタム投稿 「旅行日記」 タグ
//----------------------------------------------
register_taxonomy(
'td_tag',
'travel_diary',
array(
'label' => 'タグ',
'hierarchical' => true,
'query_var' => true,
'show_ui' => true
)
);
##themeにphpを作成
###single-travel_diary.php
<?php get_header(); ?>
<article>
<div>
</div>
<?php
if (have_posts()) : while (have_posts()) : the_post();
if (in_category('1')) { ?>
<div class="post-cat-one">
<?php } else{ ?>
<div class="post">
<?php } ?>
<p class="postmetadata">
<?php the_category(', '); ?>
</p>
<div class="entry">
<?php the_content(); ?>
</div>
</div>
<?php endwhile; else: ?>
<p>記事が見つかりませんでした。</p>
<?php endif; ?>
</article>
<?php get_footer(); ?>
## カスタム投稿の特定のタグがついた記事のみ表示したいとき(html部分に入力)
$args = array(
'post_type' => 'travel_diary', //カスタム投稿名
+ 'orderby' => 'menu_order', // 表示する順番(この場合は管理画面で指定した投稿の順序)
+ 'order' => 'ASC', //(昇順で表示する)
'tax_query' => array(
array(
'taxonomy' => 'td_tag', //上記で指定したタグの名前
'field' => 'slug',
'terms' => 'tag_name', //管理画面のタグ登録画面で指定したスラッグを入力
'orderby' => 'menu_order'
)
)
);
$customPosts = get_posts($args);
if($customPosts) : foreach($customPosts as $post) : setup_postdata( $post );
### 参考になったサイト
[Wordpressでカスタム投稿の特定のタームだけ出力する](https://qiita.com/nagasawaaaa/items/157621e14a41cc1ffc6a)
[テンプレートタグ/get posts](https://wpdocs.osdn.jp/%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88%E3%82%BF%E3%82%B0/get_posts#.E3.82.BF.E3.82.AF.E3.82.BD.E3.83.8E.E3.83.9F.E3.83.BC.E3.83.91.E3.83.A9.E3.83.A1.E3.83.BC.E3.82.BF)
[ざっくりWordPressの自作テンプレートの作り方]
(https://qiita.com/kazukichi/items/5126a4fd259d374e99ae)
[WordPress 3.0のカスタム投稿タイプ機能(その2)]
(https://www.h-fj.com/blog/archives/2010/06/15-172024.php)