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.