Pobierz aktualny identyfikator kategorii aktywnej strony
Szukam identyfikatora kategorii określonej strony w WordPress, który wymienia wszystkie posty za pomocą tej konkretnej kategorii. Próbowałem poniżej, ale nie działa. Jestem w stanie uzyskać nazwę kategorii używając single_term_title
.
$category = single_term_title("", false);
$catid = get_cat_ID( $category );
$category
wyświetla na przykład "rozrywkę". Ale potrzebuję też identyfikatora "Rozrywka". Jak mam to zrobić?
9 answers
Możesz spróbować użyć get_the_category()
:
$categories = get_the_category();
$category_id = $categories[0]->cat_ID;
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-11-24 13:47:14
Jeśli jest to strona kategorii, możesz uzyskać id bieżącej kategorii przez:
$category = get_category( get_query_var( 'cat' ) );
$cat_id = $category->cat_ID;
Jeśli chcesz uzyskać identyfikator kategorii na dowolnej stronie, spróbuj użyć :
$category_id = get_cat_ID('Category Name');
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-02-04 15:25:26
Najstarszy, ale najszybszy sposób, jaki możesz użyć to:
$cat_id = get_query_var('cat');
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-06-18 08:05:05
Używam funkcji get_queried_object, aby uzyskać bieżącą kategorię w kategorii.strona z szablonem php.
$current_category = get_queried_object();
Jordan Eldredge ma rację, get_the_category nie jest tutaj odpowiednie.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-01-10 11:00:28
Myślę, że niektóre z powyższych mogą działać, ale korzystanie z funkcji get_the_category wydaje się trudne i może dać nieoczekiwane rezultaty.
Myślę, że najbardziej bezpośrednim i prostym sposobem uzyskania dostępu do identyfikatora kota na stronie kategorii jest:
$wp_query->query_vars['cat']
Cheers
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-02-04 15:25:35
Użyłem tego na stronie szablonu kategorii:
$cat_obj = $wp_query->get_queried_object();
$thiscat_id = $cat_obj->term_id;
$thiscat = get_category($thiscat_id);
$parentcat = get_category($thiscat->parent);
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-08-09 17:02:49
Alternatywa-
$catID = the_category_ID($echo=false);
EDIT: powyższa funkcja jest przestarzała Proszę użyć get_the_category()
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-07-19 06:38:05
Znalazłem to pytanie, szukając dokładnie tego, o co pytałeś. Niestety zaakceptowałeś błędną odpowiedź. Ze względu na innych ludzi, którzy próbują osiągnąć to, co my staraliśmy się osiągnąć, pomyślałem, że opublikuję poprawną odpowiedź.
$cur_cat = get_cat_ID( single_cat_title("",false) );
Jak powiedziałeś single_term_title("", false);
poprawnie zwracał tytuł kategorii, nie jestem pewien, dlaczego miałbyś mieć problemy z kodem; ale powyższy kod działa dla mnie bezbłędnie.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-05-21 14:16:47
$cats = wp_get_post_terms( $post->ID, 'product_cat' );
foreach($cats as $cat){
/*check for category having parent or not except category id=1 which is wordpress default category (Uncategorized)*/
if($cat->parent != '0' && $cat->term_id != 1){
echo '<h2 class="link"><a href="'.get_category_link($cat->term_id ).'">'.$cat->name.'</a></h2>';
break;
}
}
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-02-10 04:43:21