Хак: Вставить любой html код в редакторе записей
Иногда хочется расширить стандартный редактор текста (как визуальный, так и его крайне полезную вкладку HTML) lля того, чтобы получить возможность добавлять определенные теги или аттрибуты к записи (в том числе и на пользовательских сайтах). Зачастую проблему такую можно решить с помощью плагинов, но я решил предложить вам более интересное и гибкое решение – можно добавить в файл functions.php
темы код, написанный ниже.
global $allowedposttags;
foreach($allowedposttags as $tag => $val){
$allowedposttags[$tag]['id'] = array();
$allowedposttags[$tag]['class'] = array();
}
Этот код для всех уже существующих html-тегов (например, для тега div
или р
) добавит поддержку аттрибутов id и class. Таким же образом вы можете добавить любые другие из тех, что вам необходимы.
Если же вы хотите добавить что-то совсем экзотичное, то прописываете следуюший код:
global $allowedposttags;
$allowedposttags['iframe']['width'] = array();
$allowedposttags['iframe']['height'] = array();
$allowedposttags['iframe']['src'] = array();
$allowedposttags['iframe']['frameborder'] = array();
$allowedposttags['iframe']['allowfullscreen'] = array();
Код выше позволит вам вставить iframe внутрь поста. Это может быть видео с ютуба или что-то совсем другое.
Я думаю, что вы уже поняли идею. Вся соль в использовании этой глобальной переменной $allowedposttags
.
Если у меня сеть сайтов, то надо вставлять код в functions.php каждой темы, чтобы это работало на пользовательских сайтах?
Ну да.
Можно еще попробовать создать папку
/wp-content/mu-plugins/
, а в ней – любой php файл, в который и вставить этот код. Тогда должно сработать сразу для всей сети – одним махом.Я поставил плагин Unfiltered MU. У меня нет открытой регистрации, так что безопасность сети сильно не нарушится, как предупреждают разработчики плагина.
А у меня iframe с ютуба и так нормально давно вставляется. Что я делаю не так? У меня нет ни одного плагина для вставки видео.
На обысном WP проблем нет. На WPMS – есть. И iframe я привел просто как пример, чтобы показать, каким образом добавить любой html тег.
WPMS – мультисайт? у меня 2 сайта. Один wp + блоги с именами в сайт/имя А второй бадди с блогами и форумами имена имя.сайт.ру Видео вставляется без проблем. Когда то использовал какой то плагин, уже не помню. Но уже довольно давно прямо код. А после обновлений слета или весны и iframe нормально вставляется. Было дело, что не шел. Я не фрейму придираюсь. Просто в тексте сказано что так можно вставлять видео. Вот я и удивился может у меня что не так или народ не просек обновления
Были проблемы на блогах у пользователей. Суперадмины всегда всё везде вставляли без проблем.