* @param string $term_id 子を取得する期間の ID。
* @param 文字列 $taxonomy 分類名。
* @return array|WP_Error 用語 ID のリスト。 「$taxonomy」が存在しない場合、WP_Error が返されます。
*/
function get_term_children( $term_id, $taxonomy ) {
if ( ! taxonomy_exists($taxonomy) )
return new WP_Error('invalid_taxonomy', __('Inval ID 分類'));
$term_id = intval( $term_id );
$terms = _get_term_hierarchy($taxonomy);
if ( ! isset($terms[$term_id]) )
return array();
$children = $terms[$term_id];
foreach ( (array) $terms[$term_id] as $child ) {
if ( $term_id == $child ) {// 自己会は自己の子项ですか?吧?请教达人
続けます。
}
if ( isset($terms[$child]) )
$children = array_merge($children, get_term_children ($child, $taxonomy));
}
return $children;
}
必要はありません。データがどのように構成されているかを確認してください。ただし、出力がないため、
がこの番号に該当するわけではありません。これは必須です。
if ( isset($terms[ $child]) )
$children = array_merge($children, get_term_children($child, $taxonomy));
get_term_children 递归调用
当 $term_id 等格 $child 時就死循環了
所以
if ( $term_id == $child ) {
Continue;
}
は必ず必要な
および从代网织上看、これも在确实出现了死循環后才上的
使用得代网上去比较肿
です。
听君一席话、胜读十年书!
佩服