it-swarm.com.de

_preprocess_views_view__ Geben Sie den Ansichtsnamen an

Ich habe eine Ansicht mit dem Namen "taxonomy_term_custom". Der folgende Vorverarbeitungscode funktioniert, um bestimmte Aufgaben für diese Ansicht auszuführen, aber ich möchte den Hook folgendermaßen überschreiben:

function mywebsite_glue_preprocess_views_view__taxonomy_term_custom(&$vars) {
}

Ist das möglich?

function mywebsite_glue_preprocess_views_view(&$vars) {
  if($vars['view']->name == 'taxonomy_term_custom'){
    dpm($vars);
    // do stuff
  }
}
6
Jos Vaessen

In Drupal 7) wird diese Vorverarbeitungsfunktion nicht automatisch übernommen, wie in Drupal 6. Es wurde eine Problemumgehung veröffentlicht hier wenn Sie das gleiche Verhalten wie Drupal 6. Für das Problem.

5
Pontus Nilsson

Rufen Sie einfach den Vorprozess für jede Ansicht auf.

function mywebsite_glue_preprocess_views_view(&$vars) {
  $function_name = __FUNCTION__ . '__' . $vars['view']->name;
  if (function_exists($function_name)) {
    $function_name($vars);
  }
}

function mywebsite_glue_preprocess_views_view__taxonomy_term_custom(&$vars) {
  dpm($vars);
  // do stuff
}
5
mrded

Sicher, das hängt davon ab, welche Version von Drupal Sie verwenden. Achten Sie jedoch auf dieses Problem . Es heißt, dass Sie nur dann eine Vorverarbeitungsfunktion für Ansichten haben können, wenn Sie dies tun habe eine entsprechende tpl-Datei.

0
Badri