Как получить идентификатор страницы в шорткоде Wordpress в заголовке Visual Composer - PullRequest
0 голосов
/ 03 марта 2020

Я создаю свой сайт, используя визуальные функции composer для верхнего и нижнего колонтитула. Я разрабатываю шорткод, который печатает мой код заголовка html. Затем я встраиваю его в новый заголовок, созданный с использованием Visual Composer.

enter image description here

Сегодня я обновил плагин (визуальный composer) до версии 13.12.2019 - версия 6.1.0, и теперь я не могу получить идентификатор страницы, в которой заголовок фактически отображается во внешнем интерфейсе. Ранее я использовал этот код для получения идентификатора страницы, на котором заголовок фактически показан ниже (шорткод работает в контексте заголовка).

$pageId = get_queried_object_id(); 

Даже global $wp_query; не содержит правильного ID.

Кто-нибудь здесь, кто может мне помочь;)?

Ответы [ 2 ]

0 голосов
/ 04 марта 2020

Я узнал, как это сделать сам. Если кто-то находится в той же ситуации, вот решение этой проблемы. В WordPress есть функция get_page_by_path(), которая ищет вашу страницу на основе permalink. Я использую этот код в Shortcode, который включен в Visual Composer Header-Element и отображается на подстранице, чтобы получить ID страницы с сайта, который включает в себя заголовок, а не сам заголовок (который является posttype в WordPress тоже).

$pageId = get_page_by_path($_SERVER["REQUEST_URI"])->ID;
0 голосов
/ 04 марта 2020

получить идентификатор текущей страницы или идентификатор сообщения на веб-интерфейсе

$page_id = get_the_ID();
OR
$post_id = get_the_ID();

получить идентификатор термина на странице архива на веб-интерфейсе

$category = get_queried_object();
$term_id = $category->term_id;
...