Как задать вывод цитаты (the_excerpt) в Wordpress независимо от заполнения поля?
Дано: CPT, данные в котором заполняются через ACF. То есть в обычном понимании у записи нет ни цитаты, ни контента. Требуется: Вывести список постов (архив), пользуясь Elementor.
Проблема: Часть виджетов Elementor, оперирующих выводом списка постов, ориентируются на стандартные поля.
Функции the_excerpt() и get_the_excerpt() выводят цитату согласно правила: если заполнено что-то в поле цитата, то это содержимое; если не заполнено, то контент поста; если и контента нет - то ничего не выводят. Эти же функции имеют хуки - это прекрасно! То есть я без проблем подменяю содержимое цитаты моим контентом из ACF. Вот только эти хуки срабатывают только, когда has_excerpt() возвращает true; то есть они дают мне возможность ПЕРЕОПРЕДЕЛИТЬ выводимую цитату. А мне надо, чтобы они срабатывали каждый раз при самом запросе вывода цитаты, и независимо от наличия цитаты или содержимого поста (которых, мы помним, у меня нет) - все равно вызывали сработку функции, определенной у меня в add_filter и получали/выводили мое содержимое.
Как это сделать, как обмануть систему?
Лобовое решение, понятно, при создании поста перехватывать хук и принудительно писать что-то типа 'xyz' в поле цитаты. Пользователь все равно не увидит, а система увидит заполненную цитату. Но это некий брутфорс )) хочется изящнее и без перезаписи БД.
А что побудило отказаться от нативного excerpt? Я наоборот при работе с cpt стараюсь использовать нативные возможности, а где не хватает уже, то кастомные поля
Антон Литвиненко, чтобы сделать структуру удобной и понятной конечному клиенту. То есть ввод информации разбит на вкладки: Общая информация, Фотоматериалы, Вкладка3, Вкладка4... В данном конкретном случае речь идет про портфолио. И в полях есть: 1) Проблема клиента; 2) Предложенное решение. Вот поле 1 - Проблема - и является в данном случае заменой нативному excerpt Эти поля расположены в общей вкладке, рядом друг с другом, в дополнение к другим полям этого же уровня - подробное описание, сторонние инструменты и т.п.
Виталий, "Вот только эти хуки срабатывают только, когда has_excerpt() возвращает true;"
я возможно не совсем понял, что за хуки, нельзя там сделать чтобы has_excerpt() = true?
Антон Литвиненко, потому что я не знаю, где перехватить первую проверку на это самое наличие нативного контента в excerpt или content. То есть хуки уже ПОСЛЕ проверки, когда идет запрос на вывод информации в поле excerpt - а мне надо принудительно заставить выполнить этот запрос.