php 查找由父项(Drupal 7)限制的分类学术语子(按名称)。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 查找由父项(Drupal 7)限制的分类学术语子(按名称)。相关的知识,希望对你有一定的参考价值。

<?php
/**
 * Find taxonomy term (by name) limited by parent term.
 * 
 * In many cases you may need to find children in exact term (parent). 
 * Here we do this in efficent way with precise query (not like taxonomy_get_tree()
 * where all the terms loading. 
 * 
 * @param $name
 * @param $parent
 * @param $vid
 *
 * @return array
 * Terms array or empty array if nothing found.
 */
function taxonomy_find_term_by_parent($name, $parent, $vid) {
  $query = db_select('taxonomy_term_data', 't');
  $query->join('taxonomy_term_hierarchy', 'h', 'h.tid = t.tid');
  $result = $query
    ->addTag('translatable')
    ->addTag('taxonomy_term_access')
    ->fields('t')
    ->fields('h', array('parent'))
    ->condition('t.vid', $vid)
    ->condition('t.name', $name)
    ->condition('h.parent', $parent)
    ->orderBy('t.weight')
    ->orderBy('t.name')
    ->execute();
  
  $terms = [];
  
  foreach ($result as $term) {
    $terms[$term->tid] = $term;
  }
  
  return $terms;
}

以上是关于php 查找由父项(Drupal 7)限制的分类学术语子(按名称)。的主要内容,如果未能解决你的问题,请参考以下文章

如何在drupal 7中根据分类术语搜索用户列表?

Drupal Views 根据分类页面 URL 阻止内容

一种在drupal中使用参数限制分类暴露过滤器选项的方法

Drupal 7 视图暴露的过滤器

Drupal 在数组中搜索

增加 PHP 内存限制(Apache、Drupal6)