Tema saya memiliki gaya berdasarkan kategori menggunakan kode berikut, yang menyisipkan siput kategori saat ini sebagai kelas CSS.
<div class="CategorySpecificStyle
<?php $category = get_the_category(); echo $category[0]->slug; ?>">
<?php echo $category[0]->cat_name; ?>
</div>
Sekarang saya akan menambahkan sejumlah besar sub-kategori baru, dan tampaknya konyol untuk menambahkan semuanya dalam CSS ketika saya seharusnya bisa memilih kategori induk dari posting saat ini dan menerapkan gaya untuk itu.
Saya bisa mendapatkan nama kategori induk:
$parentcat = get_cat_name($category[0]->category_parent);
Tapi spasi (dan kapitalisasi) adalah masalah ... Dan saya sepertinya tidak bisa mendapatkan siput kategori induk.
Saya tahu saya mungkin kehilangan langkah sederhana di suatu tempat, tetapi wawasan apa pun akan sangat dihargai.
sumber
Saya suka jawaban sebelumnya dari @s_ha_dum, tetapi untuk mendapatkan kategori tingkat atas tanpa memperhatikan kedalaman, saya menggunakan apa yang saya anggap sebagai solusi yang lebih sederhana:
sumber
Jika itu dapat membantu seseorang ... untuk mendapatkan anak kucing atau orang tua, tergantung pada
0
atau1
Anda memakai$category
sumber
Anda dapat menyederhanakannya seperti ini:
sumber
Fungsi berikut disesuaikan untuk mengembalikan kategori root :
Pemakaian:
get_root_category()->slug
sumber