Плагин Exec-PHP: если не работает php-код на странице

2
2
Exec-PHP Wordpress плагин

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

Для чего может понадобиться выполнять php-код в записях (статьях)? Да для чего угодно. Например, можно дописывать стандартные функции wordpress в виде какого-нибудь необычного вывода меню, популярных записей или или вставить какие-нибудь дополнительные скрипты.

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

< ?php echo "Привет, мир!"; ?>

то после сохранения записи он так и отобразится в ней со всеми символами.

Одним из популярных решений, «разрешающих» выполнение php-кода в записях и страницах WordPress является плагин Exec-PHP.

Exec-PHP WordPress плагин

Многие с ним знакомы, однако и с ним случаются определенные проблемы. Иногда создается впечатление, будто плагин Exec-PHP не работает: вместо необходимого результата он все-равно выводит код с текстом и символами.

Однако, если присмотреться, то выводимое после сохранения выражение несколько видиоизменяется: появляются «лишние» пробелы между скобками и знаками вопроса:

< ?php echo "Привет, мир!"; ?  >

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

Это происходит потому, что не смотря на то, что код вставляется в HTML версии редактора (это обязательно!), с фактически отключенным WYSIWYG редактором, WordPress на автомате корректирует синтаксис вводимых команд.
Поэтому и не исполняется тот или иной код или скрипт.

Чтобы эту функцию отключить, необходимо в админке в разделе Настройки — Написание снять галочку с чек-бокса «WordPress должен исправлять некорректный XHTML-код автоматически».

Настройка публикации WordPress

После этого сохраняем настройки и радуемся тому, что php-код теперь отрабатывается как надо.

Update: В новых версиях WordPress раздел «Форматирование» в Настройках публикации почему-то исчез. Будем надеяться, что это временный косяк, который скоро исправят разработчики WP. А пока предлагаю следующее решение этой проблемы: https://zgoba.ru/wordpress-ischezlo-formatirovanie-v-nastrojkax-publikacii/






2 КОММЕНТАРИИ

  1. Здравствуйте, у меня в настройках такого нет, точнее настроек публикации — форматирование — WordPress… как можно по другому исправить?

    • Хм, странно, но действительно в последних версиях WP после обновлений этот раздел в админке исчез. Самое интересное, что в самом коде WP эти функции остались.
      Пока предлагаю временное решение, описал в новой статье: https://zgoba.ru/wordpress-ischezlo-formatirovanie-v-nastrojkax-publikacii/ . Надеюсь, что в будущих обновлениях этот косяк исправят.

ОСТАВЬТЕ ОТВЕТ

Please enter your comment!
Please enter your name here