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.

m-torin
sumber

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');

anu
sumber
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 );
Zack
sumber
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 );
Pemula wordpress
sumber
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;
}
Razor Khan
sumber