2009-10-08 21 views
5

Necesito los títulos de los nodos para poder mostrar algunos formatos de texto.HTML texto enriquecido en el título del nodo de Drupal?

Por lo que yo entiendo, el campo de título de Drupal es simplemente texto, no permite HTML o cualquier otro formato de entrada. ¿Es eso cierto? ¿Hay alguna manera de anular esta u otra solución?

estoy trabajando con Drupal 6.

Respuesta

6

Usted puede hacer muy fácilmente en este tema, hay diferentes maneras de hacerlo con. Lo más sencillo sería, probablemente, a hacerlo en su 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); 
} 

¿Qué ocurre en la función es que se sobrescribe el valor por defecto de $ título en la node.tpl que contiene la variable utilizada por el título. Por lo general, se coloca dentro de una etiqueta h1 o h2, por lo que debe tener en cuenta. El filter_xss se usa solo para permitir etiquetas html básicas, así que proteja el sitio, puede ver esa función here. Estas son algunas otras funciones de filtro, como check_markup y filter_xss_admin, pero puedes dar un segundo parámetro para filter_xss, que es una matriz de etiquetas permitidas, por lo que si el valor predeterminado no es lo suficientemente bueno, puedes cambiarlo para que se ajuste a tus necesidades.

0

Utilice la función mytheme_preprocess_page para D7.

-1

Extendiendo el módulo mencionado por wiifm, por D7, no hay ahora también: https://drupal.org/project/html_title_trash

Permite más etiquetas y también trabaja para los títulos de bloque, en lugar de títulos solo nodo.

+0

Esto no proporciona una respuesta a la pregunta. Para criticar o solicitar aclaraciones de un autor, deje un comentario debajo de su publicación. – PutzKipa

+0

Lo siento, pero lo descarto. Esto SÍ proporciona y responde la pregunta. La pregunta es "Necesito los títulos de los nodos para poder mostrar el formato del texto. Por lo que yo entiendo, el campo de título de Drupal es simplemente texto, no permite HTML ni ningún otro formato de entrada. ¿Es cierto?" Y la respuesta es: sí, es cierto que el núcleo de Drupal no permite HTML en títulos de nodos, pero cuando usa el módulo anterior lo hace. – fris

+0

OP dice que está trabajando con Drupal 6 al final de su publicación. También hay una etiqueta "drupal-6" allí. Y el módulo html title trash se introdujo en Drupal 7. Creo que su publicación debería haber sido hecha como un comentario en la respuesta de wiifm. Porque es un buen complemento, pero no una respuesta directa. – PutzKipa

Cuestiones relacionadas