Включение пользовательского PHP в WordPress header.php - страница не загружается - PullRequest
0 голосов
/ 19 августа 2011

Я пытался разобраться в этом за последние полчаса.

У меня есть файл, ue_variables.php, который я хочу включить в тему WordPress, содержимое файла:

if(!empty($_SERVER['HTTP_REFERER'])) {
    $url_referrer = $_SERVER['HTTP_REFERER']; 
    $explode = explode(".",$url_referrer);  
    $name_referrer = ucfirst($explode);
} else {
    $url_referrer = "default";
    $name_referrer = "default";
}

date_default_timezone_set("UTC");
$time = date("H:i:s");
$date = date("j F Y");

Я хочу включить его в header.php, чтобы пользователь мог выводить переменные в сообщении (у него уже есть настройка плагина Exec-PHP, что само по себе не является проблемой).

Сначала я был глуп по этому поводу, пытаясь включить его из корневой папки WordPress (которая даже не содержит header.php), затем я обменял ложную относительную ссылку на истинную абсолютную, и теперь мой WordPress страница разрывается от точки включения вниз.

например. Я помещаю <?php include("/absolute/path/ue_variables.php"); ?> вверху header.php, и вся страница индекса не загружается. Я помещаю его внизу, и загружается только заголовочная часть блога (например, header и nav).

Любые идеи относительно того, почему это происходит, и меры по его исправлению, будут очень, очень признательны! :)

Ответы [ 3 ]

0 голосов
/ 19 августа 2011

Насколько я понимаю, WordPress не использует обычные включения для включения скрипта. Вместо этого WordPress использует хуки и встроенные функции. Я новичок в WordPress, поэтому я не могу вам помочь, но могу указать вам правильное направление. Вы используете дочернюю тему или родительскую их? Потому что, если вы используете дочернюю тему, вы можете сделать копию файла заголовка и переименовать его в нечто вроде заголовка-боли. Затем вы делаете копии файлов подкачки, которые хотите включить в свой новый заголовок, и находите функции header (). Затем вы передадите этим функциям параметр вашего нового заголовка. Таким образом, в этом примере эти функции будут выглядеть так: get_header ('pain'); Надеюсь, это поможет, если вы не используете дочернюю тему, это может сработать. В любом случае, дайте мне знать

0 голосов
/ 23 августа 2016

У вас нет открывающего тега <?php, поэтому, когда он включает его, он не знает, к какому типу кода он относится, и, вероятно, дает сбой.Если вы планируете включить отдельный файл, необходимо добавить открывающий тег php (но не закрывающий), в противном случае добавьте открывающий и закрывающий теги php вокруг кода и поместите его непосредственно в файл header.php, расположенный в папке вашей темы.

0 голосов
/ 19 августа 2011

Есть сообщения об ошибках?Когда вы помещаете его сверху, вся страница не загружается;когда внизу, страница загружается, но скрипт не загружается, на первый взгляд, я думаю, /absolute/path/ue_variables.php может содержать ошибки.

Попробуйте отладить его таким образом.Вставьте коды /absolute/path/ue_variables.php, встроенные в header.php, зачистите их до:

date_default_timezone_set("UTC");
$time = date("H:i:s");
$date = date("j F Y");

Проверьте это.Если работает, то ставьте операторы if-else.Сократите кодовый блок за блоком, чтобы сузить область, из которой может появиться ошибка.

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