2016-11-08 104 views
0

我是新来的Wordpress Multisite,我想知道是否可以定义一组自定义帖子类型(电影,类别和演员)和一组自定义字段(即a电影有一个拖车字段,演员,和一个类别)为每个新的网站一个网络。Wordpress Multisite中的自定义帖子类型和自定义字段

我需要能够创建新的网站,他们都必须预先配置CPT和CF我说。

是否可以使用Wordpress MU或者我应该找到另一种解决方案?

+0

他们会共享相同的主题吗? – jboneca

+0

是的,他们会! – Alan

回答

0

假设他们都使用相同的主题,则可以在父主题的functions.php中声明每个自定义帖子类型(如果有子主题)。由于多站点共享相同的插件和主题,因此将使用该主题为所有站点注册自定义帖子类型。

自定义字段有点不同。你可以使用像我推荐的Advanced Custom Fields这样的插件,但是这需要为每个站点激活。如果您希望这些自定义字段立即可供在帖子编辑屏幕上使用,您可以为ID为1的帖子的每个必填字段添加add_post_meta()。所有WordPress的实例都将有ID为1的帖子,默认帖子。这些字段将被“预先注册”。请注意,我忽略了您提到的“类别”帖子类型和字段,因为类别已经是一个WordPress分类法,并且可能会让用户感到困惑。这不是一个理想的解决方案,但它的工作原理。我必须在预填充自动部署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); 
} 
相关问题