You are currently viewing Opencart Recursive Category Query Function
PHP Recursive Category Query Function

Opencart Recursive Category Query Function

Merhabalar bugün sizlere Opencart Recursive Category Query Function ne işe yarar neler yapılabilir kısmından bahsetmek istiyorum.

Opencart e-ticaret platformu, kategori yapılarının çoklu seviyelerini destekler. Ancak, bu kategorileri sıralamak ve görüntülemek için bir fonksiyon gereklidir. Opencart‘ta, bu fonksiyonu oluşturmak için “Recursive” bir sorgu fonksiyonu kullanabilirsiniz.

Bu fonksiyon, bir kategorinin alt kategorilerini listelemek için yine kendisini çağırarak çalışır. Bu, her kategorinin alt kategorilerinin görüntülenmesini sağlar. Ayrıca, kategori yapısının her seviyesi için ayrı bir HTML biçimi belirleyebilirsiniz.

Bu kod ne işe yarar, neler yapılabilir kısmına gelince, Tüm kategorilerinizi veya vereceğiniz bir kategori id’nize ait tüm alt kategorileri liste olarak vermeye yarayabilir.

Ürün sayfanızda filtreleme yapmak için kullanabilirsiniz, tüm kategorileri selectbox yaparak ilgili seçilen kategoriyi getirebilirsiniz. ” Bu konuda ufak bir yazı paylaşıcam” gibi örnekleri çoğaltarak kullanabilirsiniz.

Alt kısımdaki kod opencart 2.1.2 ile denedim ve sorunsuz çalışmaktadır, herhangi bir sorun olması halinde yorum olarak paylaşırsanız cevap vermeye çalışacağım.

public function getCategory(&$output = null, $parent = 0, $indent = null)
{
$sql = "SELECT occ.category_id,ocd.name as name FROM oc_category as occ LEFT JOIN oc_category_description as ocd ON ocd.category_id = occ.category_id where parent_id=" . $parent;
$query = $this->db->query($sql);
foreach ($query->rows as $key => $cat) {
$output .= '<option value=' . $cat['category_id'] . '>' . $indent . $cat['name'] . "</option>";
if ($cat['category_id'] != $parent) {
$this->getCategory($output, $cat['category_id'], $indent . "&nbsp;&nbsp;");
}
}
return $output;
}

Yukarıdaki kod bloğu size select box alt itemleri olan <option> olarak çıktı vermektedir. Kendinize göre revize edebilir ve kullanabilirsiniz.

opencart Recursive category function Dip Not

recursive (yineleyen) fonksiyon terimi, belirtilen sonuca göre kendi kendini tekrar çağıran fonksiyonlara denir kısacası.

Recursive fonksiyonları mümkün olduğunca az kullanmak en iyisidir ama bazı durumlarda kullanmakta elbette en iyisidir. Bazen yanlış kullanım veya hatalı değerlerde sonsuz bir döngüye girebilir ve browser kitlenebilir dikkatli olamk gerek.

kurtitasarim

‘’İrade ve yargıları aşan güçlü bir coşku, ihtiras" diye tanımlanır tutku. Yaptığın işi sevmek yerine, sevdiğin işi yap mottosu da benim tutku tanımım. Kod yazmak bir yana, o kodun sistem üzerindeki hareketlerini, farklı cihazlar ile etkileşimini, o noktalarda oluşan sıkıntıları görmek, çözmek ve bunu yaparken diğer kişilere yol göstermek işimin en zevkli yanı. Bu sebeple önce tutku ile yapılan iş, sonra maddiyat..

Bir cevap yazın