J'ai utilisé l'assistant de présentation des vues pour générer un modèle et il m'a donné le morceau de code suivant à intégrer dans template.php. Je préférerais simplement conserver le modèle, donc toutes mes fonctions s'appelleront le même, et plutôt que d'écrire de nombreuses versions de la même fonction, je me demande s'il existe un moyen de chaîner les noms de fonctions ensemble ? Quelque chose comme:Pouvez-vous appeler un modèle de vues Drupal pour plusieurs vues?
function phptemplate_views_view_list_recent_articles($view, $nodes, $type),
phptemplate_views_view_list_popular_articles($view, $nodes, $type) {
$fields = _views_get_fields();
$taken = array();
// Set up the fields in nicely named chunks.
foreach ($view->field as $id => $field) {
$field_name = $field['field'];
if (isset($taken[$field_name])) {
$field_name = $field['queryname'];
}
$taken[$field_name] = true;
$field_names[$id] = $field_name;
}
// Set up some variables that won't change.
$base_vars = array(
'view' => $view,
'view_type' => $type,
);
foreach ($nodes as $i => $node) {
$vars = $base_vars;
$vars['node'] = $node;
$vars['count'] = $i;
$vars['stripe'] = $i % 2 ? 'even' : 'odd';
foreach ($view->field as $id => $field) {
$name = $field_names[$id];
$vars[$name] = views_theme_field('views_handle_field', $field['queryname'], $fields, $field, $node, $view);
if (isset($field['label'])) {
$vars[$name . '_label'] = $field['label'];
}
}
$items[] = _phptemplate_callback('views-list-first-with-abstract', $vars);
}
if ($items) {
return theme('item_list', $items);
}
}
Merci,
Steve
Pourquoi votre question purement Drupal/PHP est-elle marquée JavaScript? –
Merci Eugene. Corrigée. –