2009-10-08 4 views
5

Мне нужны названия узлов, чтобы иметь возможность отображать форматирование текста.HTML богатый текст в названии узла Drupal?

Насколько я понимаю, поле заголовка Drupal - это просто текст, он не позволяет HTML или любой другой формат ввода. Это правда? Есть ли способ переопределить это или другое решение?

Я работаю с Drupal 6.

ответ

6

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

/* this function generates the variables that are available in your node.tpl, 
* you should already have this in your template.php, but if not create it 
*/ 
function mytheme_preprocess_node(&$vars) { 
    // It's important to run some kind of filter on the title so users can't 
    // use fx script tags to inject js or do nasty things. 
    $vars['title'] = filter_xss($vars['node']->title); 
} 

Что происходит в функции является то, что он переписывает значение по умолчанию $ заголовка в node.tpl который содержит переменную, используемую для заголовка. Обычно он помещается в тег h1 или h2, поэтому вы должны знать об этом. Фильтр_xss используется только для базовых тегов html, поэтому защищайте сайт, вы можете посмотреть на эту функцию here. Это некоторые другие функции фильтра, такие как check_markup и filter_xss_admin, но вы можете дать второй параметр для filter_xss, который представляет собой массив разрешенных тегов, поэтому по умолчанию не будет достаточно, вы можете просто изменить его в соответствии с вашими потребностями.

-1

Расширение модуля упоминаемого WIIFM, для D7 есть теперь: https://drupal.org/project/html_title_trash

Это позволяет больше тегов, а также работает для блочных названий, а не просто узел названий.

+0

Это не дает ответа на вопрос. Чтобы критиковать или просить разъяснения у автора, оставьте комментарий ниже их сообщения. – PutzKipa

+0

Извините, но я не могу. Это РЕШАЕТ и отвечает на вопрос. Вопрос: «Мне нужны названия узлов, чтобы иметь возможность отображать текстовое форматирование. Насколько я понимаю, поле заголовка Drupal - это просто текст, он не позволяет HTML или любой другой формат ввода. Это правда?» И ответ: да, верно, что ядро ​​Drupal не позволяет HTML в заголовках узлов, но когда вы используете модуль выше, он делает. – fris

+0

OP говорит, что он работает с Drupal 6 в конце своего поста. Также есть тег «drupal-6». И модуль мусора заголовка html был представлен на Drupal 7. Я думаю, что ваш пост должен был быть сделан как комментарий к ответу wiifm. Потому что это приятное дополнение, но не прямой ответ. – PutzKipa

Смежные вопросы