• Rozwiązano marciu11

    (@marciu11)


    Witam

    Jest jakiś sposób żeby post dostawał z automatu wybraną kategorię?

    Mam kilka kategorii postów, w śród nich jedna opisujące je wszystkie.
    Powiedzmy że to kolory: „czerwony”, „niebieski”, „żółty” itd. W śród nich jest też kategoria „matowy” (nie jest to ich parent – tylko równorzędna kategoria).
    Przy pisaniu postu nie zawsze piszący pamięta aby oprócz „koloru” zaznaczyć też kategorię „matowy”.

    Czy jest możliwe aby post automatycznie dostawał i tę kategorię (drugą), jeżeli nie jest wybrana?

    Pozdrawiam Marcin

Zobacz 2 odpowiedzi - od 1 do 2 (z 2 łącznie)
  • Przy zapisie wpisu akcja save_post należy dodać wybraną taksonomię za pomocą funkcji: wp_set_object_terms.

    Twórca wątku marciu11

    (@marciu11)

    Dzięki wielkie za naprowadzenie!
    Zrobiłem dzięki temu taką procedurę:

    function add_auto_meta_category( $post_id ) {
    	$categories = get_the_category();
    		foreach($categories as $category) {
    			$output[] = $category->cat_name;
    		}
    	$catprimary = get_category(1); // pobranie kategorii nr 1
    	$output[] = $catprimary->name; // i dopisanie jej do listy
    	wp_set_object_terms( $post_id, $output, 'category');
    }
    add_action('publish_post', 'add_auto_meta_category');

    Działa 🙂

    Ale jako osoba ucząca się, zastanawiam się, czy może ktoś ma pomysł na poprawienie tego kodu – tak w ramach nauki.
    Co można zrobić inaczej, uprościć, poprawić

    Dzięki raz jeszcze i pozdrawiam
    Marcin

Zobacz 2 odpowiedzi - od 1 do 2 (z 2 łącznie)

Temat ‘Automatyczna kategoria’ jest zamknięty na nowe odpowiedzi.