Drupal hoe render je afzonderlijke fieldgroups van een content type (en een display suite trick)

Posted by: 
Dominique De Cooman

Een cck fieldgroup kan gerenderd worden. We hadden enkele quicktabs die we wilden opvullen met onze field groups. Daarom hebben we voor elke field group een block gebouwd om de quicktabs in te plaatsen. Hier is een voorbeeld van een block waar we een enkele field group hebben benoemd en gerenderd hebben.

Allereerst benoem je alle informatie van de fieldgroups voor een bepaald content type en dan geef je de fieldgroup_view_group functie de correcte fieldgroup defenitie en uw node.

<?php
/**
 * Implementation of hook_block()
 */ 
function glue_block($op 'list'$delta 0$edit = array()) {
  if (
$op == 'list') {
    
$blocks[0] = array(    
      
'info' => t('Company Info'),
    );
    
    return 
$blocks;
  }
  else if (
$op == 'view') {      
    switch(
$delta) {
      case 
0:            
        
$node menu_get_object();
        if (
$node->nid) {
          
$groups fieldgroup_groups('company');
          
          
$node->build_mode 'groupcalls';
          
$content fieldgroup_view_group($groups['group_vennootschapinfo'], $node);
  
          
$block = array(
            
'subject' => t('Company Vennootschaps info'),
            
'content' => $content,
          );   
        }
        break;
    }
    return 
$block;
  }
?>

Als een extraatje, voor wanneer u de veld volgorde van de fieldgroup wilt controleren, maar u wilt niet aan de volgorde van uw teaser or full node komen.
Wanneer u display suite gebruikt kunt u een custom buildmode maken (bijvoorbeeld groupcalls) en in die buildmode kunt u de volgorde van uw fieldgroups bepalen.

Reactie toevoegen