Comment définir des balises Meta sur les vues? [fermé]

8

Existe-t-il un module ou une configuration que je peux définir les balises META pour l'affichage de la page des vues dans Drupal 7 en utilisant Views 3.0?

Luiz Guilherme
la source

Réponses:

7

Le module rapide des balises Meta vous permet de spécifier des balises Meta en fonction du chemin d'accès à vos vues. Si vous activez les balises META basées sur le chemin, vous verrez le lien "Modifier les balises META" sur la page des vues (important - pas dans l'écran d'édition des vues!).


la source
Bien, j'utilisais la version 1.9. Cette fonctionnalité de balisage d'une page basée sur l'URL n'est disponible que sur la version bêta 2.0. Merci.
Luiz Guilherme
Pour moi, c'était un onglet intitulé "Path-Based Metatags" sur la page elle-même (frontend). Il fallait également s'assurer qu'il render($tabs)était imprimé page.tpl.php.
leymannx
12

Le module Metatag a l'intégration des vues depuis la boîte depuis 7.x-1.0-beta2.

Installez le sous-module metatags_views et vous obtiendrez des options de métabalises dans l'interface utilisateur des vues pour tout affichage de la page des vues (commentaire de Paul Querol ci-dessous).

milkovsky
la source
2
Surpris, cette réponse n'obtient pas plus d'amour ... Si vous utilisez le module metatags, installez simplement le sous-module metatags_views et vous obtiendrez des options de metatag dans l'interface utilisateur des vues pour tout affichage de page de vues.
Paul Querol
Se mettre d'accord. Mais la réponse ci-dessus était en 2011. Il n'y avait pas de sous-module metatags_views à ce moment-là. Vous pouvez ajouter le texte sur le sous-module metatags_views dans ma réponse si vous le souhaitez.
milkovsky
1

Si vous ne souhaitez pas utiliser les "metatags basés sur le chemin" comme mentionné précédemment, vous pouvez faire en sorte que les champs metatags_quick par défaut ajoutés au terme lui-même fonctionnent comme vous le souhaitez avec l'approche suivante. Voici un exemple de la façon dont je l'ai fait avec des robots et l'aide 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');
    }
  }
}
leymannx
la source
-1

La solution la plus simple consiste à ajouter la vue en tant que bloc à l'intérieur d'un nœud, puis à utiliser un module comme Metatag pour placer des métatags sur le nœud.

Évite le problème d'intégration des vues. Fournit également des avantages de chapelure, de menus, de pathauto, etc. tous plus faciles à configurer lorsque la page est un nœud plutôt qu'une vue.

DougF
la source
Downvote car je ne vois pas cela comme faisable dans de nombreux cas, comme un site qui a quelques arguments contextuels sur une vue, et la méta doit différer pour différents arguments de vue.
Phizes