আমি এটি সামনে বা ব্যাকএন্ড কিনা তা যাচাই করতে চাই।
আমি এটা কিভাবে করবো?
আমি এটি সামনে বা ব্যাকএন্ড কিনা তা যাচাই করতে চাই।
আমি এটা কিভাবে করবো?
উত্তর:
আরও পড়ুন: ব্লগ.মেজপ্রিন্স.কম
অবজেক্টম্যানেজারের সাথে
$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 কোডিং মান অনুযায়ী ফাইলগুলিতে সরাসরি অবজেক্ট ম্যানেজার উদাহরণ ব্যবহার করবেন না
লোকেরা ইতিমধ্যে প্রশ্নের উত্তর দিয়েছে। আমি এটি আরও ভাল করে দিচ্ছি
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;
}
কোড নীচে ব্যবহার করুন
$objectmanager = \Magento\Framework\App\ObjectManager::getInstance();
$state = $objectmanager->get('Magento\Framework\App\State');
if($state->getAreaCode() == 'frontend')
//frontend
else
//backend
আপনি প্রশাসনিক অঞ্চলে আছেন কিনা তা পরীক্ষা করার জন্য নীচের কোড ব্যবহার করে দেখুন
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();
}