我正在创建一个简单的插件。当我在主插件文件中注册自定义帖子类型时,它可以工作,但当我将其移动到单独的文件时,它不会显示在管理菜单中。。。
部分主插件文件:
if ( ! defined( \'ABSPATH\' ) ) {
die( \'Access denied.\' );
}
//Get some constants ready
define( \'QD_KLANTEN_VERSION\', \'0.0.1\' );
define( \'QD_KLANTEN_PATH\', dirname( __FILE__ ) );
define( \'QD_KLANTEN_PATH_INCLUDES\', dirname( __FILE__ ) . \'/inc\' );
define( \'QD_KLANTEN_FOLDER\', basename( QD_KLANTEN_PATH ) );
define( \'QD_KLANTEN_URL\', plugins_url() . \'/\' . QD_KLANTEN_FOLDER );
add_action( \'init\', \'qdklanten_load_files\' );
function qdklanten_load_files() {
require_once( QD_KLANTEN_PATH_INCLUDES .\'/qdklanten_cpt.php\' );
require_once( QD_KLANTEN_PATH_INCLUDES .\'/qdklanten_settings.php\' );
}
内部
qdklanten_cpt.php 我注册CPT。。但它不会显示在管理菜单中。。在我之后
ALSO 尝试在主文件中注册CPT,我收到一条警告,即已加载同名CPT。。。。那么显然寄存器CPT在第二个文件上运行,但不是完全。。。?
我的qdklanten_cpt.php 文件:
add_action( \'init\', \'qdklanten_register_cpt\' );
function qdklanten_register_cpt() {
$labels = array(
\'name\' => \'QD Klanten\',
\'singular_name\' => \'QD Klanten\',
\'menu_name\' => \'QD Klanten\',
\'name_admin_bar\' => \'QD Klanten\',
\'add_new\' => \'Add New\',
\'add_new_item\' => \'Add New Client\',
\'new_item\' => \'New Client\',
\'edit_item\' => \'Edit Client\',
\'view_item\' => \'View Client\',
\'all_items\' => \'All Clients\',
\'search_items\' => \'Search Clients\',
\'parent_item_colon\' => \'Parent Clients:\',
\'not_found\' => \'No clients found.\',
\'not_found_in_trash\' => \'No clients found in Trash.\'
);
$args = array(
\'labels\' => $labels,
\'description\' => \'Description.\',
\'public\' => true,
\'publicly_queryable\' => true,
\'show_ui\' => true,
\'show_in_menu\' => true,
\'query_var\' => true,
\'rewrite\' => array( \'slug\' => \'qd-klanten\' ),
\'capability_type\' => \'post\',
\'has_archive\' => true,
\'hierarchical\' => false,
\'menu_position\' => null,
\'supports\' => array( \'title\', \'editor\', \'author\', \'thumbnail\', \'excerpt\', \'comments\' )
//\'register_meta_box_cb\' => \'add_qdklantencpt_metaboxes\'
);
register_post_type( \'qdklanten\', $args );
}
为什么寄存器CPT在主文件中工作,而不是在单独的文件中工作。。?我也
require_once 一个没有任何问题的设置php文件。
我删除了数据库中的所有CPT输入。。尝试flush_rewrite_rules(); 在register_activation_hook..
注意,我没有收到php错误,并且WP_DEBUG 也没有错误。
我在WP codex中阅读了关于CPT的所有内容,但我在那里找不到解决方案。。。虽然这一定很容易解决,但一天后我还是想不出来。。。。
请帮助:-)
你好,比约恩