jak uzyskać identyfikator kota w szablonie. Bardzo ważne: nie mogę tego zrobić po imieniu, ponieważ mamy wiele kotów o tej samej nazwie. Tylko ślimak jest inny. Gdybym dostał ślimaka, też byłoby dobrze. Ale tak jak powiedziałem: nie mogę użyć tytułu kota .....
categories
Laura
źródło
źródło
Umm, nie mogę jeszcze komentować, ale odpowiedź VicePreza działa. Poniższe działa dobrze na stronie archiwum kategorii (chociaż prawdopodobnie chcesz zrobić coś innego niż tylko echo):
EDYCJA: Zdrap to, działało dla mnie, dopóki nie natknąłem się na kategorię, która nie miała postu, a następnie podniosła podkategorię zamiast głównej kategorii. Nie można polegać na get_the_category na stronie szablonu kategorii .
źródło
Chyba, że nie rozumiem pytania, myślę, że możesz również dodać identyfikator kategorii / ślimak do klasy ciała:
źródło
Odpowiedź @Jana Fabry'ego jest właściwie prawidłową odpowiedzią, oto dlaczego: Ponieważ Wordpress zezwala na wiele kategorii postów, używanie
$category = get_the_category()
i tworzenie zapytań$category[0]
nie będzie działać w każdym przypadku, ponieważ tak naprawdę pytasz o pierwszą kategorię pierwszego postu. Wyobraź sobie, że masz kategorie A, B i C. Jeśli masz tylko jeden post, ma on kategorie A i B i znajdujesz się na stronie kategorii B, zamiast tego możesz uzyskać informacje A.Dlatego lepiej jest używać
$category = $wp_query->get_queried_object()
, ponieważ w poprzednim przykładzie zawsze dostaniesz informacje B, gdy jesteś na stronie kategorii B.źródło
Możesz to
get_the_category()
zrobić.Przykład:
Możesz użyć:
aby wyświetlić tablicę zwracanych obiektów.
źródło
get_the_category()
nie będzie działać na stronie archiwum kategorii, aby uzyskać identyfikator kategorii, wynik byłby dowolny.get_the_category()
działa wewnątrz category.phpźródło
Większość powyższych przykładów działa, ale jeśli używasz wielu kategorii BRAK (w chwili pisania, WP wersja 3.6), inne metody działają, aby uzyskać wszystkie kategorie, które zostały przekazane do „cat” lub „nazwa_kategorii”.
Znalazłem tylko sposób, aby pobrać dane z:
Z jakiegoś powodu zwraca inną wartość, do
get_query_var( 'category_name' )
której zwraca tylko pierwszą kategorię.Podczas korzystania z wielu kategorii będziesz musiał użyć funkcji, np.
explode
Uzyskać tablicę informacji o kategorii, a następnie przejrzyj ją, aby pobrać wszystkie identyfikatory:Oczywiście, należy wziąć pod uwagę pewne uwagi podczas korzystania z operatorów AND (+) lub OR (,).
źródło