drupal check term

Отправлено planktun от пн, 02/06/2017 - 08:46
Функция добавляет термин с указаным именем в словарь и возвращает его tid, в случае , если термин уже существует , только возвращает его tid.

function check_term($name,$vid=1,$date_desc='',$parent=0)
{
    if($parent!=0)
    {
        $tid1 = db_query("SELECT t.tid FROM {taxonomy_term_data} AS t LEFT  JOIN {taxonomy_term_hierarchy} AS h ON h.tid=t.tid WHERE t.name = '{$name}' AND t.vid={$vid} AND h.parent={$parent}")->fetchField();
    }
    else
    {
        $tid1 = db_query("SELECT tid FROM {taxonomy_term_data} t WHERE t.name = '{$name}' AND t.vid={$vid} ")->fetchField();
    }
    
                        if(empty($tid1))
                        {
                            $term = new stdClass();
                            $term->name =$name;
                            $term->vid = $vid;
                            $term->format='full_html';
                            $term->description=$date_desc;
                            if($parent!=0)
                            {
                                $term->parent = $parent;
                            }
                            taxonomy_term_save($term);                
                            $tid1 = $term->tid; 
                        
                        }
    return $tid1;                    
}
 

Теги