इस समारोह ने मेरे लिए काम किया:
/**
* Return the term id for a given term name.
*/
function _get_tid_from_term_name($term_name) {
$vocabulary = 'tags';
$arr_terms = taxonomy_get_term_by_name($term_name, $vocabulary);
if (!empty($arr_terms)) {
$arr_terms = array_values($arr_terms);
$tid = $arr_terms[0]->tid;
}
else {
$vobj = taxonomy_vocabulary_machine_name_load($vocabulary);
$term = new stdClass();
$term->name = $term_name;
$term->vid = $vobj->vid;
taxonomy_term_save($term);
$tid = $term->tid;
}
return $tid;
}
यदि आप दूसरी शब्दावली (टैग से अलग) का उपयोग कर रहे हैं, तो पंक्ति के ऊपर दिए गए कोड में संशोधन करें:
$vocabulary = 'tags';
$foo[0]->tid
कुछ भी नहीं करता है क्योंकि यह TID के साथ बंद एक सरणी देता है। तो TID प्राप्त करने के लिए मुझे TID की आवश्यकता है, याforeach()
एक आइटम पर केवल एक ही करने के लिए? अन्यथा:Undefined offset: 0