WordPress шорткод преобразования HTML элементов в их сущности

 13 мая 2018      
 JAVA & PHP / WordPress      
 Комментариев еще нет      
 728

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

Раньше для этих целей отлично подходил HTML тег <xmp>. Который сообщал браузеру, что содержимое внутри нужно отобразить «как есть» и шрифтом фиксированной ширины.

Все браузеры его успешно поддерживают, но официально он не разрешен для использования в HTML спецификации. То есть вы можете использовать его на свой страх и риск. У пользователей, скорее всего всё будет прекрасно работать, но валидацию ваш сайт не пройдет.

Чем заменить тег XMP

В WordPress самый простой способ — это использовать PHP функции преобразования спецсимволов в HTML сущности и вставлять шорткоды в необходимых местах.

Шорткоды — это функции PHP, которые можно задействовать внутри содержимого поста, используя условные обозначения. Например стандартный вордпрессовский шорткод [gallery] позволяет вывести галерею внутри поста.

Подробнее о функциях преобразования тегов в HTML сущности читайте здесь: https://moonback.ru/page/preobrazovanie-tegov-v-html-sushhnosti

Шорткод для преобразования спецсимволов в их сущности

Так как в WordPress нет готового шорткода для преобразования спецсимволов в их HTML сущности, то мы создадим его сами. Для этого добавьте нижеследующий код в файл functions.php вашей темы WordPress:

/* Шорткод для преобразования в сущности */
function mb_html_code_shortcode ($atts , $content = null ) {
return htmlspecialchars( $content, ENT_QUOTES);
}
add_shortcode ('code', 'mb_html_code_shortcode');

Как использовать шорткод

Для того, чтобы преобразовать спецсимволы в сущности используйте следующий код:

[code]Символы которые необходимо преобразовать в HTML сущности[/code]

Пример использования

Допустим вы хотите отобразить HTML код ссылки у себя в статье, то есть не опубликовать ссылку, чтобы посетитель по ней кликнул, а вывести на экран набор символов как бы он выглядел в текстовом редакторе:

<a href="https://moonback.ru/">https://moonback.ru/</a>

Тогда используйте шорткод:

[code]<a href="https://moonback.ru/">https://moonback.ru/</a>[/code]

При этом в браузере будет следующий набор символов:

&lt;a href=&quot;https://moonback.ru/&quot;&gt;https://moonback.ru/&lt;/a&gt;

И он будет лишь отображен на экране, а не исполнен.

Рекомендую прочесть:  Как убрать дату со страниц сайта

Благодарности

При написании статьи были использованы следующие источники:

  1. http://www.php.su/htmlspecialchars
  2. https://misha.blog/wordpress/shortcodes.html
Поделись этой страницей с друзьями!

Прочтите это обязательно

Как ускорить сайт на Wordpress - базовые рекомендации

Уверен, вы слышали фразу, что медленный сайт убивает SEO. В этой статье я расскажу как быстро и просто максима ...

HTML & CSS css javascript wordpress Далее

Как запустить Unixbench на Debian 9

Четыре года назад я уже рассказывал о популярной утилите тестирования производительности серверов под управлен ...

GNU Linux - CentOS / Debian debian unixbench Далее

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Нажимая кнопку "Отправить" Вы даёте свое согласие на обработку введенной персональной информации в соответствии с Федеральным Законом №152-ФЗ от 27.07.2006 "О персональных данных", на условиях и для целей определенных политикой конфиденциальности.

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

2019 © Технический блог
SQL - 96 | 0,136 сек. | 10.14 МБ
доступность сайта