Отображать текстовое содержимое CPT во всплывающем окне Elementor

Я работаю над макетом Elementor, который будет использоваться в качестве шаблона для пользовательского типа сообщений, в котором будут храниться все проекты дизайнера. Поскольку для каждого проекта имеется много текста, я думаю создать всплывающее окно вне холста, которое будет отображать текст текущего отображаемого проекта. Основная проблема заключается в том, что Elementor не дает мне возможности выбирать виджет содержимого публикации при создании нового всплывающего окна. Я не уверен, возможно ли это.

Есть ли способ получить текущий контент сообщения с помощью перехватчика или фильтра и отобразить его с помощью короткого кода или другого метода?

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
0
62
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Шаг 1. Создайте собственный шорткод

Добавьте следующий код в файл functions.php вашей темы или в собственный плагин, чтобы создать шорткод, извлекающий содержимое публикации:

function my_custom_post_content_shortcode() {
  global $post;
  return apply_filters('the_content', $post->post_content);
}
add_shortcode('custom_post_content', 'my_custom_post_content_shortcode');

Шаг 2. Вставьте шорткод во всплывающее окно Elementor.

  1. Создайте всплывающее окно: перейдите к Templates > Popups в WordPress и создайте новое всплывающее окно с помощью Elementor.
  2. Использование виджета «Текстовый редактор». Перетащите виджет «Текстовый редактор» во всплывающее окно и вставьте шорткод [custom_post_content].

Шаг 3: Запустите всплывающее окно

Редактировать шаблон CPT: откройте шаблон для редактирования в Elementor.

Добавить кнопку/ссылку. Разместите кнопку или элемент ссылки на странице.

Настроить действие: в настройках ссылки установите действие для открытия всплывающего окна («Динамические теги» > «Действия» > «Всплывающее окно»).

Не знаю почему, но я начну получать ошибку 503 после того, как вставлю короткий код в свое всплывающее окно, и не смогу загрузить elementor для изменения всплывающего окна. Я прокомментировал код, и Elementor снова начал работать. Есть идеи, почему?

newbiedev 03.06.2024 16:32

Я заметил, что мне не нужно использовать apply_filters('the_content', $post->post_content);, я могу просто вызвать $post->post_content; и шорткод будет работать корректно без ошибки 503

newbiedev 03.06.2024 16:38

Другие вопросы по теме

Похожие вопросы

Как увидеть различия в коде версий PHP в PhpStorm?
Мой веб-сайт использует html2pdf (javascript) для создания PDF-файла из html, но возникают проблемы с загрузкой в ​​веб-просмотре Android: kotlin
Пользовательский метод доставки с дополнительной проблемой выбора поля в блоке WooCommerce Checkout
Автоматическое завершение обработки заказов WooCommerce с бронированиями, дата начала которых уже прошла
Laravel – ошибка с объединением и курсоромPaginate
Конвертировать аудио pcm_s16le в mp3 (в php с помощью ffmpeg/sox/...)?
Неустранимая ошибка PHP: Uncaught RuntimeException: невозможно создать каталог Doctrine Proxy при чистой установке SuiteCRM
Paypal Advanced Checkout не работает в приложении laravel
Laravel – как создать свойство динамического идентификатора в кнопке для добавления элемента с помощью javascript, идентификатор задается путем прохождения через модальное окно
PHP / Apache / Node / Puppeteer — ошибка: не удалось запустить процесс браузера