मेरे कस्टम टेम्पलेट का उपयोग करने के लिए WooCommerce दुकान पृष्ठ [बंद]


9

प्रश्न पूछने से पहले मैं आपको बताना चाहता हूं कि मैंने पहले ही /programming/15025213/wordpress-woocommerce-template-file-overiding में प्रश्न पूछा है

मैं एक वेबसाइट विकसित करने के लिए WooCommerce प्लगइन का उपयोग कर रहा हूं । WooCommerce के साथ सब कुछ ठीक है। अपनी आवश्यकता के अनुसार, मैंने अपने होम पेज को शॉप पेज बनाने के लिए अपने होम पेज को WooCommerce डैशबोर्ड से शॉप बेस पेज के रूप में कॉन्फ़िगर किया है। अब मेरी आवश्यकता कुछ छवियों को रखने की है, जिन्हें व्यवस्थापक की ओर से अपलोड किया जाना चाहिए और छवियों पर कुछ पाठ दिखाना चाहिए। उस सुविधा के लिए, मैंने Google पर खोज की और कुछ लोगों ने सुझाव दिया कि मैं वर्डप्रेस उन्नत कस्टम फ़ील्ड का उपयोग करता हूं । मैंने अभी इसे स्थापित किया है।

अब मैंने देखा कि WooCommerce मेरे कस्टम थीम का उपयोग नहीं कर रहा है। यह अपने स्वयं के कस्टम विषय का उपयोग कर रहा है। चूंकि मैं उन्नत कस्टम फ़ील्ड्स प्लगइन का उपयोग करके चित्र और पाठ दिखाना चाहता हूं , इसलिए मुझे वास्तव में छवियों और पाठ के लिए प्रश्नों का उपयोग करने के लिए अपने स्वयं के कस्टम टेम्पलेट की आवश्यकता है। तब मैं फिर से एक समाधान के लिए गूगल से अधिक खोज की है और मैं सिर्फ विषय के की एक प्रतिलिपि बनाने के लिए सुझाव मिल गया page.phpमें woocommerce.phpऔर फिर बस कोड की जगह:

     <?php while ( have_posts() ) : the_post(); ?>

      <?php get_template_part( 'content', 'page' ); ?>

      <?php comments_template( '', true ); ?>

    <?php endwhile; // end of the loop. ?>

साथ में

<?php woocommerce_content(); ?>

मैंने ऐसा किया लेकिन फिर भी मुझे उन्नत कस्टम फील्ड्स से अपने कस्टम फील्ड नहीं मिल रहे हैं । तो कृपया मेरी मदद करें। कोई सुझाव और मदद सराहनीय होगी। धन्यवाद।

छवि और पाठ के लिए उन्नत कस्टम फ़ील्ड दिखाने का मेरा कोड इस तरह है:

<?php $product_tab_banner = get_field('product_tab_banner');
    if($product_tab_banner): ?>
   <?php var_dump($product_tab_banner); ?>
    <div class="nt-highlighted-products">
    <img src="<?php echo $product_tab_banner['url']; ?>" alt="<?php echo $product_tab_banner['alt']; ?>"  width="<?php echo $product_tab_banner['sizes']['featured_product-width'];?>" height="<?php echo $product_tab_banner['sizes']['featured_product-height'];?>" title="<?php echo $product_tab_banner['title']; ?>" />
    </div>
  <?php endif; ?>

मैं WordPress TwentyEleven विषय का उपयोग कर रहा हूं।


शायद WC प्रलेखन में कुछ संकेत हैं।
ब्रसोफिलो

@brasofilo मैंने प्रलेखन पर खोज की है, लेकिन वहां कोई सुराग नहीं मिला ...
NewUser

अगर यह मदद करता है की जाँच करें ।
ब्रासोफिलो

हाँ मैंने कोशिश की थी, लेकिन यह इस तरह दिखाई दे रहा हैFatal error: Cannot redeclare show_template() (previously declared
NewUser

फ़ंक्शन नाम के साथ एक गलती थी, बस इसे ठीक कर दिया।
ब्रसोफिलो

जवाबों:


5

आपके प्रश्न से गुजरकर मैं आपको बताना चाहता हूं कि woocommerce आपके कस्टम टेम्पलेट का उपयोग नहीं करेगा। यह अपने स्वयं के टेम्पलेट का उपयोग करेगा। जैसा कि आप वर्डप्रेस उन्नत कस्टम फ़ील्ड प्लगइन का उपयोग करना चाहते हैं मैं आपको बताना चाहता हूं कि यह सुविधा केवल पृष्ठ और पोस्ट पर काम करती है। तो जैसा कि woocommerce अपने स्वयं के कस्टम टेम्पलेट का उपयोग करने की अनुमति नहीं देगा, आप उन्नत कस्टम फ़ील्ड सुविधाओं का उपयोग नहीं कर सकते।

अब बस कुछ अलग करो। बस अपना स्वयं का कस्टम टेम्प्लेट बनाएं जहां आप अपने उत्पादों को दिखाना चाहते हैं। तो बस साइट पर जाने के http://docs.woothemes.com/document/woocommerce-shortcodes/ यहां आप देख सकते लघुकोड के लिए woocommerce । जहां आप अपने स्वयं के अनुकूलन के साथ लगभग सभी उत्पादों को आसानी से दिखा सकते हैं। अब उत्पादों को दिखाने के लिए इन शॉर्टकोड का उपयोग करें । यहां आपने यह हासिल कर लिया है कि woocommerce अपने कस्टम टेम्पलेट का उपयोग कर रहा है। अब चूंकि यह आपका अपना टेम्प्लेट है, आप आसानी से इसके साथ उन्नत कस्टम फ़ील्ड का उपयोग कर सकते हैं। स्पष्ट है क्या? यदि कोई बात आप समझ नहीं सकते हैं तो मुझे उत्तर दें। आशा है कि यह आपकी मदद करेगा।


11

अगर मैं आपकी समस्या को सही तरह से समझ पा रहा हूँ, तो मुझे पूरा यकीन नहीं है, लेकिन यहाँ इसे दोहराने का मेरा प्रयास है।

सबसे पहले , WooCommerce प्रलेखन के इस भाग पर विचार करें :

यदि आप इनमें से किसी एक टेम्प्लेट को संपादित करना चाहते हैं, तो इसे अपनी थीम के भीतर एक डायरेक्टरी में कॉपी करें /woocommerce, उसी फाइल स्ट्रक्चर को रखते हुए, जैसे कि ले /templates/cart/cart.phpजाएं themename/woocommerce/cart/cart.php। प्रतिलिपि की गई फ़ाइल अब WooCommerce डिफ़ॉल्ट टेम्पलेट फ़ाइल को ओवरराइड करेगी।

दूसरा , यह प्रतिकृति चरण हैं:

  • WP 3.5.1, ट्वेंटीलेवन 1.5, WooCommerce 1.6.6 और AdvancedCustomFields 4.0.0 का उपयोग करना
  • पृष्ठ "शॉप" को रीडिंग सेटिंग में स्थिर फ्रंट पेज के रूप में सेट करें ( /wp-admin/options-reading.php)
  • एक एसीएफ फील्ड समूह सेट करें जिसमें एक छवि फ़ील्ड शामिल है ( product_tab_banner), "छवि वस्तु" के रूप में रिटर्न वैल्यू के साथ और पोस्ट में दिखाया जा सकता है "वीडियो"

समाधान :

  • निम्नलिखित फ़ोल्डर बनाएँ: /wp-content/twentyeleven/woocommerce/
  • फ़ाइल की प्रतिलिपि बनाएँ: /wp-content/plugins/woocommerce/templates/content-product.php इस नए बनाए गए फ़ोल्डर में
  • की इस प्रति में अपना कोड रखें content-product.php
$product_tab_banner = get_field('product_tab_banner');
if($product_tab_banner): ?>
    <div class="nt-highlighted-products">
    <img src="<?php echo $product_tab_banner['url']; ?>" 
        alt="<?php echo $product_tab_banner['alt']; ?>"  
        width="<?php echo $product_tab_banner['sizes']['featured_product-width'];?>" 
        height="<?php echo $product_tab_banner['sizes']['featured_product-height'];?>" 
        title="<?php echo $product_tab_banner['title']; ?>" />
    </div>
<?php endif; ?>

यहाँ उत्पाद पृष्ठ है:

उत्पाद पृष्ठ
विस्तार करने के लिए क्लिक करें

और यहाँ साइट में परिणाम:

साइट का परिणाम


यदि आप "शॉप" पेज को कस्टमाइज़ करना चाहते हैं, तो फ़ाइल /wp-content/plugins/woocommerce/templates/archive-product.phpको अपने थीम के /woocommerce/फ़ोल्डर में कॉपी करें ।


-2

कृपया उस प्लग-इन को बदलने का प्रयास करें जिसका उपयोग आप आधिकारिक WooCommerce एक्सटेंशन जैसे "उत्पाद एड-ऑन" ( http://www.woothemes.com/products/product-add-ons/ ) के साथ कर रहे हैं।


क्या आपने मेरे प्रश्नों को ठीक से पढ़ा है?
न्यूउसर

1
मैं करता हूँ। हालाँकि आपको मेरा उत्तर समझने में कुछ समय लग सकता है।
बॉक्स
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.