Как удалить все HTML-теги из get_the_content()?
я хочу удалить все html теги из контента, такие как <p>, <br>, <img>, <a>
я пробовал strip_tags()
также пробовал
$content = get_the_content();
$content = apply_filters('the_content', $content);
но для меня это не работает. есть ли надежное решение??

Функция WordPress, которую я обычно использую, это wp_filter_nohtml_kses
. Она должна удалять весь HTML, но нужно быть осторожным, чтобы не вернуть HTML обратно, применяя фильтры the_content
к строке без HTML.
Я не уверен, почему strip_tags
не сработала, но подозреваю, что вы делаете что-то ещё в другом коде (опубликованном или нет), и это что-то отменяет удаление тегов или возвращает некоторые теги обратно. В основном я так думаю, потому что вы пробовали...
$content = get_the_content();
$content = apply_filters('the_content', $content);
... и, судя по всему, ожидали, что теги будут удалены?

Да! Ты был прав. strip_tags()
не работает из-за $content = get_the_content();
$content = apply_filters('the_content', $content);
Спасибо, друг.

Это удаляет как <htmltags>
, так и <!-- комментарии -->
:
echo wp_strip_all_tags( get_the_content() );
wp_filter_nohtml_kses()
не помог избавиться от комментариев.
