Intereting Posts
Навигация по WordPress с родительским заголовком и дочерними страницами для детей Добавить задержку для публикации сообщения Пользовательский запрос MySQL для вывода расширенных пользовательских полей? Ошибка отправки формы с помощью get_template_part () Мета-запрос с логическим значением true / false Географический поиск с таксономической структурой Как настроить дочернюю тему без использования @import Ajax загружает больше кнопки в виджетах последних сообщений Загрузка изображения с помощью ссылки «Установить изображение» на лицевой стороне htaccess 301 Перенаправление не работает с aspx на новую WP permalink Поиск решения для управления фотографиями WordPress Авторское право Dillema (т.е. Powered by) Не удалось получить ссылку на пост-архив Как скрыть количество сообщений и сообщений других пользователей от edit.php для авторов и авторов Исключить категории из списка (wp_list_categories)

Отменить регистрацию типа сообщения из дочерней темы

Я пытаюсь отменить регистрацию типа сообщения из дочерней темы, но я не смог этого сделать, код в файле funcions.php в родительской теме выглядит примерно так:

add_action( 'init', 'mc_projects' ); function mc_projects() { register_post_type( 'project', array( // Default options.... ) ); } 

То, что я пытался сделать в моей дочерней теме, заключалось в том, чтобы удалить действие mc_project из элемента init так:

 remove_action('init', 'mc_projects', 11); 

Но это не сработало, даже когда я ставлю приоритет на более высокую ценность, я делаю что-то неправильно?

Solutions Collecting From Web of "Отменить регистрацию типа сообщения из дочерней темы"

Попробуйте выполнить следующее в файле функций дочерних тем.

 add_action( 'init', 'remove_mc_projects' ); function remove_mc_projects() { remove_action('init', 'mc_projects'); } 

Это помогло мне.

 add_action( 'after_setup_theme','remove_project_custom_init', 100 ); function remove_project_custom_init() { remove_action( 'init', 'project_custom_init'); } 

Кредит отправляется на http://www.jasonpaul.net

Вот еще одно решение, немного испорченное –

В моей родительской теме мой пользовательский тип сообщения создается следующим образом:

 if (!(function_exists('my_post_type'))) { function my_post_type() { ... } } 

Затем, в моей дочерней теме, я просто повторно объявляю функцию пустой –

 function my_post_type() { } 

Надеюсь это поможет! Это мой первый вклад в такой форум, поэтому, пожалуйста, извините за любые правила форматирования, которые я нарушил.

Это сработало для меня.

 function override_parent() { remove_action( 'init', 'mc_projects', 0 ); } add_action ('after_setup_theme','override_parent');