Как объявить функцию один раз в WordPress

У меня есть веб-сайт WordPress с плагином Ad Inserter.

Этот плагин имеет различные блоки, где я могу вставить php-код, чтобы показать его в другой позиции поста (например, после заголовка, после абзаца 1, после содержимого …)

У меня есть скрипт php, и я хочу напечатать его в посте 2 раза в 2 разных позициях. Проблема в том, что я предпочитаю заявлять sample переменная только один раз.

Итак, я создал 2 блока:

БЛОК 1:

<?php
$sample="test";
print $sample ?>

БЛОК 2:

<?php
print $sample ?>

Первый блок правильно отображается на странице, но второй показывает пустое пространство вместо test, Если я копирую два кода только в один блок, все работает, но мне нужно показать их в двух разных позициях.

Это основной вопрос WordPress / PHP.
Как мне отредактировать второй блок без объявления sample снова переменная?

-1

Решение

В вашем примере у вас нет никаких функций — $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(); ?>

Что приведет к выводу «теста» на экран.

0

Другие решения

Для создания функции необходимо использовать ключевое слово function затем имя функции и после этого тело.

function function_name($par=1){
//function body here.
}

чтобы вызвать функцию: function_name();,

0

По вопросам рекламы [email protected]