У меня есть тег "require_once"
, используемый на нескольких страницах с коротким кодом, которые иногда загружаются на одну и ту же страницу.Когда они это делают, только первая страница, ссылающаяся на требуемый файл, может использовать любые установленные переменные и функции.Например:
<?php
/*
* This is page function.php
*/
$test = 'This is a test if the variable can be called';
?>
Вот короткий код первой страницы [page1]:
<?php
/*
* This is page1.php
*/
require_once(function.php);
echo "What is returned for page1? -> $test";
?>
Вот короткий код второй страницы [page2]:
<?php
/*
* This is page2.php
*/
require_once(function.php);
echo "What is returned for page 2? -> $test";
?>
Если я затем использую шорткоды на странице или посте, как это:
[page1]
[page2]
Я получу:
Чтовозвращается для page1? ->
Это тест, если переменная может быть вызвана
Что возвращается для page2? ->
Если я поменяю местами шорткоды следующим образом:
[page2]
[page1]
Я получаю: Что возвращается для page2? ->
Это тест, если переменная может быть вызвана
Чтовозвращается для page1? ->
. Он отменяет результат, так что любая вызываемая страница может использовать переменные, но вторая страница не может.
Если я вызову functions.php
просто "require"
вместо "require_once"
, тогда я получаю сообщение об ошибке при попытке загрузить одну и ту же страницу дважды.
Есть ли решение, позволяющее загружать страницы с помощью коротких кодов для доступа к странице функций?