У меня есть веб-сайт WordPress с плагином Ad Inserter.
Этот плагин имеет различные блоки, где я могу вставить php-код, чтобы показать его в другой позиции поста (например, после заголовка, после абзаца 1, после содержимого …)
У меня есть скрипт php, и я хочу напечатать его в посте 2 раза в 2 разных позициях. Проблема в том, что я предпочитаю заявлять sample
переменная только один раз.
Итак, я создал 2 блока:
БЛОК 1:
<?php
$sample="test";
print $sample ?>
БЛОК 2:
<?php
print $sample ?>
Первый блок правильно отображается на странице, но второй показывает пустое пространство вместо test
, Если я копирую два кода только в один блок, все работает, но мне нужно показать их в двух разных позициях.
Это основной вопрос WordPress / PHP.
Как мне отредактировать второй блок без объявления sample
снова переменная?
В вашем примере у вас нет никаких функций — $sample
переменная Это также не устанавливается правильно, вам нужно обернуть test
в кавычках, как "test"
,
В зависимости от того, где вы размещаете этот код, переменная $sample
не устанавливается во втором «блоке», поэтому, когда вы выводите значение, оно пустое.
Чтобы создать функцию, которую вы можете использовать для последовательного вывода одного и того же значения, добавьте новую функцию к вашему /wp-content/themes/YOUR-THEME/functions.php
файл. замещать YOUR-THEME
с названием вашей темы (и если вы используете то, что вы скачали, я бы предложил создать Детская тема первый).
Добавить новую функцию
// create a function
function echo_sample(){
// set the variable $sample to a value of "test"$sample = "test";
// echo the value of the $sample variable
echo $sample;
}
Затем вы вызываете эту функцию из других мест вашего кода, помещая ее в тег PHP, например, так:
Функция вызова
<?php echo_sample(); ?>
Что приведет к выводу «теста» на экран.
Для создания функции необходимо использовать ключевое слово function
затем имя функции и после этого тело.
function function_name($par=1){
//function body here.
}
чтобы вызвать функцию: function_name();
,