Can’t see price in configurable products after csv import

Please do reindex all.

Advertisements

Add dropdown on listing page for configurable product.


getTypeId() == 'configurable') : ?>
<form action="getAddUrl($_product)?>" method="post" id="p-getId()?>">

<div class="child-options">
getTypeId() == 'configurable') : $i=0;?&gt;
	getTypeInstance(true)-&gt;getConfigurableAttributes($_product) ?&gt;
	
		
			getProductAttribute();
			$allProducts = $_product-&gt;getTypeInstance(true)-&gt;getUsedProducts(null, $_product);
			$frontValues =array() ?&gt;
			&lt;select pid=&quot;getId()?&gt;" class="" name="super_attribute[getData('attribute_id')?&gt;]"&gt;Choose an Option...
				load($p-&gt;getId())?&gt;
				isSaleable()) continue;?&gt;
				getAttributeText($pAtt-&gt;getName()); ?&gt;
				
					
					currency($product_-&gt;getPrice(), true, false);?&gt;&lt;option 
					value="getData($pAtt-&gt;getData('attribute_code'))?&gt;"
					price=""&gt;
			

		
	
</div>

isSaleable()): ?&gt;
getTypeId() == 'configurable') : ?&gt;
&lt;button action=&quot;getAddUrl($_product)?&gt;?options=cart" data-id="getId()?&gt;" type="button" title="quoteEscape($this-&gt;__('Add to Cart')) ?&gt;" class="config-product button btn-cart"&gt;<span><span>__('Add to Cart') ?&gt;</span></span>

&lt;button type=&quot;button&quot; title=&quot;quoteEscape($this-&gt;__('Add to Cart')) ?&gt;" class="button btn-cart" onclick="setLocation('getAddToCartUrl($_product) ?&gt;?options=cart')"&gt;<span><span>__('Add to Cart') ?&gt;</span></span>



<span>__('Out of stock') ?&gt;</span>


getTypeId() == 'configurable') : ?&gt;
&lt;input name=&quot;product&quot; value=&quot;getId()?&gt;" type="hidden"&gt;


<span id="mce_SELREST_start" style="overflow:hidden;line-height:0;">&#65279;</span>

jQuery(document).ready(function($) { $('.child-options select').change(function() { var price = $(this).find('option:selected').attr('price'); var pid = $(this).attr('pid'); $('#product-price-'+ pid).find('span').text(price); }); $('.config-product').click(function(){ $.ajax({ url:$(this).attr('action'), data:$('#p-'+ $(this).attr('data-id')).serialize(), success:function(response){ var res = JSON.parse(response); console.log(res); }   }); });});

 

Steps to activate the paypal in magento2

Please follow below settings
Merchant Country : Change it to default
API Username
API Password
API Signature
Enable this Solution : yes
Enable In-Context Checkout Experience : no
Payment Action : Authorize
Payment Applicable From : all
Enable SSL verification : yes
Transfer Cart Line Items : yes
Transfer Shipping Options : no
Shortcut Buttons Flavor : Dynamic
Enable PayPal Guest Checkout : no
Require Customer’s Billing Address : no
Billing Agreement Signup :never
Skip Order Review Step :Yes

Paypal billing agrement settings

Enabled : yes
Payment Action :Authorization
Payment Applicable From :all
Transfer Cart Line Items :No
Allow in Billing Agreement Wizard :Yes

Add columns into the admin grid in Magento2

Follow below steps

1) Vendor/Module/view/adminhtml/ui_component/sales_order_grid.xml

<?xml version="1.0" encoding="UTF-8"?>
<listing xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Ui:etc/ui_configuration.xsd">
<columns name="sales_order_columns">
<actionsColumn name="shipment" class="Sinelogix\Zepo\Ui\Component\Listing\Column\Shipment">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="component" xsi:type="string">Vendor_Module/js/grid/columns/shipment</item>
<item name="indexField" xsi:type="string">entity_id</item>
<item name="sortable" xsi:type="boolean">false</item>
<item name="label" xsi:type="string" translate="true">Shipment</item>
<item name="sortOrder" xsi:type="number">13</item>
</item>
</argument>
</actionsColumn>
</columns>
</listing>

2) /Vendor/Module/Ui/Component/Listing/Column/Shipment.php

<?php namespace Sinelogix\Zepo\Ui\Component\Listing\Column; use \Magento\Sales\Api\OrderRepositoryInterface; use \Magento\Framework\View\Element\UiComponent\ContextInterface; use \Magento\Framework\View\Element\UiComponentFactory; use \Magento\Ui\Component\Listing\Columns\Column; use \Magento\Framework\Api\SearchCriteriaBuilder; use \Magento\Framework\UrlInterface; class Shipment extends Column { protected $_orderRepository; protected $_searchCriteria; protected $urlBuilder; public function __construct( ContextInterface $context, UrlInterface $backendUrl, UiComponentFactory $uiComponentFactory, OrderRepositoryInterface $orderRepository, SearchCriteriaBuilder $criteria, array $components = [], array $data = []) { $this->_orderRepository = $orderRepository;
        $this->urlBuilder  = $backendUrl;
        $this->_searchCriteria  = $criteria;
        parent::__construct($context, $uiComponentFactory, $components, $data);
    }

    public function prepareDataSource(array $dataSource)
    {
		if (isset($dataSource['data']['items'])) {
            $fieldName = $this->getData('name');
			
            foreach ($dataSource['data']['items'] as & $item) {
				$url = $this->urlBuilder->getUrl('zepo',['order_id'=>$item['entity_id']]);
                $item[$fieldName . '_html'] = "<a href='".$url."'><span>Ship</span></a>";
				$item[$fieldName . '_orderid'] = $item['entity_id'];
                $item[$fieldName . '_formaction'] = $url;
            }
        }
        return $dataSource;
    }
}

3) /Vendor/Module/view/base/web/js/grid/columns/shipment.js


define([
    'Magento_Ui/js/grid/columns/column',
    'jquery',
    'mage/template',
    'text!Sinelogix_Zepo/templates/grid/cells/customer/shipment.html',
    'Magento_Ui/js/modal/modal'
], function (Column, $, mageTemplate, sendmailPreviewTemplate) {
    'use strict';
    
    return Column.extend({
        defaults: {
            bodyTmpl: 'ui/grid/cells/html',
            fieldClass: {
                'data-grid-html-cell': true
            }
        },
        gethtml: function (row) {
            return row[this.index + '_html'];
        },
        getFormaction: function (row) {
            return row[this.index + '_formaction'];
        },
        getOrderid: function (row) {
            return row[this.index + '_orderid'];
        },
        getLabel: function (row) {
            return row[this.index + '_html']
        },
        getTitle: function (row) {
            return row[this.index + '_title']
        },
        getSubmitlabel: function (row) {
            return row[this.index + '_submitlabel']
        },
        getCancellabel: function (row) {
            return row[this.index + '_cancellabel']
        },
        preview: function (row) {
            window.location = this.getFormaction(row);
        },
        getFieldHandler: function (row) {
            return this.preview.bind(this, row);
        }
    });
});

Migration from magento1 to magento2

Follow below steps to migrate the webstie

Download extension from ubertheme and follow the steps from docs.

After migration done using above module solve errors which was arrive in admin or frontend

if u want to migrate latest orders and customers, migrate in new database using above module and just move rows from orders and customers table.

sales_orders
sales_order_address
sales_order_aggregated_created
sales_order_aggregated_updated
sales_order_grid
sales_order_item
sales_order_payment
sales_order_status
sales_order_status_history
sales_bestsellers_aggregated_daily
sales_bestsellers_aggregated_monthly
sales_bestsellers_aggregated_yearly
sales_creditmemo
sales_creditmemo_comment
sales_creditmemo_grid
sales_creditmemo_item
sales_invoice
sales_invoiced_aggregated
sales_invoiced_aggregated_order
sales_invoice_comment
sales_invoice_grid
sales_invoice_item
sales_payment_transaction
sales_refunded_aggregated
sales_refunded_aggregated_order
sales_shipment
sales_shipment_comment
sales_shipment_grid
sales_shipment_item
sales_shipment_track
sales_shipping_aggregated
sales_sequence_meta

You will get error on the shipment address. please search the error from error log and resolve it.

Free Shipping of a single product in magento2

Step1:– Enable shipping method. with minimum amount 99999999.999

Step2:- Create one product attribute for Free Shipping method selection.

Step3:- Create one Catalog Price Rule.

Step4:- Add one action with Free Shipping value is For matching Items only

Step5:- For the rules, keep the default “if ALL of these conditions are TRUE”. Click the plus sign to add a condition. Select Free Shipping from the list.  and select it’s value to true or 1.