WordPress’te belirli bir ana kategorinin alt kategorilerini listelemek için kullanabileceğiniz kodu paylaşıyorum. Bu kodu temanın uygun bir dosyasına (örneğin, index.php, category.php veya sidebar.php gibi alanlara ekleyebilirsin.
<?php
$parent_category_id = 1; // Burada 1 yazan yere ana kategori ID'sini yazınız
$subcategories = get_categories(array(
'child_of' => $parent_category_id,
'hide_empty' => false
));
if ($subcategories) {
echo '<ul>';
foreach ($subcategories as $subcategory) {
echo '<li><a href="' . get_category_link($subcategory->term_id) . '">' . $subcategory->name . '</a></li>';
}
echo '</ul>';
} else {
echo 'Alt kategori bulunamadı.';
}
?>
- $parent_category_id değişkenine ana kategorinin ID numarasını yazmalısın. ID’yi öğrenmek için WordPress Yönetici Paneli > Yazılar > Kategoriler bölümüne gidip ilgili kategorinin üzerine gelerek linkteki tag_ID=xx kısmına bakabilirsin.
- get_categories() fonksiyonu ile belirttiğin ana kategoriye ait alt kategorileri çekiyoruz.
- child_of parametresi belirttiğimiz üst kategorinin alt kategorilerini getirir.
- hide_empty => false kullanarak içinde hiç yazı olmasa bile alt kategorileri listelemeyi sağlıyoruz.
Eğer alt kategorilerin yanında kaç yazı olduğu da gözüksün istiyorsanız. Örneğin, “Nasıl (15)” gibi aşağıdaki kodu kullanın.
<?php
$parent_category_id = 1; // Burada 1 yazan yere ana kategorinin ID'sini yaz
$subcategories = get_categories(array(
'child_of' => $parent_category_id,
'hide_empty' => false
));
if ($subcategories) {
echo '<ul>';
foreach ($subcategories as $subcategory) {
echo '<li><a href="' . get_category_link($subcategory->term_id) . '">' . $subcategory->name . '</a> (' . $subcategory->count . ')</li>';
}
echo '</ul>';
} else {
echo 'Alt kategori bulunamadı.';
}
?>
