Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

WooCommerce के कुछ टेम्प्लेट में श्रेणी वस्तु प्राप्त नहीं कर सकता

आप get_category() का इस्तेमाल नहीं कर सकते या get_term() हर जगह सीधे एक आईडी के साथ। आपको सूचीबद्ध यहां और अधिक तर्कों का उपयोग करने की आवश्यकता है (नीचे उदाहरण देखें) . टेम्प्लेट पर, मुझे लगता है कि यह प्रदर्शित उत्पादों पर भी निर्भर करता है (यदि उनके पास यह श्रेणी या उपश्रेणी है)।

अन्य उपयोगी वर्डप्रेस फ़ंक्शंस:
श्रेणी आईडी के आधार पर श्रेणी का नाम पुनर्प्राप्त करने के लिए आपको get_the_category_by_ID() .
आप श्रेणी के नाम . द्वारा भी आईडी प्राप्त कर सकते हैं और आप get_cat_ID( 'cat_name' ) का इस्तेमाल करेंगे

उत्पाद श्रेणियों और उपश्रेणियों को get_category() के साथ सूचीबद्ध करना (उदाहरण) :

यहां यह <पर आधारित फ़ंक्शन का एक उदाहरण है। मजबूत>यह धागा , जो सभी उत्पाद श्रेणियों और उपश्रेणियों को सूचीबद्ध करेगा (हर जगह) :

function products_cats_subcats(){
    $taxonomy     = 'product_cat';
    $orderby      = 'name';
    $show_count   = 0;      // 1 for yes, 0 for no
    $pad_counts   = 0;      // 1 for yes, 0 for no
    $hierarchical = 1;      // 1 for yes, 0 for no
    $title        = '';
    $empty        = 0;

    $args = array(
        'taxonomy'     => $taxonomy,
        'orderby'      => $orderby,
        'show_count'   => $show_count,
        'pad_counts'   => $pad_counts,
        'hierarchical' => $hierarchical,
        'title_li'     => $title,
        'hide_empty'   => $empty
    );
    $all_categories = get_categories( $args );
    echo '<ul>';
    foreach ($all_categories as $cat) {
        if($cat->category_parent == 0) {
            $category_id = $cat->term_id;
            echo '<li><a href="'. get_term_link($cat->slug, 'product_cat') .'">'. $cat->name .'</a></li>';

            $args2 = array(
                'taxonomy'     => $taxonomy,
                'child_of'     => 0,
                'parent'       => $category_id,
                'orderby'      => $orderby,
                'show_count'   => $show_count,
                'pad_counts'   => $pad_counts,
                'hierarchical' => $hierarchical,
                'title_li'     => $title,
                'hide_empty'   => $empty
            );
            $sub_cats = get_categories( $args2 );
            echo '<ol>';
            if($sub_cats) {
                foreach($sub_cats as $sub_category) {
                    echo  '<li><a href="'. get_term_link($sub_category->slug, 'product_cat') .'">' . $sub_category->name .'</a></li>';
                }
            }
            echo '</ol>';
        }
    }
    echo '</ul>';
}

इसका उपयोग करने के लिए इसे वहीं रखें जहां आप चाहते हैं:<?php products_cats_subcats() ;?>

यह आपकी सभी श्रेणियों और उपश्रेणियों को नाम . द्वारा क्रमबद्ध रूप से प्रदर्शित करेगा , प्रत्येक श्रेणी या उपश्रेणी के लिए संबंधित लिंक के साथ।

तब अब आप अपनी जरूरतों को पूरा करने के लिए अपने स्वयं के कार्यों का निर्माण करने में सक्षम होंगे…

संदर्भ:




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. अद्यतन के लिए MySQL चयन खाली सेट देता है, भले ही एक पंक्ति मौजूद हो

  2. MySQL डेटा प्रकारों का परिचय

  3. Bind_result बनाम get_result का उपयोग कैसे करें इसका उदाहरण

  4. MySQL - मूल्यों की एक जोड़ी को अद्वितीय बनाएं

  5. PHP जबकि लूप केवल अंतिम पंक्ति प्रदर्शित करता है