Usar tokens en los títulos de bloque

10

Conectar tokens al título de un bloque solo muestra el texto de entrada en lugar de lo que se supone que debe emitir el token.

¿Hay alguna manera de habilitar / usar tokens en los títulos de bloque, o tal vez un método alternativo para obtener los resultados que quiero?

Intenté usar el módulo Token Filter, pero no cambia la funcionalidad.

Estoy tratando de insertar el token [user: profile-realname] en un título de bloque (específicamente el título de bloque del Menú del usuario). El token está en mi lista de tokens disponibles para usar a través de HELP en el back-end.

Mechaflash
fuente
1
versión drupal? ¿Dónde estás tratando de establecer el título, dentro de un módulo o desde la página de administración de bloque? ¿A qué fichas estás intentando acceder?
Jimajamma
versión agregada al título
Mechaflash
Creado una edición
Mechaflash
un blog detallado: goo.gl/77zEds
Suresh Kamrushi

Respuestas:

7

AFAIK, esto no se puede lograr usando el campo de título del bloque, sin embargo, usando el módulo Token Filter, simplemente puede soltar el token en el área del cuerpo del bloque y envolverlo en una etiqueta H2 y aparecerá como si fuera el título del bloque . (Solo configure el título del bloque en <none>)


fuente
1
¿Esto también se aplica al campo Título de nodo? Quiero agregar tokens al título de Nodo del tipo de contenido básico de la página, probando el mismo mecanismo que Mechaflash. ¿Tendré que usar también el filtro de token, o puedo poner tokens directamente en el campo de título del nodo (usando la interfaz web, sin codificación php)?
David Csonka
No, no lo hace. Si desea ponerlo en el campo del título, deberá seguir la respuesta de Lance a la pregunta.
5

Pruebe la función token_replace () en el preprocesador de bloque. Ejemplo:

$node = menu_get_object();  // Get the current node
if ($node) {
  $vars['elements']['#block']->subject = token_replace($vars['elements']['#block']->subject, array('node' => $node));
}

Quizás también tenga que cargar al usuario para tener los tokens de usuario disponibles.

lanza
fuente
Probablemente no voy a intentar esto, ya que la respuesta de Nicoz es la forma más fácil de hacerlo. Prefiero no meterme con los archivos tpl si no tengo que hacerlo.
Mechaflash
2

Una vez que se implemente el reemplazo del token de soporte para los títulos de bloque , podrá usar el token [current-user: profile-realname] .

Dave Reid
fuente
1
Entonces, ¿cómo puedo determinar qué tokens van a validar? ¿O estabas diciendo en ese hilo que no hay una manera de validar tokens no centrales?
chrisjlee
1

¡Establezca Título como vacío y simplemente agregue un Área de texto global en el Encabezado de vistas! Agregue aquí etiquetas h o cualquier html que desee. Mucho más fácil y no requiere codificación ...

giorgio79
fuente
-1

lo usé en el título de la página

agregar RELACIONES Contenido: Autor del contenido

agregar campo (autor) Usuario: campo Nombre

luego agregué [nombre] para ver el título de la página

Creo que también funciona con bloques.

Islam Bendali Braham
fuente
¡Bienvenido a Drupal Answers! La pregunta es acerca de un bloque, no de una vista. Si el bloque no es una vista, lo que se informa aquí no funciona. Además, la pregunta es cómo usar el token para el nombre real del usuario, que no es el nombre de usuario del que habla esta respuesta.
kiamlaluno