:::: MENU ::::
Posts tagged with: extension

Magento 2 shipping extensions

Today we will discuss about Free magento 2 shipping extensions.In this tutorial we will discuss available free magento 2 shipping extensions.This tutorial just have information of free extensions that are available on magento marketplace or any other extension provider.I have tried to list a few.So let’s start with our list.

Free magento 2 Shipping extensions

Magento provides its own shipping methods.Yet here we will discuss free magento shipping extensions.Because these are available for free so anyone can use them.Lets have a look.

Shipping Flat Rate5

This is an upgraded extension that allows the merchant to offer a single flat rate shipping option to their Magento store by serving multiple flat rate methods based on different prices and conditions. This extension overcomes the limitation of having only one flat rate shipping method available in Magento.

Key features:

  • Complete backend configuration
  • Create 5 flat rate shipping methods with different prices and conditions
  • Magento Multi-Store full support and Multiple Currencies as well
  • Select admin section of shipping methods
  • Shipping methods a enable/disable setting
  • Set minimum/maximum order amount for free shipping feature
  • Flat rate shipping methods in fixed manner
  • Dispaly diferent error message for specific shipping method.

Extension Link

ShipRocket

It is a unique E-commerce Shipping Solution which gives access to multiple courier partners on a single platform. With Shiprocket, merchants can automate their shipping seamlessly without any technical know how.
Shiprcoket offers four plans:

  • Lite
  • Basic
  • Advanced
  • Pro

Key features:

  • Automatic Order Sync
  • Automatic shipping status sync
  • Catalog and Inventory sync

Extension Link

MatrixRate Table Rate Shipping

The MatrixRate shipping extension enables you to offer multiple shipping options to customers based on their location.

Key features:

  • The most popular multiple table rates extension for Magento
  • Display multiple delivery methods
  • Customize shipping rates based on destination
  • Customize shipping rates based on cart weight, subtotal or quantity
  • Pattern-based zipcode filtering to determine shipping charges
  • Supports zipcode numerical ranges (e.g. 5000-6000)
  • Proven success across the world – used widely in the UK, Europe, US and Australia
  • Excellent documentation, including walkthrough examples

Extension Link

bpost Shipping Manager

This module implements 5 new shipping methods in Magento. The merchant can create bpost shipping and return labels in the administration panel of Magento. These labels can be generated in bulk or for each order separately.The tracking numbers are automatically filled in.

Key features:

  • Receive your parcel at home or at the office (national or international)
  • Over 1.250 locations (pick-up points) nearby home or the office
  • Pick-up your parcel whenever you want, thanks to the 24/7 service of bpost (parcel locker)
  • Pick-up your parcel on your own shops thanks to Click&Collect delivery method

Extension Link

Shipping Easy

Your orders will automatically download from Magento to ShippingEasy, where powerful automation streamlines carrier/service selection and printing of shipping labels, packing slips, and pick lists, with carrier and tracking information automatically sent back to Magento. Includes full support for leading carriers: USPS, UPS, FedEx, and DHL.

Key features:

  • Savings add up quickly using ShippingEasy
  • Save time on multichannel order fulfillment
  • Streamline inventory processes with Inventory Management
  • Increase sales with Customer Marketing
  • A powerful enterprise platform for high-volume shippers

Extension Link

Advanced Shipping

With Advanced Shipping, you can set shipping fees by using almost all the variables available, such as destination, weight, price, quantity, categories, product attributes, item options, the customer group, customer attributes, coupon codes, Magento custom variables, date, etc.

Key features:

  • Manage one shipping mode or carrier
  • Several conditional shipping methods
  • Shipping fees based on destination, weight, price, quantity
  • Shipping fees based on the customer group or customer attribute
  • Shipping fees based on categories, product attributes or item options
  • Shipping fees based on custom variables, the coupon code, the date
  • Shipping fees based on formulas combining all the variables you need
  • Filtering zip codes with regular expressions
  • Extension used in many countries in the world
  • Documentation in english

Extension Link

Similarly there are many other extensions available. I tried to list a few. I hope this tutorial help you in any way.

Please feel free to drop any suggestions or queries in comments section. It will be highly appreciated.

Author: Qaisar Satti
Category: Magento 2
Last Modified: October 22, 2018


Magento shipping extensions

Today we will discuss about Free magento shipping extensions.In this tutorial we will discuss available free magento shipping extensions.This tutorial just have information of free extensions that are available on magento marketplace or any other extension provider.I have tried to list a few.So let’s start with our list.

Free magento Shipping extensions

Magento provides its own shipping methods.Yet here we will discuss free magento shipping extensions.Because these are available for free so anyone can use them.Lets have a look.

ShipperHQ

ShipperHQ provides you the options to fully control and customize your shipping rates like never before. You define the carriers to use, the shipping methods that apply, and the unique rules of your own rate structure.

Key features:

  • Multi Carrier Support
  • Fully Customizable Rate Management
  • Dimensional Shipping
  • Multi-Origin Shipping
  • Date & Time

Extension Link

R+L Carriers Freight Shipping

R+L Carriers is an American private freight shipping company who provides freight services such as LTL, Truckload, Logistics, and more.Freight shipping is used when large and heavy items need to be shipped.This extension provides the integration of R+L Carriers Freight to show freight shipping quotes and delivery tracking on your Magento® store.This extension fetch live freight rates from R+L Carriers using their available Rate Quote API.

Key features:

  • Retrieve live rates from the R+L Carriers freight
  • Supports accessorial services and can be manage from the admin
  • Set Min/Max package weight to show freight rates from R+L Carriers
  • Support all product types
  • Support Magento® multi store functionality
  • Assign a store freight class or assign freight classes per product basis

Extension Link

ShipStation

ShipStation is a powerful, yet easy to use web-based, multi-channel, multi-carrier shipping solution designed to facilitate the order fulfillment process for your Magento store. ShipStation downloads your orders in real-time, allows you to create USPS, UPS, FedEx, DHL, Royal Mail, Canada Post, Australia Post, and more shipping labels and packing slips in batch, and communicates tracking information to your customers.

Key features:

  • Print Shipping Labels and Packing Slips in Batch
  • Consolidate Orders from Multiple Channels
  • Unlimited Selling Channels
  • No Software to Install
  • Free USPS Provider Account

Extension Link

Shipwire Fulfillment Platform

This extension provides Magento Enterprise and Community edition merchants with e-commerce order fulfillment, shipping software, and cloud-based logistics services from fulfillment centers around the world.Also the Shipwire Platform helps brands grow sales, expand into new markets, and delight their customers by eliminating shipping and storage hassles.

Key features:

  • Order entry sync
  • Order tracking
  • Inventory status
  • Shipping rates

Extension Link

Shipping Tracker

This versatile extension lets you customize the shipment tracking links provided to your customers. Shipping Tracker is easy to set up and supports up to five carriers as long as they provide a tracking URL and reference number. Shipping Tracker uses the Magento mechanism to add a tracking ID to a shipment. When you create a shipment, select a tracking carrier you have configured and add the tracking ID.

Key features:

  • Embeds shipment tracking links in shipping confirmation emails
  • Completely generic – not tied to any carrier
  • Supports up to five carriers at any one time
  • Features a dropdown menu with known tracking URLs from major shipping carriers
Extension Link

Similarly there are many other extensions available. I tried to list a few. I hope this tutorial help you in any way.

Please feel free to drop any suggestions or queries in comments section. It will be highly appreciated.

Author: Qaisar Satti
Category: Magento 1
Last Modified: October 22, 2018


Magento 2 addFieldToFilter

Today we discuss Magento 2 addFieldToFilter. addFieldToFilter is a method that can be use to filter collections in Magento 2. That will be use in product collection, category collection, order collection customer collection and other collection too. addFieldToFilter is adding WHERE condition in Mysql question to get collection.

addFieldToFilter condition

There are many condition you can use with addFieldToFilter. Example of condition equal, not equal, like , not like, in, not in, null, not null, greater than , less than , greater than equal to and less than equal to.

protected $_productCollectionFactory;

public function __construct(
        \Magento\Catalog\Model\ResourceModel\Product\CollectionFactory $productFactory
    ) {
        $this->_productCollectionFactory = $productFactory;
    }
    public function getProductCollection()
    {
      return   $this->_productCollectionFactory->create()->addAttributeToSelect('*')->addFieldToFilter('sku’,'test');
     
     }

Equal: eq

Now we use equal to filter production collection.

$this->_productCollectionFactory->addFieldToFilter('status', array('eq' => 1)); // Using the operator
$this->_productCollectionFactory->addFieldToFilter('status', 1); // Without using the operator

Not Equals – neq

Now we use not equal to filter production collection.

$this->_productCollectionFactory->addFieldToFilter('sku', array('neq' => 'test-product'));

Like – like

Now we use Like to filter production collection.

$this->_productCollectionFactory->addFieldToFilter('sku', array('like' => 'UX%'));

Not Like – nlike

Now we use not like to filter production collection.

$this->_productCollectionFactory->addFieldToFilter('sku', array('nlike' => 'err-prod%'));

In – in

Now we use In to filter production collection.

$this->_productCollectionFactory->addFieldToFilter('entity_id', array('in' => array(1,4,98)));

Not In – nin

Now we use not In to filter production collection.

$this->_productCollectionFactory->addFieldToFilter('entity_id', array('nin' => array(1,4,98)));

NULL – null

Now we use null to filter production collection.

$this->_productCollectionFactory->addFieldToFilter('description', array('null' => true));

Not NULL – notnull

Now we use not null to filter production collection.

$this->_productCollectionFactory->addFieldToFilter('description', array('notnull' => true));

Greater Than – gt

Now we use greater than to filter production collection.

$this->_productCollectionFactory->addFieldToFilter('entity_id', array('gt' => 5));

Less Than – lt

Now we use less than to filter production collection.

$this->_productCollectionFactory->addFieldToFilter('entity_id', array('lt' => 5));

Greater Than or Equals To- gteq

Now we use greater than to filter production collection.

$this->_productCollectionFactory->addFieldToFilter('entity_id', array('gteq' => 5));

Less Than or Equals To – lteq

Now we use less than equal to filter production collection.

$this->_productCollectionFactory->addFieldToFilter('entity_id', array('lteq' => 5));
Author: Qaisar Satti
Category: Magento 2
Last Modified: July 30, 2018


Magento 2 programmatically add custom order status

Today we talk about how in Magento 2 programmatically add custom order status. This tutorial includes set custom order status and also set the default magento order status too. You have to inject Magento\Sales\Model\Order to set order status. So let start with our example.

Dependency Injection

protected $orderFactory;
public function __construct(
           
        \Magento\Sales\Model\OrderFactory $orderFactory,

    ) {


        $this->orderFactory = $orderFactory;

    }

public function customOrderStatus(){
        $orderId = 3;
        $order = $this->orderFactory->create()->load($orderId);
        $state = $order->getState();
        $status = 'custom_cancel';
        $comment = 'This is test comment';
        $isNotified = false;
        $order->setState($state);
        $order->setStatus($status);
        $order->addStatusToHistory($order->getStatus(), $comment);
        $order->save();
}

Object Manager

        $orderId = 3;
        $objectManager = \Magento\Framework\App\ObjectManager::getInstance();
        $order = $objectManager->create('\Magento\Sales\Model\Order')->load($orderId);
        $state = $order->getState();
        $status = 'custom_cancel';
        $comment = '';
        $isNotified = false;
        $order->setState($state);
        $order->setStatus($status);
        $order->addStatusToHistory($order->getStatus(), $comment);
        $order->save();
Author: Qaisar Satti
Category: Magento 2
Last Modified: July 12, 2018


Magento 2 shopping cart items subtotal grand total billing and shipping address

Today we talk about how in Magento 2 shopping cart items subtotal grand total billing shipping address. In this tutorial you will learn how to get data of shopping cart item detail example product name, product sku, price and quantity and cart total item count, cart item total quantity, cart subtotal, cart grand total also quote shipping address and quote billing address. There are two method of get the cart detail. One is inject the class \Magento\Checkout\Model\Session in your block and get data from it. Second is use the object manager to get data.

Dependency Injection

<?php
namespace QaisarSatti\HelloWorld\Block;
class HelloWorld extends \Magento\Framework\View\Element\Template
{
 
    public $_checkoutSession;
 
    public function __construct(
        \Magento\Checkout\Model\Session $checkoutSession,

    ) {
        $this->_checkoutSession = $checkoutSession;
 
    }
 
}

Get cart information in phtml file.

//Get session object in phtml file
$getCurrentQuote = $block->_checkoutSession->getQuote();
$getAllitems = $getCurrentQuote->getAllItems();
 
foreach($getAllitems as $item) {
    echo 'Product Id: ' . $item->getProductId() . '<br />';
    echo 'Name: ' . $item->getName() . '<br />';
    echo 'Sku: ' . $item->getSku() . '<br />';
    echo 'Quantity: ' . $item->getQty() . '<br />';
    echo 'Price: ' . $item->getPrice() . '<br />';
    echo "<br /><br />";
}
 
// Get cart total items and total quantity
$totalItems = $getCurrentQuote->getItemsCount();
$totalQuantity = $getCurrentQuote->getItemsQty();
 
//get cart subtotal and grand total
$subTotal = $getCurrentQuote->getSubtotal();
$grandTotal = $getCurrentQuote->getGrandTotal();
 
//get cartbilling and shipping addresses
$billing = $getCurrentQuote->getBillingAddress();
$shipping = $getCurrentQuote->getShippingAddress();

Object Manager

$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$getCurrentQuote = $objectManager->get('\Magento\Checkout\Model\Session');

$getAllitems = $getCurrentQuote->getAllItems();
 
foreach($getAllitems as $item) {
    echo 'Product Id: ' . $item->getProductId() . '<br />';
    echo 'Name: ' . $item->getName() . '<br />';
    echo 'Sku: ' . $item->getSku() . '<br />';
    echo 'Quantity: ' . $item->getQty() . '<br />';
    echo 'Price: ' . $item->getPrice() . '<br />';
    echo "<br /><br />";
}
 
// Get cart total items and total quantity
$totalItems = $getCurrentQuote->getItemsCount();
$totalQuantity = $getCurrentQuote->getItemsQty();
 
//get cart subtotal and grand total
$subTotal = $getCurrentQuote->getSubtotal();
$grandTotal = $getCurrentQuote->getGrandTotal();
 
//get cartbilling and shipping addresses
$billing = $getCurrentQuote->getBillingAddress();
$shipping = $getCurrentQuote->getShippingAddress();
Author: Qaisar Satti
Category: Magento 2
Last Modified: September 26, 2018


Magento 2 redirect user from observer to custom controller

Today we talk about how in Magento 2 redirect user observer custom controller. This tutorial includes example of redirect user from observer. Using this example you can redirect from block, helper and model . You need to inject \Magento\Framework\App\Response\Http class to make the redirection from anywhere.So let’s start with our example.

<?php
namespace QaisarSatti\HellowWorld\Observer;
use \Magento\Framework\Event\Observer;
use \Magento\Framework\Event\ObserverInterface;
class [YourClass] implements ObserverInterface {

   protected $_redirect;
   protected $_url;
   public function __construct(


       \Magento\Framework\UrlInterface $url,
       \Magento\Framework\App\Response\Http $redirect,

   ) {

       $this->_url = $url;
        $this->_redirect = $redirect;

    }
    public function execute(Observer $observer) {
             $event = $observer->getEvent();
             $CustomRedirectionUrl =          $this->_url->getUrl('test/test/test');
             $this->_redirect->setRedirect($CustomRedirectionUrl);

    }
}

Note: You can use this example with any observer event.

Author: Qaisar Satti
Category: Magento 2
Last Modified: July 12, 2018


Magento 2 image upload system configuration

Today we talk about how in Magento 2 image upload system configuration. This tutorial include image upload in system configuration. Sometime you need to add general image for a module, a company logo , a marker or a custom theme. With the help of following code you would be able to add a single image in system configurations.

Add the image field in system configuration.

<field id="image" translate="label comment" type="image" sortOrder="50" showInDefault="1" showInWebsite="1" showInStore="1">
                    <label>Store Image</label>
                    <backend_model>QaisarSatti\HelloWorld\Model\Config\Backend\Image</backend_model>
                      <base_url type="media" scope_info="1">image</base_url>
 </field>

Now create model for image upload.

<?php

namespace QaisarSatti\HelloWorld\Model\Config\Backend;

class Image extends \Magento\Config\Model\Config\Backend\Image
{
    /**
     * The tail part of directory path for uploading
     *
     */

    const UPLOAD_DIR = 'store'; // Folder save image

    /**
     * Return path to directory for upload file
     *
     * @return string
     * @throw \Magento\Framework\Exception\LocalizedException
     */

    protected function _getUploadDir()
    {
        return $this->_mediaDirectory->getAbsolutePath($this->_appendScopeInfo(self::UPLOAD_DIR));
    }

    /**
     * Makes a decision about whether to add info about the scope.
     *
     * @return boolean
     */

    protected function _addWhetherScopeInfo()
    {
        return true;
    }

    /**
     * Getter for allowed extensions of uploaded files.
     *
     * @return string[]
     */

    protected function _getAllowedExtensions()
    {
        return ['jpg', 'jpeg', 'gif', 'png', 'svg'];
    }
}
Author: Qaisar Satti
Category: Magento 2
Last Modified: July 12, 2018


Pages:1234