如何添加寻呼机或如何限制术语`taxonomy_get_tree($ vid)`?

时间:2014-08-08 15:19:53

标签: drupal tree taxonomy

使用taxonomy_get_tree($vid)时如何使用寻呼机或如何限制条款?

我有用于生成术语的代码:

<?php
$vid = 2;
$terms = taxonomy_get_tree($vid);   
$max_depth = (!isset($max_depth)) ? count($children[$vid]) : $max_depth;

foreach ($terms as $term) {
if ($term->depth == 0) 
{  
print "" .l("<b>Auto Insurance for &nbsp;</b> " .$term->name,'taxonomy/term/'.$term->tid, array('attributes' => array('title' => $term->name, ), 'html' => TRUE) ). "";

}}

?>

但是有数以千计的术语或子术语。然后一些页面加载超过20秒。我需要改善这种情况。

你能告诉我一下吗?你知道一些解决方案吗? Pager,Jquery,Ajax?

1 个答案:

答案 0 :(得分:0)

获取当前页面的条款

$query = db_select('taxonomy_term_data', 'td')
  ->extend('PagerDefault')
  ->condition('td.vid', $vid)
  ->fields('td', array('tid'))
  ->orderBy('td.weight')
  ->limit($limit);
$query->join('taxonomy_term_hierarchy', 'th', 'td.tid = %alias.tid AND %alias.parent = 0');
$tids = $query->execute()->fetchAllKeyed(0,0);
$terms = entity_load('taxonomy_term', $tids);

显示寻呼机

theme('pager');