অক্ষম পণ্যগুলির জন্য স্বয়ংক্রিয় 301 পুনর্নির্দেশ


14

আমি ম্যাজেন্টো 1.7 তে একটি কাস্টম পণ্য প্রকার (ইভেন্ট) এর জন্য স্বয়ংক্রিয় পুনঃনির্দেশগুলি যুক্ত করার চেষ্টা করছি। কোনও ইভেন্টের তারিখ পেরিয়ে গেলে আমি পণ্যটিকে অক্ষম হিসাবে চিহ্নিত করছি যাতে ব্যবহারকারীরা ভুল পৃষ্ঠাতে না যায় এবং আমি ভবিষ্যতের ক্লাসগুলির তালিকায়ও পুনর্নির্দেশ করতে চাই যাতে আমার 404 ত্রুটির আধিক্য না থাকে সাইট।

404 নিক্ষিপ্ত হবে এমন পণ্য পাওয়ার জন্য কী কোনও অনুষ্ঠানের শোনার কোনও উপায় আছে বা আমি কোথাও এই জন্য কোনও মুক্ত বর্ধনের সন্ধান করব? আমি কিছুক্ষণ অনুসন্ধান করেছি এবং এমন কোনও এক্সটেনশান ভাল দেখায় নি।

উত্তর:


17

ম্যাজেন্টো.স্ট্যাকএক্সচেঞ্জে স্বাগতম!

দুর্ভাগ্যক্রমে, বাইরের কোনও মডিউল নেই যা আপনার পক্ষে এটি করবে।

আমি আপনাকে বিকল্প হিসাবে এটি পুনর্বিবেচনা করতে উত্সাহিত করব। আপনার ব্যবহারকারীরা বোকা নয় (তারা যত নির্বোধের সাথে আচরণ করবে না) - অনেকগুলি, বহু বছরের ইকমার্স বিশ্লেষণ আমাকে দেখিয়েছে যে, প্রায় 80% সময়ের মধ্যে, 404-এ পৌঁছানো ব্যবহারকারীরা কয়েক সেকেন্ডের মধ্যেই সাইট-অনুসন্ধান বারটিতে আঘাত করবে। আরও ভাল শ্রেণিবদ্ধকরণ (পড়ুন: কীওয়ার্ড স্টাফিং) সহ আপনার সাইট অনুসন্ধান ঠিক করার জন্য আপনার প্রচেষ্টাটি রাখুন।

গুগল সূচী চিরকালের জন্য নয়। আপনি যদি 404s এর থেকে ভয় পান তবে আপনার 404 পৃষ্ঠা নিজেই সজ্জিত করার কথা বিবেচনা করুন। 404 এ আঘাত করে অসুবিধাগুলি যারা 5-10% ছাড় কুপন অফার করে আপনার রূপান্তর সম্ভাবনা বৃদ্ধি করুন। বা আরও ভাল, পণ্য পৃষ্ঠাগুলি অক্ষম করবেন না। পরিবর্তে, ক্রয় করার ক্ষমতা অক্ষম করুন (যেমন: স্টক আউট হিসাবে সেট) এবং সম্পর্কিত স্ট্যাটিক ব্লক / লিঙ্ক সরবরাহ করে যা সম্পর্কিত পৃষ্ঠা / বিভাগে লিঙ্ক করে।

আমি পাত্তা দিচ্ছি না, কেবল আমাকে কোড দিন কারণ আন্তঃ

এটি পর্যবেক্ষকের সাথে একটি মডিউলকে কোডিং করা সহজ যা এটি আপনার জন্য তুচ্ছ handle

কনফিগ.এক্সএমএলে ইভেন্টের উপাধি:

<global>
    <events>
        <controller_action_postdispatch_catalog_product_view>
            <observers>
                <yourmodule_capcpv>
                    <class>YourCompany_YourModule_Model_Observer</class>
                    <method>catalogProductViewPostdispatch</method>
                </yourmodule_capcpv>
            </observers>
        </controller_action_postdispatch_catalog_product_view>
    </events>
</global>

অ্যাপ্লিকেশন / কোড / স্থানীয় / yourcompany / YourModule / মডেল / Observer.php:

<?php

class YourCompany_YourModule_Model_Observer
{
    public function catalogProductViewPostdispatch($observer)
    {
        $controller = $observer->getEvent()->getControllerAction();

        $product = Mage::registry('current_product');
        if($product->getStatus()!=Mage_Catalog_Model_Product_Status::STATUS_ENABLED){
            $action->getResponse()->setRedirect(/* your redirect URL here with Mage::getUrl() */);
        }
    }
}

1
ধন্যবাদ ফিলুইঙ্কল আমি চেষ্টা করব এবং ক্লায়েন্টকে আপনার প্রথম পরামর্শগুলি সহ যেতে রাজি করবো। আমি সম্মত হই যে 404 হাইজ্যাক করা সম্ভবত এটি খারাপ ফর্ম
কায়লুহব
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.