Как использовать собственные переменные php в шаблоне WordPress? - PullRequest
2 голосов
/ 09 июля 2010

Я использую шаблон WordPress в php следующим образом:

<?php
include('wp-blog-header.php');
get_header();
?>

...Hello World...

<?php get_footer(); ?>

хорошо, все работает хорошо ... но содержимое заголовка и других метатегов пустоКак я могу изменить содержимое заголовка или использовать мои собственные переменные $ внутри секции get_header ()?это не работает так:

$test="Blabla";
get_header();

.. inside a wordpress header template:
echo $test;

переменная $ test пуста :( .. есть идеи? спасибо!

Ответы [ 4 ]

6 голосов
/ 09 июля 2010

Переменная $ test пуста, потому что заголовок включен функцией, следовательно, фактически «внутри» функции, и, что более важно, в другой области видимости ... воспринимайте это как

function get_header()
{
  $test = '1234';
}
get_header();
echo $test; // won't work because test is in a different scope

youоднако можно использовать глобальные переменные или переменные $ _SESSION, или создать статический класс для хранения переменных, которые можно вызывать из любого места.

глобальная опция, вероятно, является самым быстрым решением (хотя и не самым строгим).

$GLOBALS['test'] = "Blabla";
get_header();

.. inside a wordpress header template:
echo $GLOBALS['test'];

надеюсь, что поможет

2 голосов
/ 09 июля 2010

поместите все свои различные пользовательские функции и / или переменные в ваши functions.php

или заменить get_header (); от include get_bloginfo ("template_url"). '/ header.php';

1 голос
/ 25 июля 2013

Просто замените:

<?php 
$test="Blabla";
get_header(); 
?>

на:

<?php 
$test="Blabla";
include(TEMPLATEPATH . '/header.php');
?>;

, и переменная будет в области видимости.Старайтесь избегать использования глобалов.

0 голосов
/ 10 июля 2010

По умолчанию get_header () извлекает файл header.php.Вы можете просто переписать файл header.php, чтобы включить то, что вы хотите.Если вы не хотите переписывать его для всех шаблонов, а только для нескольких, вы можете использовать get_header ('name'), который будет захватывать header-name.php, в котором вы можете иметь свои собственные элементы.

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