posts status in wordpress

Cum sa adaugi statusuri personalizate pentru postari

Statusul postarilor indica informatii despre starea in care un articol scris si publicat se afla. Implicit, WordPress are urmatoarele statusuri disponibile:

  • Public (vizibil tuturor)
  • Privat (vizibil doar anumitor persoane)
  • Protejat prin parola (vizibil oricui introduce o anumita parola solicitata la accesarea postarii)

Pentru a crea un status nou care sa fie afisat ca o noua optiune de selectie alaturi de cele 3 de mai sus, va trebui sa adaugati urmatorul cod in fisierul functions.php al temei:

function status_stare_postare_noua() {

	$args = array(
		'label' => _x( 'numele-starii', 'Status General Name', 'text_domain' ),
		'label_count' => _n_noop( 'numele-starii (%s)',  'numele-starilor (%s)', 'text_domain' ), 
		'public'=> true,
		'show_in_admin_all_list' => true,
		'show_in_admin_status_list' => true,
		'exclude_from_search'  => false,
	);
	register_post_status( 'starea-noua', $args );

}
add_action( 'init', 'status_stare_postare_noua', 0 );

Explicarea codului pe scurt:

  1. Se creaza o functie care va genera informatiile cu privire la noua stare creata (noi am numit-o status_stare_postare_noua (), insa poate avea orice denumire doriti dvs.)
  2. In functia creata sunt introduse urmatoarele:
    1. Array-ul $args care va contine:
      • numele statusului
      • singularul si pluralul numelui
      • daca postarea va fi vizibila public sau nu (true/false)
      • daca va fi vizibila utilizatorilor logati care publica / editeaza articole
      • statusul poate sa fie afisat sau exclus din cautari
    2. Inregistrarea noului status prin intermediul functiei implicite WordPress register_post_status ().
  3. Dupa ce am inchis functia, se invoca un hook de actiune WordPress, respectiv add_action () care va contine cel putin doua argumente: primul va spune ce tip de actiune este invocat (in cazul nostru „init”) iar al doilea va specifica functia in care a fost creat noul status.
Distribuie: