get_the_term_list tanpa tautan di 3.1


13

Fungsi apa yang akan menampilkan taksonomi khusus yang terkait dengan posting sebagai teks?

Saat ini saya menggunakan get_the_term_list yang berfungsi bagus untuk halaman tunggal tetapi tidak terlalu banyak saat menggunakan taksonomi dalam tag judul permalink archive-postype.php.

Jawaban:


15

wp_get_object_terms () mengembalikan istilah yang terkait dengan objek (misalnya posting atau halaman atau posting kustom) sebagai teks (biasanya dalam array).

Dari halaman Codex untuk wp_get_object_terms ()

$productcategories = wp_get_object_terms($post->ID, 'productcategories');


Perlu diingat bahwa hasil kueri tidak di-cache seperti get_the_terms(). Lihat halaman codex untuk info.
Dylan

22

Namun @anu benar, saya tahu Anda dapat memanggil fungsi php strip_tags untuk menghapus tag nilai pengembalian.

$terms = get_the_term_list( $post->ID, 'tags' );
$terms = strip_tags( $terms );

Terlihat sangat sederhana dan melakukan pekerjaan. Apakah ada kerugian menggunakan ini?
Mohsin

@Mohsin Satu kekurangannya adalah ia menghapus semua tag, bukan hanya tag <a>. Namun, Anda dapat mencegah penandaan tag yang diinginkan, seperti:$terms = strip_tags( $terms, '<li>' );
David


0

Saya memerlukan solusi Zack yang sama dan mencoba yang bekerja sangat baik. Misalnya, jika Anda hanya membutuhkan istilah untuk memasukkan id atau kelas css. Hanya ada satu anotasi tentang solusinya, fungsinya buruk dipanggil, benar adalah "get_the_term_list".

Saya menunjukkan contoh saya:

$terms = get_the_term_list( $post->ID, 'your_taxonomy_name' );
$terms = strip_tags( $terms );

0
$terms = wp_list_pluck( get_the_terms( get_the_ID(), 'your_taxonomy' ), 'name');

Di sini $ terms adalah array, jadi Anda bisa menggunakan foreach loop.

foreach( $terms as $term ) {
  echo $term;
}
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.