Intereting Posts
Как установить и использовать глобальные переменные? Или почему бы вообще не использовать их Любые недостатки в использовании Multisite для многих похожих сайтов? Как удалить выпадающий список из wp_nav_menu Отображать custom_background вне wp_head () Как добавить метасимвол по умолчанию для предотвращения ошибки? Недостаток оператора tax_query Как загружать скрипты и CSS для админов только при редактировании или добавлении сообщений Как получить подкатегории родителя, если в подкатегории? Файлы шаблонов для пользовательских типов сообщений и таксономии Удаление многочисленных мета-ящиков из многочисленных СРП Как добавить действие салфетки на страницы wordpress Авторский код отслеживания! Тег с возможностью псевдонима При использовании get_terms и попытке упорядочить условия, используя «порядок» и / или «порядок», не работает этот простой shortcode не генерирует Collapse как предполагаемый

Как удалить фильтры из пользовательских типов сообщений?

Я создал пользовательский тип сообщения, который я буду использовать в качестве целевой страницы для PPC. Теперь в этом настраиваемом типе сообщений я хотел бы удалить все фильтры, которые добавляют, например, кнопки социальных сетей. Я уже пробовал использовать следующий код, но также удалил фильтр коротких сообщений, который я хотел бы сохранить в этом настраиваемом типе сообщений. Вот код, который я использовал:

function landingpage_remove_plugin_filters() { global $wp_filter; global $wp; if ($wp->query_vars["post_type"] == 'landingpage') { remove_all_filters('the_content', 'plugin_filters'); } } add_action('wp','landingpage_remove_plugin_filters'); 

Кто-нибудь знает, что мне нужно изменить, чтобы сохранить фильтры коротких кодов в этом настраиваемом типе сообщений?

Большое спасибо за ваши усилия.

Даниил

Solutions Collecting From Web of "Как удалить фильтры из пользовательских типов сообщений?"

Попробуйте повторно добавить фильтр «do_shortcode» следующим образом:

 function landingpage_remove_plugin_filters() { global $wp_filter; global $wp; if ($wp->query_vars["post_type"] == 'landingpage') { remove_all_filters('the_content', 'plugin_filters'); add_filter('the_content', 'do_shortcode'); } } add_action('wp','landingpage_remove_plugin_filters'); 

Функция remove_all_filters удаляет все крючки из фильтра и имеет только два параметра $tag (фильтр для удаления крючков) и $priority

если вы хотите удалить все перехватчики из фильтра, используйте remove_all_filters , но если вы хотите удалить hook с именем plugin_filters используйте функцию remove_filter

 function landingpage_remove_plugin_filters() { global $post; if ( 'landingpage' == $post->post_type ) remove_filter( 'the_content', 'plugin_filters' ); } add_action( 'wp', 'landingpage_remove_plugin_filters' );