Cum să obții numele tipului de postare curent get_post_types?

25 nov. 2014, 20:19:52
Vizualizări: 74.7K
Voturi: 24

Cum pot obține numele tipului de postare personalizat curent și să îl afișez într-o pagină?

0
Toate răspunsurile la întrebare 3
2
46

Vei avea nevoie de obiectul postării într-un fel sau altul, sau, alternativ, obiectul interogat în arhivele tipurilor de postări. Pe o pagină singulară ai putea face:

$post = get_queried_object();
$postType = get_post_type_object(get_post_type($post));
if ($postType) {
    echo esc_html($postType->labels->singular_name);
}

Sau în buclă:

$postType = get_post_type_object(get_post_type());
if ($postType) {
    echo esc_html($postType->labels->singular_name);
}

În arhivele tipurilor de postări:

$postType = get_queried_object();
echo esc_html($postType->labels->singular_name);

Toate acestea vă vor oferi numele singular al tipului de postare care a fost înregistrat în cheia labels a register_post_type.

25 nov. 2014 20:48:41
Comentarii

Poți să mă ajuți aici. Folosesc acum următorul cod: http://snippi.com/s/wookr64 Cu acest cod vreau să afișez doar posturile din tipul curent de pe pagină. Acum nu funcționează corect. Ce am greșit?

Casper Casper
25 nov. 2014 22:34:06

@Casper Cred că trebuie să te așezi și să reconstruiești întrebarea ta anterioară. Încă este complet neclar ce vrei. De ce nu a funcționat acest răspuns pe SO. Explică cu exemple și nume de șabloane exact ce vrei. Mulțumesc

Pieter Goosen Pieter Goosen
26 nov. 2014 07:00:01
0

Pentru a obține numele tipului de postare curent, utilizați următorul cod în interiorul buclei.

$post_type = get_post_type( get_the_ID() );
echo '<p>' . $post_type . '</p>';

sau afișați numele tipului de postare folosind funcția printf.

printf( __( 'Tipul de postare este: %s', 'textdomain' ), get_post_type( get_the_ID() ) );
23 ian. 2017 08:20:38
0

Metoda get_post_type() returnează tipul postului pentru postul curent sau pentru un post specificat. Mai multe informații aici.

11 dec. 2020 10:07:50