鉴于类别名称,我需要获得wordpress帖子所属的所有类别的数组,包括所有父类别。
wordpress功能不可用。
以下代码超时(最长执行时间)。
$result = mysql_query("SELECT tax.term_taxonomy_id as taxid, tax.term_id, tax.parent,
term.name
FROM wp_term_taxonomy AS tax
JOIN wp_terms AS term ON (term.term_id = tax.term_id)
WHERE term.name = '".mysql_real_escape_string($cat)."'
AND tax.taxonomy = 'category'
LIMIT 1");
if($result)
{
$category = mysql_fetch_assoc($result);
//see if there are more than one parent:
$categories = array();
$categories[] = $category['term_id']; //lowest
if($category['parent'] > 0){ //there are parent categories
$p = $category['parent'];
//get all the parent categories of this category
while($p >= 0){
$subres = mysql_query("SELECT term_id, parent
FROM wp_term_taxonomy
WHERE term_id = '".intval($p)."'
AND tax.taxonomy = 'category'
LIMIT 1");
if($subres){
$c = mysql_fetch_assoc($subres);
$categories[] = $c['term_id'];
if($c['parent'] >= 0)
$p = $c['parent'];
else
break;
}
}//while
}
var_dump($categories);
die();
} //result
答案 0 :(得分:0)
我想我解决了它。
$ subres失败,但循环继续。
所以在if条件检查成功的$ subres之后,我补充说:
else
break;