← WordPress

Função que retorna ID da categoria actual?

Lida 3043 vezes

Offline

betanalista 
Membro
Mensagens 2564 Gostos 0
Feedback +18

Troféus totais: 26
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3 Level 2 Level 1

viva, alguém sabe a função do wp que retorna, como int, o ID da categoria onde estamos

imaginemos que a categoria blabla tem o id 5

eu queria saber qual a função que quando eu estiver na categoria blabla me diz que esta categoria tem id 5

por outras palavras, a função que retorna do id na categoria em que me encontro

já tentei muita coisa e nada  :-k
Offline

betanalista 
Membro
Mensagens 2564 Gostos 0
Feedback +18

Troféus totais: 26
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3 Level 2 Level 1

por exemplo para o id do post basta:

$post->ID;
Offline

kaydara 
Membro
Mensagens 616 Gostos 1
Feedback +1

Troféus totais: 21
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 4 Level 3 Level 2 Level 1 500 Posts 100 Posts

não sei como fiz isso, mas com uns print_r ás vars do wp descobri onde ela estava como inteiro e posso confirmar que existe
Offline

kaydara 
Membro
Mensagens 616 Gostos 1
Feedback +1

Troféus totais: 21
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 4 Level 3 Level 2 Level 1 500 Posts 100 Posts

testa

Código: (php) [Seleccione]
$ancestors = get_ancestors(get_cat_ID(single_cat_title("",false)),'category');

if ( count($ancestors) == 0 ) {
        $my_cat = get_cat_ID(single_cat_title("",false));
} else {
$my_cat = $ancestors[0] ;
}
Offline

betanalista 
Membro
Mensagens 2564 Gostos 0
Feedback +18

Troféus totais: 26
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3 Level 2 Level 1

obrigado Kaydara, resultou

pensei é que existia algo mais directo como para o id do post
Offline

Pedro Lopes 
Beta tester
Mensagens 3568 Gostos 18
Feedback +6

Troféus totais: 32
Trófeus: (Ver todos)
Level 6 Windows User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3

Não é isto que queres?

Código: (php) [Seleccione]
<?php
$category 
get_the_category(); 
echo 
$category[0]->cat_ID;
?>
Offline

betanalista 
Membro
Mensagens 2564 Gostos 0
Feedback +18

Troféus totais: 26
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3 Level 2 Level 1

não pedro, isso já tinha tentado e não funcionava sempre

pois o ID's dos posts na categoria são inseridas no array "devolvido" pela função get_the_category(); por ordem decrescente

logo quando tiveres um post em mais do que uma categoria

imagina tens um post na categoria 3,4,5

ao ires a categoria 3 esse código vai devolver o 5 (pois no array esta 5,4,3)


não sei se me expliquei bem
Offline

Pedro Lopes 
Beta tester
Mensagens 3568 Gostos 18
Feedback +6

Troféus totais: 32
Trófeus: (Ver todos)
Level 6 Windows User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3

não pedro, isso já tinha tentado e não funcionava sempre

pois o ID's dos posts na categoria são inseridas no array "devolvido" pela função get_the_category(); por ordem decrescente

logo quando tiveres um post em mais do que uma categoria

imagina tens um post na categoria 3,4,5

ao ires a categoria 3 esse código vai devolver o 5 (pois no array esta 5,4,3)


não sei se me expliquei bem

Ah, pois, tens razão.