Я написал модуль в свою тему WordPress, он слишком сложный и неуместный.
Мне нужно включить блок кода и мне нужен надежный способ определить, редактирует ли пользователь в данный момент определенные страницы.
По сути, мне нужен эквивалент внешней проверки:
if (is_front_page()) {
Но, когда на страницах редактора.
Требуется также иметь возможность ориентироваться на страницы, которым не присвоены специальные имена, такие как главная страница / страница магазина. Поэтому мне может понадобиться настроить таргетинг по идентификатору сообщения.
Каков самый чистый способ выполнить эту проверку?
Я пробовал функцию выше, а также:
$screen = get_current_screen();
Однако это приводит к критической ошибке:
Fatal error: Uncaught Error: Call to undefined function get_current_screen() in ... points to line.
Также были опробованы несколько других методов, я лишь отмечу несколько. Я думал, что смогу заставить одного работать, но, похоже, ни один из них не справился с задачей. Пожалуйста, может кто-нибудь указать мне в правильном направлении?
ИЗМЕНИТЬ Добавление фрагмента примера
// This creates the fatal error.
// $screen = get_current_screen();
// var_dump($screen);
// This is for the front-end
// if (is_front_page()) {
// global $pagenow;
// var_dump($pagenow);
// if ($pagenow == 'post.php') {
// This returns string(8) "post.php" which is not descript enough.
// This is front-end
// global $post;
// $post_id = $post->ID;
// Post ID 3887 is Home
if ($post_id == '3887') {
echo 'hello!';
require_once('inc/overlays/page-template/fc-front-page.php');
} else {
echo 'Well that did not work!';
}
Причина, по которой я это делаю, не имеет значения, я просто хочу включить файл в другую папку, вызываемый файл будет другим в зависимости от того, какая страница редактируется в данный момент!