Drupal节点标题中的HTML \ rich文本?

时间:2009-10-08 06:09:40

标签: drupal drupal-6

我需要节点标题才能显示一些文本格式。

据我了解,Drupal的标题字段只是纯文本,不允许HTML或任何其他输入格式。真的吗?有没有办法覆盖这个或其他解决方案?

我正在使用Drupal 6。

3 个答案:

答案 0 :(得分: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中$ title的默认值,该值包含用于标题的变量。它通常放在h1或h2标签内,所以你应该知道这一点。 filter_xss用于仅允许基本的html标记,因此保护网站,您可以查看该函数here。这是一些其他的过滤器函数,比如check_markup和filter_xss_admin,但是你可以为filter_xss提供第二个参数,这是一个允许标签的数组,所以如果默认值不够好,你可以根据自己的需要进行更改。 / p>

答案 1 :(得分:0)

mytheme_preprocess_page使用函数D7

答案 2 :(得分:-1)

扩展wiifm提到的模块,对于D7,现在还有:https://drupal.org/project/html_title_trash

它允许更多标签,也适用于块标题,而不仅仅是节点标题。