• 31-08-2019, 13:38:21
    #1
    Merhaba arkadaşlar aşağıdaki fonksiyonda hangi kategoride kaç yazı olduğunu bir türlü gösteremedim yardımcı olursanız sevinirim.

    function blogCategoryListWidget($explode = array(), $parentId = 0, $categories = NULL) { GLOBAL $dbPdo;
        
        if ( $parentId === 0 ) {
            
            if ( !empty($explode) ) {
                
                if ( is_string($explode) ) $explode = explode(',', $explode);
                
                $rows = $dbPdo->notIn('id', $explode)->orderBy('parent_id', 'ASC', 'parent_order', 'ASC')->select('blog_categories');
                
            } else {
                
                $rows = $dbPdo->orderBy('parent_id', 'ASC', 'parent_order', 'ASC')->select('blog_categories');
                
            }
            
            if ( empty($rows) ) return alertInfo('Kategori bulunamadı');
            
            $categories = array();
            
            foreach ( $rows as $k => $v ) {
                
                $categories[$v->parent_id][] = $v;
                
            }
            
        }
        
        $result = '<ul>';
        
        foreach ( $categories[$parentId] as $category ) {
            
            $result .= '<li>
                            <a href="'.blogCategoryUrl($category->id).'" >'.securityHtml($category->category_title).'</a>';
            
            if ( isset($categories[$category->id]) ) $result .= blogCategoryListWidget($explode, $category->id, $categories);
            
            $result .= '</li>';
            
        }
        
        $result .= '</ul>';
        
        return $result;
        
    }
  • 31-08-2019, 15:52:01
    #2
    Global olarak kullandığınız dbPdo nesnesinin yeteneklerini, kategori ve yazı ile ilgili tablolarınızın sütunlarını bilmeden direk size çalışır kod sunmamız imkansız. Ancak, hayali bir tablo olarak size SQL kodu verebilirim. Böylece bu sql kodunu kendi dbPdo nesnenize göre uyarlayabilirsiniz.

    SELECT kategoriler.kategori_ad,
    COUNT(*) AS Count
    FROM blog LEFT JOIN kategoriler ON (kategoriler.kategori_id = blog.blog_kategori)
    GROUP  BY blog.blog_kategori
  • 31-08-2019, 16:23:22
    #3
    Merhaba,

    count($category)
    şeklinde alabilirsiniz.
  • 31-08-2019, 17:48:50
    #4
    bayGaReZ adlı üyeden alıntı: mesajı görüntüle
    Global olarak kullandığınız dbPdo nesnesinin yeteneklerini, kategori ve yazı ile ilgili tablolarınızın sütunlarını bilmeden direk size çalışır kod sunmamız imkansız. Ancak, hayali bir tablo olarak size SQL kodu verebilirim. Böylece bu sql kodunu kendi dbPdo nesnenize göre uyarlayabilirsiniz.

    SELECT kategoriler.kategori_ad,
    COUNT(*) AS Count
    FROM blog LEFT JOIN kategoriler ON (kategoriler.kategori_id = blog.blog_kategori)
    GROUP  BY blog.blog_kategori
    hasanbugra adlı üyeden alıntı: mesajı görüntüle
    Merhaba,

    count($category)
    şeklinde alabilirsiniz.



    şeklinde sql kategori şeklimiz
  • 31-08-2019, 17:51:03
    #5
    ve tavsiyem her seferinde saydırma. bir kez saydır her kategoride bunun için sütun açıp orada belirt. içerik ekleyip çıkardıkça ilgili kategori(ler)de bunu duruma göre o an güncelle