Raw HTML CCK поле (Drupal 6) - без фильтров, форматов или редактор
Simple Fix! Просто используйте текстовый формат для нефильтрованного HTML. Затем преобразуйте его обратно в html в поле .tpl, когда узел построен.
Формат обычного текстового формата в поле CCK преобразует HTML-теги в специальные символы сущности (это было бы сделано так, чтобы он читался как код на странице вместо фактических тегов html). Он хранит строку, закодированную с помощью php's htmlspecialchars ($ text, ENT_QUOTES, 'UTF-8') внутри функции check_plain() drupal.
Самый чистый простейший способ его декодирования, находится в поле tpl файла . Это позволяет избежать перехвата вызовов, проблем с ордерами на крючках, ошибок цикла и проблем с производительностью. Это делается путем добавления файлов tpl к базовым темам: hq_base, odyssey_base и odyssey_admin. Вот как drupal расшифровывает простой текст в форме редактирования cck: print html_entity_decode (strip_tags ($ text), ENT_QUOTES); Примечание. Html_entity_decode превращает php-теги в комментарии html, когда он декодирует обратно в html. Ниже приведены примеры файлов с правильным соглашением об именах, чтобы дать управление php по полям:
• content-field.tpl.PHP
• контента поле- [your_field_name] .tpl.php
контент-field.tpl.php является копией с ССК вно в тематических папках, это вно переопределение чтобы сделать его доступным в теме, и его не следует изменять (если вы не хотите менять все поля в теме). Файл, специфичный для поля, также является копией tpl, он будет работать после того, как файл переопределения будет там. Затем декодировать до html в поле tpl файл:
• // print $ item ['view'];
• print html_entity_decode (strip_tags ($ item ['view']), ENT_QUOTES);
Drupal версия Примечание: В TPL файлы немного отличаются в Drupal 7 и Drupal 8. Но html_entity_decode() является функцией PHP, которая не будет изменяться в зависимости от Drupal версии.
Замечание по безопасности: Этот декодирующий трюк для получения необработанного HTML идет против того, что Drupal был создан для обеспечения форматирования текста. Это означает, что у кого есть разрешения на редактирование страницы, теперь есть разрешения на редактирование структуры html и добавление тегов скриптов на странице. Это может сломать макеты и потенциально опасно. Вы полагаетесь на права на редактирование для защиты здесь, а не на стандартную защиту Drupal для каждой роли.
Благодарим за отзыв, но вопрос? Где бы существовала функция темы? – Romelus96