–Hidden comment

Use attributes in format region_from and region_to= to change the languages showing in language switcher.
Available regions are:
europe_from europe_to
asia_from asia_to
mideast_from mideast_to
america_from america_to

Example:
europe_from=0 europe_to=22 will put all languages (ordered in language switcher settings) from 1 to 21 to Europe region:
asia_from=22 asia_to=25 will put all languages from 23 to 24 (so only 2) into Asia region.

  • Integrazioni
  • Interspire Shopping Cart (specialmente per Google Checkout)

Interspire Shopping Cart (specialmente per Google Checkout)

Un software di carrello degli acquisti ricco di funzionalità che include tutto il necessario per avviare, eseguire e promuovere il tuo negozio online.

Questo metodo di integrazione ti aiuterà a integrare Post Affiliate Pro con Interspire Shopping Cart 6.0+ nel caso in cui i clienti non vengono riportati sulla pagina di ringraziamento di Interspire dopo il pagamento con Google Checkout.

A cosa serve questo script?

Questo setup è stato creato per tracciare i prodotti ordinati in InterspireShopping Cart e pagati con Google Checkout. Questo script può pubblicare ogni prodotto diverso ordinato come una vendita separata a PAP4 oppure può pubblicare l’intero carrello come una vendita unica. Viene utilizzato per il tracciamento delle vendite di PAP e per il tracciamento delle API.

Aggiungi il campo visitorId nel modello ProductAddToCart

Modifica il file /templates/__master/Snippets/ProductAddToCart.html (se l’hai cambiato nel tuo modello è nella directory: /templates/[used template]/Snippets/)

Aggiungi questa riga nel modulo:

<input value="" name="product-private-data" type="hidden" id="pap_dx8vc2s5">

dopo la riga:

<input type="hidden" name="currency_id" value="" />

e dopo la fine del tag del modulo “” aggiungi:

<script id="pap_x2s6df8d" src="https://URL_TO_PostAffiliatePro/scripts/notifysale.php" type="text/javascript">
</script>

Il codice qui sotto mostra l’intero file ProductAddToCart.html dopo le modifiche:

%%GLOBAL_AddToCartButtonControlScript%%
<form method="post" action="%%GLOBAL_CartLink%%" onsubmit="return check_add_to_cart(this, %%GLOBAL_ProductOptionRequired%%)"  enctype="multipart/form-data">
	<input type="hidden" name="action" value="add" />
	<input type="hidden" name="product_id" value="%%GLOBAL_ProductId%%" />
	<input type="hidden" name="variation_id" class="CartVariationId" value="" />
	<input type="hidden" name="currency_id" value="" />
	<input value="" name="product-private-data" type="hidden" id="pap_dx8vc2s5">
	<div class="ProductDetailsGrid ProductAddToCart">
		%%SNIPPET_ProductFieldsList%%
		<div class="ProductOptionList">
			%%SNIPPET_VariationList%%
		</div>
		%%SNIPPET_EventDate%%
		<div class="DetailRow" style="display: %%GLOBAL_DisplayAdd%%">
			<div class="Label QuantityInput" style="display: %%GLOBAL_DisplayAddQty%%">%%LNG_QuantityFull%%:</div>
			<div class="Value AddCartButton">
				<span class="FloatLeft" style="display: %%GLOBAL_DisplayAddQty%%;">
					%%GLOBAL_AddToCartQty%%
				</span>
				<div class="BulkDiscount">
					%%GLOBAL_AddToCartButtonOptimizerScriptTag%%
						<input type="image" src="%%GLOBAL_IMG_PATH%%/%%GLOBAL_SiteColor%%/AddCartButton.gif" alt="Interspire Shopping Cart (specialmente per Google Checkout)"/>
					%%GLOBAL_AddToCartButtonOptimizerNoScriptTag%%
					<div class="BulkDiscountLink" style="display: %%GLOBAL_HideBulkDiscountLink%%;">
						<a href="#" onclick="$.iModal({data: $('#ProductDetailsBulkDiscountThickBox').html(), width: 600}); return false;">
							%%LNG_BulkDiscountLink%%
						</a>
					</div>
				</div>
			</div>
		</div>
	</div>
</form>

<script id="pap_x2s6df8d" src="https://URL_TO_PostAffiliatePro/scripts/notifysale.php" type="text/javascript">
</script>

<div class="OutOfStockMessage">
	%%SNIPPET_SideAddItemSoldOut%%
</div>

%%GLOBAL_ProductBulkDiscountThickBox%%

<script type="text/javascript">
lang.OptionMessage = "%%GLOBAL_OptionMessage%%";
lang.VariationSoldOutMessage = "%%LNG_VariationSoldOutMessage%%";
lang.InvalidQuantity = "%%LNG_InvalidQuantity%%";
lang.EnterRequiredField = "%%LNG_EnterRequiredField%%";
lang.InvalidFileTypeJS = "%%LNG_InvalidFileTypeJS%%";
var ShowAddToCartQtyBox = "%%GLOBAL_ShowAddToCartQtyBox%%";
</script>
%%GLOBAL_EventDateJavascript%%

Modifica tutti i file del modello in cui è usato il link “aggiungi al carrello”. Aggiungi l’attributo id=”affCookieLinkId” nel tag <a> in <div class=”ProductActionAdd”>.

E in click tracking code aggiungi:

PostAffTracker.writeCookieToLink('affCookieLinkId', 'product-private-data');

dopo la linea:

PostAffTracker.track();

Ecco qui sotto il codice dopo le modifiche:

<div class="ProductActionAdd" style="display:%%GLOBAL_HideActionAdd%%;">
		<a href="%%GLOBAL_ProductURL%%" id="affCookieLinkId">%%GLOBAL_ProductAddText%%</a>
</div>

Elenco dei file che devi modificare nella directory /templates/__master/Snippets/:

  • BrandProductsItem.html
  • CategoryProductsItem.html
  • HomeFeaturedProductsItem.html
  • HomeNewProductsItem.html
  • HomeSaleProductsItem.html
  • ProductVendorsOtherProductsItem.html
  • SearchResultProductGrid.html
  • SideCategoryNewProducts.html
  • SideCategoryPopularProducts.html
  • SideCategoryTopSellers.html
  • SideNewProducts.html
  • SideRecentlyViewedProducts.html
  • SideTopSellers.html
  • SideTopSellersFirst.html
  • TagProductsItem.html
  • VendorFeaturedItemsItem.html
  • VendorProductsItem.html

Modifica il file class.cart.api.php

Modifica il file /includes/classes/class.cart.api.php.

Trova la linea:

public function AddItem

e aggiungi alla fine dei parametri un nuovo parametro $productPrivateData=null.

Ecco come dovrebbe essere:

public function AddItem($productId, $quantity=1, $variationDetails=null, $configurableOptions=array(), $cartItemId=null, $options=array(), $parentId=null, $reorder=false, $productPrivateData=null)

Poi trova l’array cartProduct (linea 1319):

    $cartProduct = array(
            'product_id' => $productId,
            'variation_id' => $variation,
            'options' => $variationOptions,
            'quantity' => $quantity,
            'product_name' => $product['prodname'],
            'product_code' => $productCode,
            'product_price' => $productPrice,
            'original_price' => $originalPrice,
            'default_currency' => $defaultCurrency['currencyid'],
            'customer_group' => $customerGroup,
        );

aggiungi qui:

product_private_data' => $productPrivateData

Ecco come dovrebbe essere:

$cartProduct = array(
            'product_id' => $productId,
            'variation_id' => $variation,
            'options' => $variationOptions,
            'quantity' => $quantity,
            'product_name' => $product['prodname'],
            'product_code' => $productCode,
            'product_price' => $productPrice,
            'original_price' => $originalPrice,
            'default_currency' => $defaultCurrency['currencyid'],
            'customer_group' => $customerGroup,
            'product_private_data' => $productPrivateData
        );

Modifica il file class.cart.php

Modifica il file /includes/classes/class.cart.php.

Trova la linea:

$cartItemId = $this->api->AddItem($product_id, $qty, $variation, $configurableFields, null, $options, null, false);

cambiala in questo modo:

$cartItemId = $this->api->AddItem($product_id, $qty, $variation, $configurableFields, null, $options, null, false, $productPrivateData);

E aggiungi questo all’inizio:

  $productPrivateData = '';
            if(isset($_REQUEST['product-private-data'])) {
                $productPrivateData = $_REQUEST['product-private-data'];
            }

Ecco come dovrebbe essere dopo le modifiche:

                        ...
                        ...
				$options['EventName'] = $eventName;
			}

			$productPrivateData = '';
			if(isset($_REQUEST['product-private-data'])) {
				$productPrivateData = $_REQUEST['product-private-data'];
			}

			// Actually add the product to the cart
			$cartItemId = $this->api->AddItem($product_id, $qty, $variation, $configurableFields, null, $options, null, false, $productPrivateData);
			$this->newCartItem = $cartItemId;

			if($cartItemId === false) {
                        ...
                        ...

Aggiungi il codice di monitoraggio della vendita nel file class.handler.php nel metodo googlecheckout

Modifica il file /modules/checkout/googlecheckout/class.handler.php.

Trova questo codice intorno alla linea 925:

	if (!$completed) {
			$GLOBALS['ISC_CLASS_LOG']->LogSystemError($this->logtype, sprintf(GetLang('GoogleCheckoutCantCompleteOrder'), isc_html_escape($pendingToken), isc_html_escape(var_export($completed, true))));
			return;
		}

e aggiungici il codice qui sotto:

		include 'PapApi.class.php';
		$saleTracker = new Pap_Api_SaleTracker('URL_TO_PostAffiliatePro/scripts/sale.php');
		$prod_count = '1'; // Product Counter

		foreach($cartContent[$vendorId][0] as $cartItemId => $product) {
		    $productid = $product['data']['productid'];
		    $productPrivateData = $product['product_private_data'];

		    $price = $product['quantity'] * $product['product_price'];

		    if (strlen($productPrivateData) == 40) {
			  $accountId = substr($productPrivateData, 0, 8);
			  $visitorId = substr($productPrivateData, 8, 32);
		    } else {
			  $visitorId = $productPrivateData;
			  $accountId = 'default1';
		    }

		    $saleTracker->setAccountId($accountId);
		    $saleTracker->setCookieValue($visitorId);

		    $sale = $saleTracker->createSale();
		    $sale->setTotalCost($price);
		    $sale->setOrderID($order['orderid'] . "($prod_count)");
		    $sale->setProductID($productid);
		    $saleTracker->register();
		    $prod_count++;
		}

Questo metodo di monitoraggio sta usando l’API di PAP. Pertanto è necessario avere il file PapApi.class.php nella directory /modules/checkout/googlecheckout/.

(Puoi scaricarlo dal tuo merchant panel > avvia > strumenti > integrazione > integrazione api > Scarica API di PAP).

Torna alle Integrazioni Crea un account GRATUITAMENTE
Vuoi migliorare ancora di più il tuo affiliate software? Dai un'occhiata all'integrazione di Interspire Shopping Cart con Post Affiliate Pro.

Interspire Shopping Cart

Il testo descrive l'utilizzo di uno script per tracciare le vendite di diversi prodotti attraverso Interspire Shopping Cart. Viene spiegato come impostare PAP e Interspire Shopping Cart per lavorare con lo script e registrare ogni prodotto come una vendita separata a PAP. Inoltre, vengono fornite istruzioni su come creare diverse campagne per ogni articolo con una commissione diversa. Il testo inoltre promuove l'account gratuito su Post Affiliate Pro.

Vuoi migliorare ancora di più il tuo affiliate software? Scopri l'integrazione di ThriveCart con Post Affiliate Pro.

ThriveCart

Il testo parla dell'integrazione di ThriveCart, un software di carrelli degli acquisti moderno, con Post Affiliate Pro. Utilizzando variabili personalizzate e un webhook, è possibile tracciare le vendite e le commissioni a vita. Il processo di configurazione prevede l'aggiunta di un valore extra ai link di ThriveCart, l'attivazione del plugin e la configurazione di un webhook. Il testo offre anche una prova gratuita del servizio.

Vuoi migliorare ancora di più il tuo affiliate software? Dai un'occhiata all'integrazione di Miva 9 con Post Affiliate Pro.

Miva 9

Vuoi migliorare ancora di più il tuo affiliate software? Dai un'occhiata all'integrazione di Miva 9 con Post Affiliate Pro.

Vuoi migliorare ancora di più il tuo affiliate software? Dai un'occhiata all'integrazione di Fortune3 con Post Affiliate Pro.

Fortune3

Il testo parla del software Post Affiliate Pro e della sua integrazione con il builder di siti ecommerce Fortune3. Viene descritto il processo di inserimento dei codici di tracciamento per il monitoraggio dei clic e delle vendite. L'articolo promuove l'account gratuito per l'utilizzo del software.

Il nostro sito web utilizza i cookies. Continuando assumiamo il tuo consenso all'utilizzo dei cookie come specificato nella nostra politica sulla privacy e sui cookie.

×

Prenota una chiamata individuale e scopri come Post Affiliate Pro può giovare al tuo business.

Siamo disponibili in più date

Prenota una chiamata telefonica