Drupal7下的template.php写分页

  if($variables['type']=='group'){
      $gid = $variables['id'];
      $page = isset($_GET['page'])?intval($_GET['page']):0;
      $limit = 2;
      $offset = $page*$limit;
      $query = db_select('og_membership', 'm')->condition('entity_type','node')->condition('gid',$gid);
      $total = $query->countQuery()->execute()->fetchField();
      $page = pager_default_initialize($total, $limit);
      $result = db_query_range("SELECT m.{etid},n.{title} FROM {og_membership} AS m
              LEFT JOIN {node} AS n ON m.{etid}=n.{nid}
              WHERE m.{entity_type}='node' AND m.{gid}=$gid", $offset, $limit);
      $output = '';
      foreach ($result as $row) {
          //$output .= $row->etid."<br/>";
          $output .= '<a href="/node/'.$row->etid.'">'.$row->title."</a><br/>";
      }
      $output .= theme('pager');
      $variables['group_list'] = $output;
  }

 

需求如下:
其实就是OG模块的关系,一个content type为group组,另一个为group content组内容,组与组内容是一对多的关系。我想在某个组下列出该组所有的组内容列表并分页,于是,上面的代码便应运而生了。

你可能感兴趣的:(template)