Live Support(9am to 6pm)PST
  1. How to update magento 2.3.0 to 2.3.1

    Upgrade Magento version 2.3.0 to 2.3.1 follow below steps:

    Magento 2 Version Upgrade Commands.

    1) php bin/magento maintenance:enable

    2) composer require magento/product-community-edition 2.3.1 --no-update

    3) composer update

    4) rm -rf var/* pub/static/* generated/*

    5) php bin/magento setup:upgrade

    6) php bin/magento setup:static-content:deploy -f

    7) php bin/magento setup:di:compile

    8) php bin/magento indexer:reindex

    9) php bin/magento cache:clean

    10) php bin/magento cache:flush

    After upgrade, check your Magento version with the following command:

    11) php bin/magento --version

    12) php bin/magento maintenance:disable


    Read more »
  2. How to create order programmatically Magento 2

    How to create order programmatically Magento 2

    Now, you can create quote and order with the below content:

         'currency_id'  => 'USD',
         'email'        => '', //buyer email id
         'shipping_address' =>[
                'firstname'    => 'John', //address Details
                'lastname'     => 'Doe',
                        'street' => '123 Demo',
                        'city' => 'Magenuts',
                'country_id' => 'US',
                'region' => 'xxx',
                'postcode' => '10019',
                'telephone' => '0123456789',
                'fax' => '32423',
                'save_in_address_book' => 1
       'items'=> [ //array of product which order you want to create

    Continuing to declare the order in the module helper file by the following function:

    namespace YourNameSpace\ModuleName\Helper;
    class Data extends \Magento\Framework\App\Helper\AbstractHelper
        * @param Magento\Framework\App\Helper\Context $context
        * @param Magento\Store\Model\StoreManagerInterface $storeManager
        * @param Magento\Catalog\Model\Product $product
        * @param Magento\Framework\Data\Form\FormKey $formKey $formkey,
        * @param Magento\Quote\Model\Quote $quote,
        * @param Magento\Customer\Model\CustomerFactory $customerFactory,
        * @param Magento\Sales\Model\Service\OrderService $orderService,
        public function __construct(
            \Magento\Framework\App\Helper\Context $context,
            \Magento\Store\Model\StoreManagerInterface $storeManager,
            \Magento\Catalog\Model\Product $product,
            \Magento\Framework\Data\Form\FormKey $formkey,
            \Magento\Quote\Model\QuoteFactory $quote,
            \Magento\Quote\Model\QuoteManagement $quoteManagement,
            \Magento\Customer\Model\CustomerFactory $customerFactory,
            \Magento\Customer\Api\CustomerRepositoryInterface $customerRepository,
            \Magento\Sales\Model\Service\OrderService $orderService  
        ) {
            $this->_storeManager = $storeManager;
            $this->_product = $product;
            $this->_formkey = $formkey;
            $this->quote = $quote;
            $this->quoteManagement = $quoteManagement;
            $this->customerFactory = $customerFactory;
            $this->customerRepository = $customerRepository;
            $this->orderService = $orderService;
         * Create Order On Your Store
         * @param array $orderData
         * @return array
        public function createMageOrder($orderData) {
            $websiteId = $this->_storeManager->getStore()->getWebsiteId();
            $customer->loadByEmail($orderData['email']);// load customet by email address
                //If not avilable then create this customer 
            $quote=$this->quote->create(); //Create object of quote
            $quote->setStore($store); //set store for which you create quote
            // if you have allready buyer id then you can load customer directly 
            $customer= $this->customerRepository->getById($customer->getEntityId());
            $quote->assignCustomer($customer); //Assign quote to customer
            //add items in quote
            foreach($orderData['items'] as $item){
            //Set Address to quote
            // Collect Rates and Set Shipping & Payment Method
                            ->setShippingMethod('freeshipping_freeshipping'); //shipping method
            $quote->setPaymentMethod('checkmo'); //payment method
            $quote->setInventoryProcessed(false); //not effetc inventory
            $quote->save(); //Now Save quote and your quote is ready
            // Set Sales Order Payment
            $quote->getPayment()->importData(['method' => 'checkmo']);
            // Collect Totals & Save Quote
            // Create Order From Quote
            $order = $this->quoteManagement->submit($quote);
            $increment_id = $order->getRealOrderId();
                $result['order_id']= $order->getRealOrderId();
                $result=['error'=>1,'msg'=>'Your custom message'];
            return $result;

    When you have done the above instruction, congratulate you have created Magento 2 orders programmatically!

    Read more »
  3. Magento 2 admin panel blank page

    This is Magento bug. Wrong paths to Windows are generated. The fixed fix is

    Magento 2.3.0


    the string

    $realPath = $this->fileDriver->getRealPath($path);

    to replace

    $realPath = str_replace('\\', '/', $this->fileDriver->getRealPath($path));

    Magento 2.2.7



    protected function isPathInDirectories($path, $directories)
        if (!is_array($directories)) {
            $directories = (array)$directories;
        foreach ($directories as $directory) {
            if (0 === strpos($this->fileDriver->getRealPath($path), $directory)) {
                return true;
        return false;

    to replace

    protected function isPathInDirectories($path, $directories)
            $realPath = str_replace('\\', '/', $this->fileDriver->getRealPath($path));
            if (!is_array($directories)) {
                $directories = (array)$directories;
            foreach ($directories as $directory) {
                if (0 === strpos($realPath, $directory)) {
                    return true;
            return false;
    Read more »
  4. Magento 2 Get Review, Rating Collection

    As you might have already known, review and rating plays an important role in every online business, especially those which runs on Magento 2 platform as it related directly to the reputation of stores as well as the purchase decisions of customers.

    Therefore, in today post, I will provide you the simplest way to get review, rating collection in Magento 2.



    How to get review, rating collection

    To get product review, ratting collection, you need to create a ProductReviews.php file. Follow this path Mageplaza/HelloWorld/Model/ProductReviews.php and here are how you are going to do it.

    namespace Mageplaza\HelloWorld\Model;
    use Magento\Framework\Model\AbstractModel;
    class ProductReviews extends AbstractModel{
        protected $_ratingFactory;
        protected $_productFactory;
        protected $_ratingFactory;
        protected $_reviewFactory;
        public function __construct(
                \Magento\Store\Model\StoreManagerInterface $storeManager,
                \Magento\Catalog\Model\ProductFactory $productFactory,
                \Magento\Review\Model\RatingFactory $ratingFactory,
                \Magento\Review\Model\ResourceModel\Review\CollectionFactory $reviewFactory,
            ) {
                $this->_storeManager = $storeManager;
                $this->_productFactory = $productFactory;
                $this->_ratingFactory = $ratingFactory;
                $this->_reviewFactory = $reviewFactory;
        public function getReviewCollection($productId){
            $collection = $this->_reviewFactory->create()
        public function getRatingCollection(){
            $ratingCollection = $this->_ratingFactory->create()
            return $ratingCollection->getData();


    Above is the instruction on how to get product review and rating collection in Magento 2. I hope this post is helpful for you when getting and managing the collection.

    Read more »
  5. Magento 2 How to Add Admin User via Command Line

    How to Add Admin User via Command Line

    Go to Magento admin root folder and show usage:



    php bin/magento admin:user:create --help


      admin:user:create [options]
          --admin-user=ADMIN-USER                    (Required) Admin user
          --admin-password=ADMIN-PASSWORD            (Required) Admin password
          --admin-email=ADMIN-EMAIL                  (Required) Admin email
          --admin-firstname=ADMIN-FIRSTNAME          (Required) Admin first name
          --admin-lastname=ADMIN-LASTNAME            (Required) Admin last name
          --magento-init-params=MAGENTO-INIT-PARAMS  Add to any command to customize Magento initialization parameters
                                                     For example: "MAGE_MODE=developer&MAGE_DIRS[base][path]=/var/www/[cache][path]=/var/tmp/cache"
      -h, --help                                     Display this help message
      -q, --quiet                                    Do not output any message
      -V, --version                                  Display this application version
          --ansi                                     Force ANSI output
          --no-ansi                                  Disable ANSI output
      -n, --no-interaction                           Do not ask any interactive question
      -v|vv|vvv, --verbose                           Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
      Creates an administrator

    Let create a admin account with the following information:

    • User: mageplaza
    • Password: WeLoveMagento
    • Email:
    • First Name: Mageplaza
    • Last Name: Family

    So we the command line is:

    php bin/magento admin:user:create --admin-user=mageplaza --admin-password=WeLoveMagento --admin-firstname=Mageplaza --admin-lastname=Family

    It shows an error: Your password must include both numeric and alphabetic characters. The password should be more complex.

    • Password: WeLoveMagento123
    php bin/magento admin:user:create --admin-user=mageplaza --admin-password=WeLoveMagento123 --admin-firstname=Mageplaza --admin-lastname=Family

    And I created successfully a new admin account, it returned message:

    Created Magento administrator user named mageplaza

    Now to go to admin login page, and fill the above information

    magento 2 login

    and I’m in now, see this screenshot

    magento 2 admin pannel

    Read more »