我做了一個插件,用這些自定義帖子類型創建自定義帖子類型和小部件。自定義帖子類型通過init
操作標籤和與widget_init
一起註冊。尚未在Widgets_init中註冊的自定義帖子類型?
像這樣:
public function __construct() {
// load the modules
add_action('init', array($this, 'addModule'));
}
public function addModule() {
// register the post type.
register_post_type($this->post_type, $this->getArgs());
}
而且小部件被稱爲像這樣:
add_action('widgets_init', function() {
register_widget('Webburo\Widgets\project\ProjectsWidget');
});
當我在小部件代碼var_dump()
職位類型的get_post_types()
,它不會顯示新註冊職位類型。所以在我看來,帖子類型尚未在widget_init
中註冊。有什麼我做錯了,或者我錯過了什麼?
我給自己定的公鑰真實的,但仍然沒有得到自定義文章類型我已經註冊。但是,如果我例如在'admin_init'操作中使用該函數,則可以看到自定義帖子類型。這就像它沒有在小部件代碼那一刻註冊過。 –
這可能是原因,因爲當用戶訪問管理區域時,admin_init會在任何其他掛鉤之前觸發。 和init鉤子被加載並被其他人加載,即widget掛鉤等 –