Magento2 এ স্থিত পদ্ধতিতে কীভাবে ওভাররাইড করা যায়


11

প্লাগিন ইন্টারসেপ্টর এবং অগ্রাধিকারের সাথে ওভাররাইড স্থিতিশীল পদ্ধতিতে কাজ করে না।

ওভাররাইড করতে প্রয়োজনের getOptionArray পদ্ধতি Magento \ ক্যাটালগ \ মডেল \ পণ্যের \ দৃশ্যমানতা একটি কাস্টম দৃশ্যমানতা ফিরতে

/**
     * Retrieve option array
     *
     * @return array
     */
    public static function getOptionArray()
    {
        return [
            self::VISIBILITY_NOT_VISIBLE => __('Not Visible Individually'),
            self::VISIBILITY_IN_CATALOG => __('Catalog'),
            self::VISIBILITY_IN_SEARCH => __('Search'),
            self::VISIBILITY_BOTH => __('Catalog, Search')
        ];
    }

অন্য কোন উপায়ে এ অর্জন করা যায়?


না। আমি কীভাবে একটি নতুন দৃশ্যমানতার বিকল্প যুক্ত করতে চাইছি তা জিজ্ঞাসা করছি। স্টেটিক পদ্ধতি হওয়ায় getOption অ্যারেটি ইন্টারসেপ্টর বা অগ্রাধিকার দিয়ে পরিবর্তন করা যায় না।
ব্যবহারকারী 3339988

দুঃখিত, আমি ভুল প্রশ্ন চিহ্নিত করেছি। এইটি আপনাকে magento.stackexchange.com/questions/134386/…
পি

যে আমার প্রশ্নের উত্তর দেয় না।
ব্যবহারকারী 3339988

যে কেউ? আমি এটির সাথে ২-৩ দিন আটকে ছিলাম। দৃশ্যমানতার বিকল্প যুক্ত করার কোনও বিকল্প উপায়?
ব্যবহারকারী 3339988

উত্তর:


1

কেবল ওভাররাইডিংই getOptionArray()যথেষ্ট নয় কারণ আপনি যদি ম্যাজেন্টো \ ক্যাটালগ \ মডেল \ পণ্য 10 107, 120 এবং 134 লাইনে দৃশ্যমান দেখতে পান তবে তার getOptionArray()সাথে selfকল করা হয় elf এবং আটকান getAllOption(), getAllOptions()getOptionText()আপনার উপেক্ষিত মডেল শ্রেণীতে (একই যেখানে আপনি ওভাররাইড আছে getOptionArray())

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.