コード例 #1
0
 /**
  * @return TaxonomyTerm[]|array
  */
 protected function getTerms()
 {
     if (empty($this->_terms)) {
         $vocabularies = TaxonomyVocabulary::getModelsArray();
         if (isset($vocabularies[$this->vocabularyName])) {
             $this->_terms = TaxonomyTermHierarchy::getTree($vocabularies[$this->vocabularyName]->id);
         }
     }
     return $this->_terms;
 }
コード例 #2
0
 /**
  * @return TaxonomyTerm[]
  */
 public function getTree()
 {
     return TaxonomyTermHierarchy::getTree($this->id);
 }
コード例 #3
0
 /**
  * @param $vid
  * @param int $excludeId
  * @return array
  */
 public static function treeListData($vid, $excludeId = 0)
 {
     $terms = TaxonomyTermHierarchy::getTree($vid);
     $data = [];
     foreach ($terms as $term) {
         if ($excludeId != $term->id) {
             $data[$term->id] = $term->name;
         }
         if (!empty($term->childs)) {
             foreach ($term->childs as $child) {
                 if ($excludeId != $child->id) {
                     $data[$child->id] = $child->name;
                 }
             }
         }
     }
     return $data;
 }