स्टॉक उत्पादों में से अभी भी दृश्य, खोज और अन्य में दिखाई देते हैं - मैगेंटो 2.1.0


12

मुझे लगता है कि मेरे Magento 2.1.0 की स्थापना में एक समस्या है! खोज और श्रेणी पृष्ठों से स्टॉक उत्पादों से बाहर छिपाने से इनकार ! मैंने कैश साफ़ कर दिया, मैंने रिजेक्ट कर दिया, लेकिन किस्मत नहीं!

क्या आप मुझे कोई सलाह दे सकते हैं?

मेरे उत्पाद स्टॉक 0 के साथ हैं, लेकिन सामने वे स्टॉक में दिखाई देते हैं, और जब आप उन्हें ऑर्डर करते हैं तो यह आपको यह त्रुटि देता है:

We don't have as many "Item's name" as you requested.

धन्यवाद

बाद में संपादित करें:

मुझे यह जानकारी भी है:

व्यवस्थापक में सेट करें> स्टोर> कॉन्फ़िगरेशन> कैटलॉग> इन्वेंटरी> स्टॉक विकल्प> स्टॉक उत्पादों का प्रदर्शन नो से

यह वास्तव में Magento की एक विशेषता है। स्टॉक उत्पादों से बाहर प्रदर्शन सेट करना न केवल उन्हें श्रेणी सूची पृष्ठों और खोज परिणाम पृष्ठ से छिपाता है। उत्पाद पृष्ठ वास्तव में अभी भी उपलब्ध है। सीई 1.9.1 के साथ शुरू करना विन्यास सेटिंग के तहत एक संदेश भी है। स्टॉक उत्पादों का प्रदर्शन यह कहते हुए कि उत्पाद अभी भी प्रत्यक्ष उत्पाद URL द्वारा दिखाए जाएंगे .. और यह वास्तव में एक अच्छी बात है। जब आपके उत्पाद स्टॉक से बाहर हो जाते हैं तो इस तरह से खोज इंजन बहुत अधिक 404 पृष्ठों को पंजीकृत नहीं करता है। मैं इसे इस तरह छोड़ने में नुकसान नहीं देखता। ग्राहक उन्हें वैसे भी आदेश नहीं दे सकते। यदि आप चाहते हैं कि कोई उत्पाद आपके स्टोर में बिल्कुल भी उपलब्ध न हो, तो आपको इसे अक्षम के रूप में चिह्नित करना होगा या यह दृश्यता को व्यक्तिगत रूप से दृश्यमान नहीं करना होगा या इसके एसोसिएशन को वेबसाइट के टैब से व्यवस्थापक उत्पाद संपादन पृष्ठ पर वेबसाइटों से हटा देना चाहिए। स्रोत:स्टॉक उत्पादों में से अभी भी दृश्यपटल में दिखाई देते हैं


मैं भी इसी मुद्दे का सामना कर रहा हूं। बैकएंड कॉन्फ़िगरेशन को बदलने के बाद भी, मैं अभी भी इसका सामना कर रहा हूं। अगर आपको समाधान मिल गया है, तो कृपया मुझे बताएं।
सबरविंकेकट्सक्रीश

क्या आप लोग अभी भी इस मुद्दे का सामना कर रहे हैं? आप कस्टम विषय का उपयोग कर रहे हैं? मुझे लगता है कि यह शायद समस्या की जड़ हो सकता है।
फ्रेड ओरोसो डायस

जवाबों:


7

व्यवस्थापक> स्टोर> कॉन्फ़िगरेशन> कैटलॉग> इन्वेंटरी> स्टॉक विकल्प पर जाएं

सेट स्टॉक उत्पाद के प्रदर्शन आउट करने के लिए नहीं

यहाँ छवि विवरण दर्ज करें


3
पहले से ही किया है कि! फिर भी कोई बदलाव नहीं!
edgetwism

2

मैं "बैकऑर्डर" के कारण ठीक उसी समस्या (Magento v2.1.9) का सामना कर रहा था, जिसे "0 से नीचे की अनुमति दें और ग्राहक को सूचित करें" सेट किया गया था

व्यवस्थापक> स्टोर> कॉन्फ़िगरेशन> कैटलॉग> इन्वेंटरी> स्टॉक विकल्प सेट डिस्प्ले "स्टॉक उत्पादों से बाहर" नहीं


व्यवस्थापक> स्टोर> कॉन्फ़िगरेशन> कैटलॉग> इन्वेंटरी> उत्पाद स्टॉक विकल्प बैकऑर्डर "नो बैकऑर्डर" पर जाएं

नोट: पूरी कैटलॉग को संसाधित करने के कारण बदलने में कुछ समय लग सकता है।

यहाँ छवि विवरण दर्ज करें


0

मेरे पास 2.2.3 पर एक ही मुद्दा है। मेरी ओर से, यह उन्नयन कमांड के बाद हुआ। मैंने कमांड की कोशिश की और प्रश्न चलाए, लेकिन कोई भाग्य नहीं है। मैं इसे हां से नहीं। निम्न विकल्प को बदलते हुए उपयोग करता Stores => Configuration => Catalog=> Catalog =>Disable Add to cart button for Guests From Yes to Noहूं। इससे किसी को मदद मिलेगी। ।धन्यवाद यहाँ छवि विवरण दर्ज करें


डिफ़ॉल्ट रूप से ऐसा कोई विकल्प नहीं है।
प्रियांक

-1
namespace vendor\module\Block\Product;

class ListProduct extends \Magento\Catalog\Block\Product\ListProduct{

    protected function _getProductCollection(){
        $collection = parent::_getProductCollection();
        $objectManager = \Magento\Framework\App\ObjectManager::getInstance();
        $productIds = $objectManager->create('\vendor\module\Helper\Data')->getIdsToLastStock($collection->getAllIds());
        $orderString = array('CASE e.entity_id');
        foreach($productIds as $i => $productId) {
            $orderString[] = 'WHEN '.$productId.' THEN '.$i;
        }
        $orderString[] = 'END';
        $orderString = implode(' ', $orderString);
        $collection->addAttributeToFilter('entity_id', array('in' => $productIds));
        $collection->getSelect()->order(new \Zend_Db_Expr($orderString));
        return $collection;
    }

}

-3

समाधान मिल गया!

कैटलॉग में एक फ़िल्टर डालें: मात्रा: 0.0000 - 0.0000!

फिर सभी का चयन करें, एक्शन> अपडेट एट्रीब्यूट्स> एडवांस्ड इन्वेंट्री> स्टॉक की उपलब्धता (बदलाव पर क्लिक करें)> स्टॉक से बाहर का चयन करें> सेव करें फिर रिइंडेक्स और उत्पाद चले गए :)


और विन्यास योग्य उत्पादों के लिए?
फ्रेंक गार्नियर

-3

नेमस्पेस विक्रेता \ मॉड्यूल \ हेल्पर;

वर्ग डेटा \ Magento \ फ्रेमवर्क \ App \ Helper \ AbstractHelper {का विस्तार करता है

protected $_stockItemRepository;
protected $_scopeConfig;
protected $_storeScope;

public function __construct(\Magento\CatalogInventory\Model\Stock\StockItemRepository $_stockItemRepository, \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig)
{
    $this->_stockItemRepository = $_stockItemRepository;
    $this->_scopeConfig = $scopeConfig;
    $this->_storeScope = \Magento\Store\Model\ScopeInterface::SCOPE_STORE;
}


public function getIdsToLastStock($ids){
    if($this->_scopeConfig->getValue('module/vendor_module/active',$this->_storeScope)==1) {
        $products = array();
        $productIds = array();
        foreach ($ids as $id) {
            try {
                $stockItem = $this->_stockItemRepository->get($id);
                $products[] = array('id' => $id, 'stock' => $this->checkIfAvailableInStock($stockItem));
            } catch (\Exception $ex) {
                $products[] = array('id' => $id, 'stock' => 0);
            }
        }

        if (count($products) > 0) {
            foreach ($products as $id => $value) {
                $names[$id] = $value['stock'];
            }
            $keys = array_keys($products);
            array_multisort(
                $names, SORT_ASC, SORT_NUMERIC, $products, $keys
            );
            $result = array_combine($keys, $products);
            foreach ($result as $product) {
                $productIds[] = intval($product['id']);
            }
            return $productIds;
        } else {
            return $ids;
        }
    }
    return $ids;
}


private function checkIfAvailableInStock($item){
    if($item->getIsInStock()){
        if($item->getQty()>0)
            return 0;
    }
    return 1;
}

}

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