2010-11-21 18 views
0

J'ai une vue appelée "video_by_category" avec un chemin de "video/category /%" le% recherche un terme de taxonomie. Un terme peut être "voiture". Je veux créer un modèle de page personnalisé pour cette vue similaire à page.tpl.php. J'ai fait quelques suggestions de thème comme page-video-catégorie, page-video_by_category.tpl.php, page-views-view-video-category.tpl.php, mais rien ne fonctionne. Comment cela peut-il être fait?Fichier modèle Drupal Page pour une vue

Dans mon template.php j'ai ceci:

function theme428_preprocess_page(&$variables) { 

    if ($variables['node']->type != "") { 
    if (arg(0)=='node' && arg(2)!='edit') { // not for node edit forms 
     if(arg(1)!=''){ 
      $arg1='-'.arg(1); 
     } 


     //$variables['template_files'][] = "page-node-" . $variables['node']->type.$arg1; 
     $variables['template_files'][] = "page-node-" . $variables['node']->type; 
    } 


    } 

    //print_r($variables['template_files']); 
     $variables['scripts'] = drupal_get_js(); 


    return $variables; 

} 

grâce

Répondre

0

Vues 1 l'habitude d'avoir un créateur automatique pour cela, mais 2 ne ... Voir documentation

1

Votre meilleur pari est d'utiliser les résultats de page_manager_get_current_page() dans votre prétraitement pour déterminer si vous voyez est actif. Vous pouvez ensuite utiliser arg() pour obtenir le terme (il peut également être dans les informations de gestionnaire). Vous pouvez alors simplement ajouter une nouvelle classe de corps, ou vous pouvez définir votre propre suggestion de modèle (http://drupal.org/node/223440), ce que vous faites déjà pour autre chose.

Personnellement, j'essaie d'avoir un modèle de page unique pour l'ensemble du site, puis de créer des mises en page personnalisées avec des pages de panneaux et des modèles de présentation de panneau personnalisés. Je trouve que l'utilisation de vues comme des pages plus de problèmes que ce qu'ils valent.