Cambiar el título de las páginas en Drupal 7 por ruta


8

Necesito cambiar el título de las páginas en Drupal 7 por ruta. NO a todo tipo de contenido. Necesito cambiar el encabezado del título a una página específica generada con vistas.

Por ejemplo, tengo un sitio http://www.mysite.com

<title>My favorite website </title>

Necesito las para páginas:

http://www.mysite.com/test

<title> My test today </title>

http://www.mysite.com/examples

<title> My examples for share </title>

Gracias.


No estoy seguro de lo que quiere decir con "cambiar la cabecera del título a un nodo específico". ¿Podría aclarar por favor? Dos módulos comunes que ayudan en esta área son drupal.org/project/pathauto y drupal.org/project/auto_nodetitle. Puede consultarlos y, si no funcionan, explique cómo su caso de uso es diferente a los de estos módulos comunes. encargarse de.
Patrick Kenny

Me refiero al "título" que aparece en las metaetiquetas. El título que se muestra en las pestañas del navegador. Gracias.
cabita

Respuestas:


11

Así es como lo hice en Drupal 7.

En template.php:

function YOUR_THEME_preprocess_page(&$vars){
  $path = $_GET['q'];

  if (strpos($path,'YOUR_PATH_STRING') !== false) {
    drupal_set_title('YOUR_TITLE');
  }
}

Por ejemplo, si su ruta era yoursite.com/boogabooga, entonces establecería 'YOUR_PATH_STRING''boogabooga' y 'YOUR_TITLE'lo que quiera que sea el título de la página.


esto no funciona para hook_preprocess_user_profile
Francisco Corrales Morales

¿Cuál podría ser la cadena a escribir para apuntar a la página <front>?
Marte el

14

Parece que su conjunto limitado de páginas puede implementar THEME_preprocess_html()y examinar la ruta de la URL y anularla $vars['head_title']. Vea esta publicación de blog como ejemplo: Cómo configurar el título de la página personalizada en Drupal 7

Si tiene algunos patrones para el título de la cabeza, intente Título de la página


Vi la publicación y tengo una pregunta, si quiero asignar un "título principal" a las rutas específicas. No todos los caminos tendrán el mismo título. Por ejemplo, necesito mysite.com/test, el <title> es "Mis pruebas" y tengo otra página mysite.com/examples . Necesito esos <title> "Ejemplos para compartir". ¿Es útil este código para este propósito? He actualizado mi publicación.
cabita

La publicación de @cabita Tenken cubre su caso de uso. Además de lo que ya mencionó, también puede usar el módulo Meta tags . Las 3 opciones le permiten establecer el título de encabezado para las páginas de nodo específicas que desee sin tocar el resto.
Madis

Intenté con metaetiquetas y permití cambiar el encabezado del título para páginas específicas, pero no para páginas específicas generadas por las vistas. Actualizaré mi pregunta nuevamente. Lo siento.
cabita

@cabita ¿También probaste el título de la página ? Al menos afirma tener vistas de integración. Si esto tampoco funciona, puede seguir adelante y hacerlo en el código (es fácil restringir los cambios a páginas específicas solo usando $ _GET ['q'] o arg () para verificar la ruta).
Madis

Lo hice en el código. Tiene razón, es fácil restringir los cambios a páginas específicas solo usando $ _GET ['q'] o arg ().
cabita
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.