在一次wp安装中运行2个非常相似的插件。当尝试激活一个新的时,出现“无法重新声明先前声明的”错误。错误是指类似的插件之一。但是帖子类型实际上是不同的(代码如下)。服务器缓存已清除。
新帖子类型
function create_post_type() {
register_post_type( 'Related',
array(
'labels' => array(
'name' => 'Related',
'singular_name' => 'Related Unit',
'menu_name' => 'Related Units',
'name_admin_bar' => 'Related Unit',
'add_new' => 'Add New',
'add_new_item' => 'Add New Unit',
'new_item' => 'New Unit',
'edit_item' => 'Edit Unit',
'view_item' => 'View Unit',
'all_items' => 'All Units',
'search_items' => 'Search Units',
'parent_item_colon' => 'Parent Units:',
'not_found' => 'No units found.',
'not_found_in_trash' => 'No units found in Trash.'
),
'public' => true,
'has_archive' => true,
'rewrite' => true,
'hierarchical' => true,
'supports' => array(
'title',
'revisions'
),
)
);
register_taxonomy("RelatedPlacements", array("Related"), array(
"hierarchical" => true,
"label" => "Related Placements",
"singular_label" => "Related Placement",
"rewrite" => true
));
}
add_action( 'init', 'create_post_type' );
一个错误是指
function create_post_type() {
register_post_type( 'Ads',
array(
'labels' => array(
'name' => 'Ads',
'singular_name' => 'Ad',
'menu_name' => 'Ads',
'name_admin_bar' => 'Ad',
'add_new' => 'Add New',
'add_new_item' => 'Add New Ad',
'new_item' => 'New Ad',
'edit_item' => 'Edit Ad',
'view_item' => 'View Ad',
'all_items' => 'All Ads',
'search_items' => 'Search Ads',
'parent_item_colon' => 'Parent Ads:',
'not_found' => 'No ads found.',
'not_found_in_trash' => 'No ads found in Trash.'
),
'public' => true,
'has_archive' => true,
'rewrite' => true,
'hierarchical' => true,
'supports' => array(
'title',
'revisions'
),
)
);
register_taxonomy("Placements", array("ads"), array(
"hierarchical" => true,
"label" => "Placements",
"singular_label" => "Placement",
"rewrite" => true
));
}
add_action( 'init', 'create_post_type' );
我只是看不到它们有什么不同
答案 0 :(得分:2)
您无法在PHP中定义两个具有相同名称的函数。更改函数名称之一:
function create_related_post_type() {
...
}
add_action( 'init', 'create_related_post_type' );
由于Wordpress的过程代码库和潜在的插件冲突,通常建议给函数添加一个唯一的前缀,例如pluginname_create_post_type
。