0
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

カスタム投稿 学習

Last updated at Posted at 2017-11-01

勉強用なので間違っていたら随時修正していきます。

カスタム投稿を作成

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

タクソノミー(タグ・カテゴリー)追加

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

記事が見つかりませんでした。

カスタム投稿の特定のタグがついた記事のみ表示したいとき(html部分に入力)

      $args = array(
      'post_type' => 'travel_diary', //カスタム投稿名
      'numberposts' => 100,//表示記事数
      '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でカスタム投稿の特定のタームだけ出力する
テンプレートタグ/get posts
[ざっくりWordPressの自作テンプレートの作り方]
(https://qiita.com/kazukichi/items/5126a4fd259d374e99ae)
[WordPress 3.0のカスタム投稿タイプ機能(その2)]
(https://www.h-fj.com/blog/archives/2010/06/15-172024.php)

0
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?