web-dev-qa-db-ja.com

ダッシュボードサイドバーに「投稿カテゴリ」を追加する方法

私は現在彼らのWordPressサイトにいくつかの基本的な微調整をするために会社と協力しています、そして私は彼らが彼らのサイドバーにこれを持っていることに気づきました:

enter image description here 

私は特に "クライアント"、 "オファー"、 "ポートフォリオ"、 "スライダーオファー"の各セクションを見ていますが、私はこれまで見たことがなく、プラグインで追加されていないと信じています。 「投稿」セクションと同じピンアイコンがあるので、それらは投稿カテゴリであるように見えます。誰がこれらが何であるか、それらがどのように働くのか、そしてそれらをどのように追加するのかを説明できますか?

ありがとう

2
AdamMcquiff

WordPress Coreの投稿タイプは、管理メニューに表示されるpostpageです。これら以外に、登録されたカスタム投稿タイプまたはメニューページのいずれかです。

add_menu_page() 関数でメニューページを追加することができ、 register_post_type() を使用して同様のことを行うことができます。登録された投稿タイプはそれ自身のメニュー項目を取得し、以下の引数はtrueです。

<?php
$args = array(
        'show_ui'   => true,
        'show_in_menu' => true
    );

register_post_type( 'mycpt', $args );

register_post_type()はプラグイン地域の関数です。しかしいくつかのテーマはそれらを彼らのfunctions.phpに含めます。そしてその場合、親のテーマは 'emを含まないが、子のテーマはそのfunctions.phpに含めることも可能です。 :)

1
Mayeenul Islam

これはカスタムポストタイプのワードプレスだと思います。カスタム投稿タイプは投稿の動作と同じように機能します。投稿タイプごとに異なるカテゴリを作成でき、異なるアーカイブと単一ページを作成することもできます。これについてさらに実験したい場合は、サンプルの投稿タイプコードを投稿しています。このコードは、単にコピーしてテーマのfunction.phpに貼り付けるか、これを別の.phpファイルに配置して、require_once('custom-post-type/team.php');のようにfunction.phpファイルにrequire_onceすることができます。カスタム投稿タイプのフォルダを作成し、そこにすべての投稿タイプのファイルを配置し、関数ファイルで必要にします。

<?php
/* Custom Post Type ===> team_member */
add_action( 'init', 'register_cpt_team_member' );
function register_cpt_team_member() {
$labels = array( 
    'name' => _x( 'Team Member', 'team_member' ),
    'singular_name' => _x( 'Team Member', 'team_member' ),
    'add_new' => _x( 'Add New', 'team_member' ),
    'add_new_item' => _x( 'Add New Team Member', 'team_member' ),
    'edit_item' => _x( 'Edit Team Member', 'team_member' ),
    'new_item' => _x( 'New Team Member', 'team_member' ),
    'view_item' => _x( 'View Team Member', 'team_member' ),
    'search_items' => _x( 'Search Team Member', 'team_member' ),
    'not_found' => _x( 'No Team Member found', 'team_member' ),
    'not_found_in_trash' => _x( 'No Team Member found in Trash', 'team_member' ),
    'menu_name' => _x( 'Team Member', 'team_member' ),
);
$args = array( 
    'labels' => $labels,
    'hierarchical' => false,       
    'supports' => array( 'title', 'editor', 'author', 'thumbnail', 'custom-fields', 'revisions', 'page-attributes' ),
    //'taxonomies' => array('post_tag'),
    'public' => true,
    'show_ui' => true,
    'show_in_menu' => true, 
    'menu_icon' => 'dashicons-admin-users',     
    'show_in_nav_menus' => true,
    'publicly_queryable' => true,
    'exclude_from_search' => false,
    'has_archive' => true,
    'query_var' => true,
    'can_export' => true,
    'rewrite' => array('slug' => 'team_member'),
    'capability_type' => 'post'
);
register_post_type( 'team_member', $args );
flush_rewrite_rules(); // <- do this only once!
}
?>

カスタム投稿タイプの詳細を知りたい場合は、wordpress codexを参照してください。 https://codex.wordpress.org/Post_Types

0
Chirag S Modi