1
私は自分でnavメニューを手動で作成するためにget_categories()関数を使用しています。私はカテゴリーと呼ばれるカスタム分類を持っています。私は、get_category_link()関数を使ってメニュー内のタグ用のリンクを返そうとしています。get_category_link()は何も返しません
foreach ($categories as $category) {
if ($category->parent == 0) { //Check to see it is a parent
$output .= '<li>';
$output .= '<a href="' . get_category_link($category->cat_ID) . '">' . $category->name . '</a>'; //display parent taxonomy category
}
}
ただし、常に<a href="">
が返されます。私は$category->cat_ID
をエコーアウトすることができますので、IDが関数に渡されていることがわかりますが、なぜ空白になっているのか分かりません。
何か不足していますか?これらはカスタムタクソノミであるからですか?彼らはナメクジを持っています。あなたが簡単にあなたが望んでいた場合で供給するために、すべてのタクソノミーの配列を取得するためのスクリプトの先頭に追加することができますが
$tax = 'cars';
$cats = get_terms($tax, '');
if ($cats) {
foreach($cats as $cat) {
$output .= "<li>";
$output .= '<a href="' . esc_attr(get_term_link($cat, $tax)) . '" title="' . sprintf(__("View all posts in %s"), $cat->name) . '" ' . '>' . $cat->name.'</a>';
$output .= "</li>";
}
}
:
get_termsとget_categoriesの違いは何ですか? get_categoriesの代わりにget_termsを使うようにスクリプト全体を書き直さなければならないような気がします。これが事実だろうか?ありがとうございました! – drpcken
あなたは私の質問に答えました。カスタム分類にはget_termsを使う必要があります。どうもありがとうございました! – drpcken