Примените фильтр the_content, но запретите другие связанные действия

У меня есть плагин, который отображает некоторый контент на переднем конце сайта после применения фильтра the_content к блоку текста. Я делаю это для форматирования и поддержки ссылок и изображений и т. Д.

Когда я показываю свой контент на переднем конце сайта, другие плагины, которые подключены к конфликту, вызывают конфликты. Например, sharedaddy by jetpack перехватывает содержимое_контента и отображает кнопки общего доступа везде, где используется the_content.

Я могу вручную отключить его, удалив фильтр, но это не так идеально, как я уверен, что не все мои пользователи используют sharedaddy. Итак, вместо добавления remove_filter для sharedaddy, есть ли способ, который я могу просто удалить все фильтры, подключенные к the_content для моего конкретного плагина?

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

<?php echo apply_filters('the_content' , $this->optionVal['custom-message']); ?>

Solutions Collecting From Web of "Примените фильтр the_content, но запретите другие связанные действия"

Если это только для определенных областей содержимого, создайте свой собственный фильтр и the_content его от исходного фильтра the_content .

Поместите это в свои functions.php (найдено в wp-includes/default-filters.php )

 add_filter( 'se152488_the_content', 'wptexturize' ); add_filter( 'se152488_the_content', 'convert_smilies' ); add_filter( 'se152488_the_content', 'convert_chars' ); add_filter( 'se152488_the_content', 'wpautop' ); add_filter( 'se152488_the_content', 'shortcode_unautop' ); add_filter( 'se152488_the_content', 'prepend_attachment' ); 

Затем используйте тот же фильтр. Не стесняйтесь переименовывать его, но дайте ему префикс, чтобы не было конфликтов.

 <?php echo apply_filters('se152488_the_content' , $this->optionVal['custom-message']); ?> 

Вы должны быть либо включенными, либо эксклюзивными для такого рода вещей, поэтому, если есть другие фильтры, которые вы ХОТИТЕ из плагинов, вам также придется вручную их добавить.