У меня есть этот шаблон, который я купил, и я пытаюсь настроить.
Я добавил новую категорию таксономии, названную местоположением, и я пытаюсь заменить категории по умолчанию, загружаемые в теме моими новыми категориями таксономии.
вот текущий код и где он загружает категории:
$cats_array = get_categories('hide_empty=0');
$pages_array = get_pages('hide_empty=0');
$site_pages = array();
$site_cats = array();
foreach ($pages_array as $pagg) {
$site_pages[$pagg->ID] = htmlspecialchars($pagg->post_title);
$pages_ids[] = $pagg->ID;
}
foreach ($cats_array as $categs) {
$site_cats[$categs->cat_ID] = $categs->cat_name;
$cats_ids[] = $categs->cat_ID;
}
array( "name" => "Featured Category",
"id" => $shortname."_feat_cat",
"type" => "select",
"options" => $site_cats,
"desc" => "description"),
Идеально, это изменение должно работать:
$cats_array = get_categories('hide_empty=0&taxonomy=location');
но это не делает! Я, очевидно, пропускаю что-то и не знаю, как зафиксировать это. Любая справка ценится.
Вот часть таксономии регистра:
// Register custom taxonomy
register_taxonomy( "location",
array( "woo_estate" ),
array ( "hierarchical" => true,
"label" => "Locations",
'labels' => array( 'name' => __('Locations'),
'singular_name' => __('Location'),
'search_items' => __('Search Real Estate'),
'popular_items' => __('Popular Locations'),
'all_items' => __('All Locations'),
'parent_item' => __('Parent Location'),
'parent_item_colon' => __('Parent Location:'),
'edit_item' => __('Edit Location'),
'update_item' => __('Update Location'),
'add_new_item' => __('Add New Location'),
'new_item_name' => __('New Location Name') ),
'public' => true,
'show_ui' => true,
"rewrite" => true )
);
Коды страниц могут также быть найдены в:
http://codepad.viper-7.com/4Wkgg3
http://codepad.viper-7.com/n2hZRI
Я не смог устранить проблему в конце, но вместо того, чтобы использовать файл опций темы для динамичного выбора категории, которую я хочу, я использовал код переопределения к непосредственно (статически) выбору категория, которую я хотел, и это работало.
Я не смог устранить проблему в конце, но вместо того, чтобы использовать файл опций темы для динамичного выбора категории, которую я хочу, я использовал код переопределения к непосредственно (статически) выбору категория, которую я хотел
Использование:
$terms = get_terms( 'location', 'hide_empty=0' );
if(is_wp_error($terms)){
// error occurred
} else if (empty($terms )){
// no terms were found
} else {
// process terms
foreach($terms as $term){
// process this individual $term
}
}
Я советовал бы, чтобы Вы использовали универсальную таксономию и назвали функции везде, и избежали категории особого случая и отметили функции, если это возможно.
Из Вашего комментария:
Это должно быть тем, что Вы ищете:
object(WP_Error)#337 (2) { ["errors"]=> array(1) { ["invalid_taxonomy"]=> array(1) { [0]=> string(16) "Invalid taxonomy" } } ["error_data"]=> array(0) { } }
Сообщение об ошибке показывает проблему: "Недопустимая таксономия"
Вы не передаете допустимую таксономию get_categories()
.
wp_dropdown_categories()
по тому же возврату страницы?
– Chip Bennett
29.08.2012, 17:48