ম্যাজেন্টো 2: এটি অগ্রভাগ বা ব্যাকএন্ড হয় তা পরীক্ষা করে দেখুন?


উত্তর:


22

আরও পড়ুন: ব্লগ.মেজপ্রিন্স.কম

অবজেক্টম্যানেজারের সাথে

$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$state =  $objectManager->get('Magento\Framework\App\State');
echo $state->getAreaCode(); //frontend or adminhtml or webapi_rest

নির্ভরতা ইনজেকশন সহ

protected $_state;

public function __construct (
    \Magento\Framework\App\State $state
) {
    $this->_state = $state;
}

public function getArea()
{
    return $this->_state->getAreaCode();
}

দ্রষ্টব্য: ম্যাজেন্টো 2 কোডিং মান অনুযায়ী ফাইলগুলিতে সরাসরি অবজেক্ট ম্যানেজার উদাহরণ ব্যবহার করবেন না


1
নির্ভরতা ইনজেকশনটির জন্য +1
PЯINCƏ

+1 @ পিনসিƏ ম্যাজেন্টো কোডিং স্ট্যান্ডার্ড অনুসারে কনস্ট্রাক্ট পদ্ধতিতে পূর্ণ শ্রেণির নাম ব্যবহার করবেন না। ব্যবহারের বিবৃতিটি ব্যবহার করে পূর্ণ শ্রেণি ঘোষণা করুন এবং () পদ্ধতিটি নির্মাণের জন্য কেবল শ্রেণীর নাম ঘোষণা করুন।
রাকেশ জেসাদিয়া

1
@ রকেশ জেসাদিয়া আমি আপনার সাথে একমত নই, দয়া করে এই প্রশ্নটি দেখুন: magento.stackexchange.com/questions/106096/…
পিনসি

6

লোকেরা ইতিমধ্যে প্রশ্নের উত্তর দিয়েছে। আমি এটি আরও ভাল করে দিচ্ছি

const AREA_CODE = \Magento\Framework\App\Area::AREA_ADMINHTML;

private $_state;

public function __construct (
    \Magento\Framework\App\State $state
) {
    $this->_state = $state;
}

public function isAdmin()
{
    $areaCode = $this->_state->getAreaCode();
    return $areaCode == self::AREA_CODE;
}

হাই @ দিনেশ, আমরা কি কেবল অ্যাডমিন পক্ষের জন্য রক্ষণাবেক্ষণ মোড সক্ষম করতে পারি?
জাফর পিনজার

না, সেই বিকল্পটি উপলভ্য নয়।
দীনেশ যাদব

3

কোড নীচে ব্যবহার করুন

$objectmanager = \Magento\Framework\App\ObjectManager::getInstance();
$state =  $objectmanager->get('Magento\Framework\App\State');
if($state->getAreaCode() == 'frontend')
  //frontend
else
  //backend

2

আপনি প্রশাসনিক অঞ্চলে আছেন কিনা তা পরীক্ষা করার জন্য নীচের কোড ব্যবহার করে দেখুন

function df_is_admin($store = null) {
    /** @var \Magento\Framework\ObjectManagerInterface $om */
    $om = \Magento\Framework\App\ObjectManager::getInstance();
    /** @var \Magento\Framework\App\State $state */
    $state =  $om->get('Magento\Framework\App\State');
    return 'adminhtml' === $state->getAreaCode();
}

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