2016-11-08 16 views
0

私はWordpress Multisiteを初めて使いました。カスタムポストタイプ(フィルム、カテゴリー、アクター)とカスタムフィールドのセットを定義することができるのだろうか?映画は、新しいサイトごとに、ネットワークのためのメイキングのトレーラーフィールド、俳優、およびカテゴリを持っています。Wordpress Multisiteのカスタムポストタイプとカスタムフィールド

私は新しいサイトを作ることができる必要があり、それらはすべてCPTとCFで事前設定されている必要があります。

Wordpress MUで可能ですか、別の解決策を見つける必要はありますか?

+0

同じテーマを共有しますか? – jboneca

+0

はい、そうです! – Alan

答えて

0

すべてが同じテーマを使用している場合は、親テーマのfunctions.phpにカスタム投稿タイプを宣言することができます(子テーマがある場合)。マルチサイトは同じプラグインとテーマを共有しているため、カスタムポストタイプはそのテーマを使用するすべてのサイトに登録されます。

カスタムフィールドは少し異なります。 Advanced Custom Fieldsのようなプラグインを使用することをお勧めしますが、これは各サイトに対してアクティブ化する必要があります。これらのカスタムフィールドをポスト編集画面ですぐに使用できるようにしたい場合は、必要なフィールドごとにadd_post_meta()をID 1のポストに追加することができます。すべてのWordpressインスタンスは、IDが1のポスト。これらのフィールドは「事前登録」されます。 CategoryはすでにWordpress分類であり、ユーザを混乱させる可能性があるので、私は "Categories"投稿タイプとフィールドを除外しています。これは理想的な解決策ではありませんが、機能します。私は、Wordpressのインスタンスを自動的に展開する歯科用オフィスソフトウェアのカスタムフィールドをあらかじめ設定しておく必要がありました。

add_action('init', 'create_custom_post_types'); 
function create_custom_post_types() { 

    register_post_type('films', 
    array(
     'labels' => array(
     'name' => __('Films'), 
     'singular_name' => __('Film') 
    ), 
     'public' => true, 
     'has_archive' => true, 
     'supports' => array('title', 'editor', 'custom-fields') 
    ) 
); 

    register_post_type('actors', 
    array(
     'labels' => array(
     'name' => __('Actors'), 
     'singular_name' => __('Actor') 
    ), 
     'public' => true, 
     'has_archive' => true, 
     'supports' => array('title', 'editor', 'custom-fields') 
    ) 
); 
} 

// Check if the post meta has been added to our default post. 
// If not, add our post_meta to make it available. 

if(!get_post_meta(1, 'trailer_for_film')) { 
    add_post_meta(1, 'trailer_for_film', 'default trailer', true); 
    add_post_meta(1, 'actors', 'default actor', true); 
} 
関連する問題