Артём Мáлков

Исполняемый PHP-код в виджетах WordPress

24 ноя0 комм

Виджеты в WordPress – одна из лучших и отличительных особенностей этой CMS, которая позволяет без особых знаний управлять содержимым сайдбаров (боковых колонок), футера (низом сайта) и хедера (верхом сайта).

Но варианты использования виджетов не ограничиваются только этими функциями, и лично я применил их для реализации одного весьма необычного информера, где мне было необходимо воспользоваться чистым PHP-кодом. Кто-то скажет, что для этого есть функции и шорткоды (shortcodes). Возможно, но те задачи, которые стояли передо мной и мои варианты их решения требовали именно возможности запуска исполняемого PHP-кода в виджете WordPress.

Не знаю, существуют ли плагины под это дело, но небольшая функция помогла достигнуть желаемого результата.

Функция эта выглядит так:

function widget_run_php($widget_content) {

	if(strpos($widget_content, "<?php") !== false) {

		eval(" ?>".$widget_content."<?php ");
	
	}
	
	return $widget_content;

}

add_filter("widget_text", "widget_run_php", 99);

Ее вы вставляете в файл functions.php (желательно в самый низ), который находится в папке вашей темы.

После чего, например, вы создаете виджет с типом «Текст» и вставляете в него этот код:

<?php

	echo "Hello, world!";

?>

Если на сайте после сохранения изменений вы увидели чистую фразу «Hello, world!» – значит, вы все сделали правильно и можете дальше реализовывать свои идеи. Если желаемый результат не достигнут – напишите в комментариях, я постараюсь вам помочь.

Рекомендуем к просмотру
Как получить ID просматриваемой страницы или записи в WordPress на PHP?
Статьи и советы
Как создать новую область для виджета в WordPress?
Статьи и советы
Как вставить исполняемый PHP-код в посты WordPress?
Статьи и советы
0
комментариев
Форма комментирования этого поста скрыта. Авторизуйтесь, чтобы расширить привилегии гостевого посещения и получить необходимую помощь от сообщества Pandoge.
Подняться наверх
«Pandoge» - помощник вебмастера