Schimbare în in_category în WP 4.7?
După actualizarea la versiunea 4.7, această linie de cod nu mai returnează:
function foo(bar){
global $post;
if(in_category("my-test-category", $post)) return;
echo "Not in my-test-category";
}
S-a schimbat ceva cu filtrul in_category?
Notă: "my-test-category" este o subcategorie a "Uncategorized"
Am identificat problema. Am folosit un filtru pe list_terms_exclusions special pentru a elimina toți copiii categoriei "Necategorizat" de pe site-ul public.
add_filter('list_terms_exclusions', 'my_list_terms_exclusions',10,2);
Cu toate acestea, folosind in_category() încă returna potriviri pentru acele categorii, ceea ce era exact ceea ce doream. Aveam nevoie să ascund acele categorii din listările de categorii, dar totuși să știu când un articol anume avea una sau mai multe dintre acele categorii. Și astfel am putut folosi in_category() în acest scop.
Această tehnică a funcționat bine de cât timp îmi amintesc până la versiunea 4.7.
Totuși, începând cu versiunea 4.7 (și posibil înainte), funcția in_category() este filtrată de list_terms_exclusions. Așa că nu mai returnează niciuna din categoriile mele de sub Necategorizat.
