¿Cómo definir las metaetiquetas en las vistas? [cerrado]


8

¿Hay algún módulo o alguna configuración que pueda definir las metaetiquetas para la visualización de la página de vistas en drupal 7 usando Views 3.0?

Respuestas:


7

El módulo rápido Meta tags le permite especificar Meta tags en función de la ruta para sus vistas. Si habilita metaetiquetas basadas en rutas, verá el enlace 'Editar metaetiquetas' en la página de vistas (importante, ¡no en la pantalla de edición de vistas!).


Bien, estaba usando la versión 1.9. Esta función para etiquetar una página basada en la URL solo está disponible en la versión 2.0 beta. Gracias.
Luiz Guilherme

Para mí era una pestaña titulada "Metatags basados ​​en rutas" en la página misma (frontend). También tenía que asegurarse de que render($tabs)estaba impreso en page.tpl.php.
leymannx

12

El módulo Metatag tiene integración de vistas desde la caja desde 7.x-1.0-beta2.

Instale el submódulo metatags_views y obtendrá opciones de metaetiquetas en la IU de vistas para cualquier visualización de la página de vistas (comentario de Paul Querol a continuación).


2
Sorprendido, esta respuesta no es obtener más amor ... Si está utilizando el módulo de metatags, simplemente instale el submódulo metatags_views y obtendrá las opciones de metatag en la interfaz de usuario de vistas para cualquier visualización de página de vistas.
Paul Querol

De acuerdo. Pero la respuesta anterior fue en 2011. No había submódulo metatags_views en ese momento. Si lo desea, puede agregar el texto sobre el submódulo metatags_views en mi respuesta.
milkovsky

1

Si no desea utilizar las "Metaetiquetas basadas en rutas" como se mencionó anteriormente, puede hacer que los campos metatags_quick predeterminados agregados al término en sí funcionen como se desea con el siguiente enfoque. Aquí hay un ejemplo de cómo lo hice con robots y la ayuda de drupal_add_html_head():

/**
 * Implements hook_preprocess_HOOK()
 */
function MYMODULE_preprocess_page(&$vars) {
  // if this is a term page and not being edited
  if (arg(1) == 'term' && is_numeric(arg(2)) && is_null(arg(3))) {
    // if this is a Views page
    $view = (array)views_get_page_view();
    if (!empty($view)) {
      // if metatags_quick robots are set
      $term = taxonomy_term_load(arg(2));
      if (isset($term->meta_robots) && !empty($term->meta_robots[LANGUAGE_NONE][0]['metatags_quick']))

      $element = array(
        '#tag' => 'meta',
        '#attributes' => array(
          'name' => $term->meta_robots[LANGUAGE_NONE][0]['meta_name'],
          'content' => $term->meta_robots[LANGUAGE_NONE][0]['metatags_quick']
        ),
      );
      drupal_add_html_head($element, 'MYMODULE');
    }
  }
}

-1

La solución más directa es agregar la vista como un bloque dentro de un nodo, y luego usar un módulo como Metatag para colocar metatags en el nodo.

Evita el problema de integración de vistas. También proporciona el beneficio de migas de pan, menús, pathauto, etc., todo más fácil de configurar cuando la página es un nodo en lugar de una vista.


Voto negativo ya que no veo que esto sea factible en muchos casos, como un sitio que tiene algunos argumentos contextuales en una vista, y el meta necesita diferir para diferentes argumentos de vista.
Phizes
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.