PHP код в WordPress – как вставить с плагином и без него?

php код в wordpress

Как вставить PHP код в WordPress страницы, записи и сайдбар?

Здравствуйте, уважаемые друзья и гости блога! Сегодняшний пост будет полезен как новичку, так уже и матерому вебмастеру, который еще не знает как можно вставить php код в wordpress на страницы, записи и сайдбар, чтобы он был исполнен движком WordPress.

Хочу Вам рассказать в данной статье об этом и как можно вставить php код в wordpress без использования плагина и с использованием плагина. Вы также узнаете все нюансы и тонкости, плюсы и минусы, которые Вас могут поджидать при выполнении этой функции на WordPress.

Иногда возникает простая необходимость при создании сайта, чтобы вставить php код в wordpress в записях, на страницах или в сайдбаре. Я сам с этим столкнулся однажды и когда я попытался просто вставить php код в сайдбаре, он был выведен как обычный текст. То есть не был исполнен как функция.

Зачем нужно исполнение кода php на WordPress в постах, на страницах и в сайдбаре? Это каждый вебмастер решает сам для себя! Например возникла необходимость вставки в свои посты какого либо скрипта созданного на php коде или нужно вывести какое-то необычное меню в сайдбаре, мало ли.

Так вот, что бы вывести исполняемый код php в WordPress необходимо сделать некоторые действия, а какие именно, мы с вами сейчас узнаем …

Как вывести исполняемый PHP код в WordPress без плагина?

вставить php код в wordpress
вставить php код в wordpress

Данный способ вывода php кода на Вордпресс будет актуален для тех, кто является ярым противником установки лишних плагинов на своих ресурсах. И сейчас Вы узнаете как это можно сделать.

Для этого вам будет нужно внести некоторые изменения в файл functions.php вашей активной темы оформления сайта. Просто добавьте туда вот такой код в самом конце перед знаком “?>“:

/* чтобы вставить исполняемый код php в статьях/страницах WordPress, используйте этот шорткод: [exec]код[/exec] */
function exec_php($matches){
    eval('ob_start();'.$matches[1].'$inline_execute_output = ob_get_contents();ob_end_clean();');
    return $inline_execute_output;
}
function inline_php($content){
    $content = preg_replace_callback('/\[exec\]((.|\n)*?)\[\/exec\]/', 'exec_php', $content);
    $content = preg_replace('/\[exec off\]((.|\n)*?)\[\/exec\]/', '$1', $content);
    return $content;
}
add_filter('the_content', 'inline_php', 0);

Затем используйте вот этот шорткод в своих записях и статьях для вставки исполняемого php кода:

[exec]здесь php код [/exec]
  •  Небольшое уточнение, которое является очень важным моментом для правильного отображения и вывода php кода в ваших записях на сайте!

Обязательно, когда Вы будете внедрять свой php код в шорткод, не используйте вот это: “<?php  ?>”! То есть ваш исполняемый php код вставляемый в шоткод должен выглядеть не так<?php echo date(‘Y’); ?>“, а вот такecho date(‘Y’);” . И в конечном итоге, когда Вы вставите его в шорткод, он будет выглядеть вот так:

[exec]echo date('Y');[/exec]
  •  Еще одно предупреждение для начинающих вебмастеров!

Исполнение таким образом php кода в ваших записях на WordPress делает ваш движок уязвимым для разного рода хакеров – взломщиков, которые могут им воспользоваться в своих корыстных целях. Для этого Вы должны изменить значение “exec” в коде, который вставляется в файл functions.php на свой, который известен только вам! И соответственно использовать это же значение в шорткодах для вставки в записях.

Этим действием Вы сможете избежать того, что кто-то сможет воспользоваться потенциальной “дырой”, образовавшейся в результате использования данной функции – вставить php код в wordpress.

Это то, что касается вставки php кода в WordPress без использования плагина.

А теперь давайте узнаем, как можно еще вставить php код в WordPress, но уже при помощи плагина …

Как внедрить исполняемый PHP код в WordPress с плагином Exec-PHP?

вставить php в wordpress
вставить php в wordpress

Существует много плагинов для того, чтобы вставить php код в wordpress для его исполнения. Но не все они являются безопасными, так как при их установке и использовании появляются уязвимости в движке, которые не чистые на руку взломщики могут использовать.

Я вам сейчас расскажу о самом безопасном и наиболее функциональном плагине для исполнения php кода в WordPress – это Exec-PHP. Для начала его нужно скачать или с официального сайта WordPress или просто установить из своей админки на сайте. Надеюсь Вы знаете как это делается?! Если не знаете, то посмотрите пример установки плагина из админки вот здесь. Там есть и видео ролик, в котором Вы сможете все увидеть воочию. Хоть там речь идет об установке другого плагина, но принцип один и тот же.

После установки и активации плагина в вашем основном меню админки появится пункт меню плагина Exec-PHP:

пункт меню плагина Exec-PHP
пункт меню плагина Exec-PHP

Нажмите на нее и Вы попадете в опции плагина Exec-PHP:

опции плагина Exec-PHP
опции плагина Exec-PHP

Выберите здесь выполнять/игнорировать PHP код в виджетах и все.

Затем, чтобы Вы смогли вставить исполняемый php код в wordpress в записях и на страницах, Вы должны у себя в профиле установить галочку в пункте – опция Disable WYSIWYG Conversion Warning:

опция Disable WYSIWYG Conversion Warning
опция Disable WYSIWYG Conversion Warning

Все. Теперь вы сможете добавить на свои страницы и в записи любой php код в wordpress и он будет исполнен!

Спасибо за внимание! Всем удачи! До новых встреч!

5/5 - (3 голоса)
Понравилась статья? Поделиться с друзьями:
Комментарии: 4
  1. olg

    Спасибо за информацию, а Exec-PHP запрещен для новых установок!

     

    1. Валерий Бородин (автор)

      Да, сейчас смотрю и правда! Ничего, страшного! Я постараюсь как можно быстрее написать статью об этом плагине и с возможностью скачать его в русской локализации. Данный плагин работает идеально, хоть и его сейчас уже нет в свободном доступе в репозитории WordPress.

  2. Артур

    Спасибо за статью, только о каком коде идёт речь в функции exec, который нужно сменить на свой? Можно поконкретнее?

    1. Валерий Бородин (автор)

      Здравствуйте, Артур! Речь о том, что функцию “exec” в своем шорткоде просто нужно изменить на свою, которая будет известна только Вам! Это защита от взлома!

Добавить комментарий