WordPress : Comment charger l’ID de catégorie au lieu du nom de catégorie ?
J’utilise le script d’options de thème propanel pour les options de thème wordpress.
dans le code ci-dessous, faites écho au nom de la catégorie, mais je veux l’ ID de la catégorie … aidez-moi s’il vous plaît:
// Grabs Categories from WordPress
$tt_categories = array();
$tt_categories_obj = get_categories('hide_empty=0');
foreach ($tt_categories_obj as $tt_cat) {
$tt_categories[$tt_cat->cat_ID] = $tt_cat->cat_name;}
$categories_tmp = array_unshift($tt_categories, "Select a category:");
//Then you would call it like so in your theme options
//shows a select box in theme options page
$options[] = array( "name" => __('Wordpress Category','framework_localize'),
"desc" => __('Select a category','framework_localize'),
"id" => "wp_category",
"std" => "1",
"type" => "select",
"options" => $tt_categories);
Solution n°1 trouvée
répondu :
CODE COMPLET :
//in theme-setting.php
//Access the WordPress Categories via an Array
$tt_categories = array();
$tt_categories_obj = get_categories('hide_empty=0');
foreach ($tt_categories_obj as $tt_cat) {
$tt_categories[$tt_cat->cat_ID] = $tt_cat->cat_name;}
$categories_tmp = array_unshift($tt_categories, "select cat:");
//
$options[] = array( "name" => __('Tabs #1 Category','framework_localize'),
"desc" => __('select cat.','framework_localize'),
"id" => $shortname."_tabs1_category",
"std" => "1",
"type" => "select",
"options" => $tt_categories);
dans le thème :
global $wpdb;
$wpnews_tabs1_category = $wpdb->get_var("SELECT term_id FROM $wpdb->terms WHERE name='$wpnews_tabs1_category'");
Solution n°2 trouvée
$tt_cat->cat_ID
contient l’ID de catégorie.
Si vous souhaitez que la liste déroulante affiche les ID plutôt que les noms, modifiez
$tt_categories[$tt_cat->cat_ID] = $tt_cat->cat_name;
à
$tt_categories[$tt_cat->cat_ID] = $tt_cat->cat_ID;
Notez que dans les deux cas, l’ID de catégorie sera enregistré comme valeur d’option.
0 commentaire