Obține ID-ul categoriei dintr-un ID de articol pentru un tip de postare personalizat
Vreau să obțin ID-ul categoriei dintr-un ID de articol pentru un tip de postare personalizat. Am ID-ul articolului, dar nu pot obține ID-ul categoriei sale.
Am folosit multe bucăți de cod dar nu funcționează, probabil din cauza tipului de postare personalizat.
$category = get_the_category( $post->ID );
Aveți vreo sugestie?
wp_get_post_categories
poate obține doar categoriile pentru POSTĂRI, nu și pentru postări personalizate. Încercați această alternativă:
$category = get_the_terms( $post->ID, 'custom-taxonomy-here' );
foreach ( $category as $cat){
echo $cat->name;
}
Consultați acest link

Tipul tău personalizat de postări suportă taxonomia standard de categorii? Dacă categoria folosită în tipul tău personalizat de postări este o taxonomie personalizată și nu taxonomia standard de categorii, ar trebui să folosești get_the_terms()
în loc de get_the_category()
.
$categories = get_the_terms($post->ID, "my-custom-taxonomy");

această soluție funcționează pentru mine:
global $wpdb;
// obține toate ID-urile de categorii în funcție de ID-ul postării
$result = $wpdb->get_results( " select term_taxonomy_id from " . $wpdb->prefix . "term_relationships where object_id = '" . $post_id . "' " );
$cats_ids_array = [];
foreach ( $result as $c ) {
$cats_ids_array[] = $c->term_taxonomy_id;
}
