Wp mantığı kategori ve alt kategori nasıl yapabilirim acaba?
Uzun yoldan çift while ile çözebiliyorum ama sanki daha kolay ve fonksiyonel yolları vardır gibi geliyor.
Tasarım konusu sorun değil de siz kategori ve alt kategori olayını nasıl yapıyorsunuz?
PHP Alt Kategori Yapımı
2
●1.969
- 17-02-2013, 20:39:07http://www.sitepoint.com/hierarchical-data-database/
burayı incelemeni öneririm adım adım anlatılmış - 17-02-2013, 21:02:58Kimlik doğrulama veya yönetimden onay bekliyor.Benim kullandığım yapı aşağıda. Tek SQL sorgusuyla hiyerarşik sınırsız alt kategoriler oluşturabilirsiniz.
<?php if (!($connection = mysql_connect('localhost', 'root', '')) || !mysql_select_db('cat', $connection)) exit('Failed to connect to database...'); $tree = get_cat_tree(); echo '<pre>'; print_r($tree); echo '</pre>'; function get_cat_tree() { // Tüm kategorileri çek. $result = mysql_query(' SELECT * FROM cats'); $list = array(); while ($row = mysql_fetch_assoc($result)) $list[$row['id_cat']] = $row; mysql_free_result($result); // Her kategoriyi tek tek döngüye sokarak alt kategorileriyle eşleştir. $tree = array(); foreach ($list as $id => $item) { if ($item['id_parent'] == 0) { $tree[$item['id_cat']] = $item; unset($list[$id]); find_sub_cats($list, $tree[$item['id_cat']]); } } return $tree; } function find_sub_cats(&$list, &$selected) { foreach ($list as $id => $item) { if ($item['id_parent'] == $selected['id_cat']) { $selected['sub_cats'][$item['id_cat']] = $item; unset($list[$id]); find_sub_cats($list, $selected['sub_cats'][$item['id_cat']]); } } } ?>Alıntı