Вызов функции Wordpress внутри исходной страницы iframe - PullRequest
0 голосов
/ 15 апреля 2020

Я работаю над темой для сайта Wordpress. В указанном шаблоне страницы c я должен использовать iframe, чтобы содержать страницу, расположенную в каталоге моей темы. Я не могу использовать код html без iframe по другим причинам (это презентация js, которая занимает весь экран, если не в iframe).

Последняя страница будет видна только вошедшие в систему пользователи. Этого легко добиться в самом шаблоне, но по какой-то причине я не могу защитить исходную страницу самого iframe. Вызов функций WP внутри исходной страницы, например is_user_logged_in(), приводит к Call to undefined function error.

Скажем, my-template.php содержит это html:

<iframe src="<?php echo get_stylesheet_directory_uri(); ?>/subdirectory/my-source-page.php">

И my-source-page.php будет:

<?php if ( is_user_logged_in() ) { ?>

<!doctype html>
<html>
    <head></head>
    <body>
        Some content.
    </body>
</html>

<?php } ?>

Как я могу вызвать функцию Wordpress из my-source-page.php?

РЕДАКТИРОВАТЬ Видимо Мне потребуется сценарий wp-load.php для доступа к функциям WP. Так что это был бы другой вопрос.

1 Ответ

0 голосов
/ 15 апреля 2020

Благодаря полезным комментариям и этим темам я нашел решение своей проблемы.

my-source-page.php теперь выглядит так:

<?php 
// First we get the home path where WP lives
$path = preg_replace('/wp-content.*$/','',__DIR__);

// Then we load WP's core functionalities
require_once( $path . '/wp-load.php');

// And we can now use WP's core functions.
if ( is_user_logged_in() ) { ?>

<!doctype html>
<html>
    <head></head>
    <body>
        Some content.
    </body>
</html>

<?php } ?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...