when I am check using object manager it gives me warning that The direct use of ObjectManager is discouraged. Inject necessary dependencies via constructor". How to solve this problem and I also want to know that how to call block file's objectmanager in template file. I am checking customer is login or not using below code.
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$customerSession = $objectManager->get('Magento\Customer\Model\Session');
if ($customerSession->isLoggedIn()) {
//my custom code goes here;
}
I am already using below way but it doesn't work for me.
private $_objectManager;
public function __construct(
\Magento\Framework\ObjectManagerInterface $objectmanager)
{
$this->_objectManager = $objectmanager;
}
$customerSession = $objectmanager->get('Magento\Customer\Model\Session');
if ($customerSession->isLoggedIn()) {
//my custom code goes here;
}
\Magento\Customer\Model\Sessionclass instead ofobjectManager. Check my updated answer by using customer session class. Try after flush cache and removingvar/generationfolder – Prince Patel Aug 17 '17 at 06:19