ZenCart integration
Um sistema de carrinho de compras baseado em PHP fácil de usar.
A integração com o ZenCart é feita colocando o script de rastreamento de vendas na página de confirmação do pedido.
Edite o modelo
Para integrar o ZenCart você deve editar o modelo de confirmação do pedido. Abra o arquivo includes/templates/template_default/templates/tpl_checkout_success_default.php.
Localize o local de integração
Encontre a linha com o código a seguir que já deve existir no arquivo.
<div id="checkoutSuccessOrderNumber"><?php echo TEXT_YOUR_ORDER_NUMBER . $zv_orders_id; ?></div>
Integração
Copie e cole o seguinte código no arquivo, na linha encontrada acima:
<?php
$dbreq = $db->Execute("select * from ".TABLE_ORDERS_TOTAL." where orders_id = '".(int)$orders->fields['orders_id']."' AND class in ('ot_coupon', 'ot_gv', 'ot_subtotal', 'ot_group_pricing', 'ot_quantity_discount')");
while (!$dbreq->EOF) {
switch ($dbreq->fields['class']) {
case 'ot_subtotal': $order_subtotal = $dbreq->fields['value']; break;
case 'ot_coupon': $coupon_amount = $dbreq->fields['value']; $coupon_code = $dbreq->fields['title']; break;
case 'ot_group_pricing': $group_pricing_amount = $dbreq->fields['value']; break;
case 'ot_gv': $gv_amount = $dbreq->fields['value']; break;
case 'ot_quantity_discount': $quantity_discount_amount = $dbreq->fields['value']; break;
}
$dbreq->MoveNext();
}
$totalCost = ($order_subtotal - $gv_amount - $coupon_amount - $group_pricing_amount - $quantity_discount_amount);
$totalCost = number_format($totalCost,2,'.','');
$orderId = $dbreq->fields['orders_id'];
// ------------- coupon code --------------------------------------------------
$coupon_code = substr($coupon_code,(strpos($coupon_code,":"))+2);
$coupon_code = substr($coupon_code,0,strlen($coupon_code)-2);
// -------------products---------------------------------------------------------
$productId = "";
$dbreqa = $db->Execute("select products_id from ".TABLE_ORDERS_PRODUCTS." where orders_id = '".(int)$orders->fields['orders_id']."' ");
while (!$dbreqa->EOF) {
$productId = $dbreqa->fields['products_id'];
$dbreqa->MoveNext();
}
// ----------end products--------------------------------------------------------
print '<script id="pap_x2s6df8d" src="https://URL_TO_PostAffiliatePro/scripts/trackjs.js" type="text/javascript"></script>
<script type="text/javascript">';
print "PostAffTracker.setAccountId('Account_ID');";
print 'var sale = PostAffTracker.createSale();
sale.setTotalCost(\''.$totalCost.'\');
sale.setOrderID(\''.$orderId.'\');
sale.setProductID(\''.$productId.'\');
sale.setCoupon(\''.$coupon_code.'\');
PostAffTracker.register();
</script>';
?>
Pronto, a integração está concluída. Agora toda vez que ocorrer uma venda, a loja irá chamar nosso script e registrar a comissão de venda.
Integração de comissões vitalícias
Se você deseja integrar o plugin de comissões vitalícias, basta adicionar o código abaixo no código da etapa 3 após esta linha:
$orderId = $dbreq->fields['orders_id'];
$dbreq = $db->Execute("select * from ".TABLE_ORDERS_TOTAL." where orders_id = '".(int)$orders->fields['orders_id']."' ");
while (!$dbreq->EOF) {
$email = $dbreq->fields['customers_email_address'];
$dbreq->MoveNext();
}
Além disso, você precisa adicionar este código:
sale.setData1(\''.$email.'\');
logo após:
sale.setOrderID(\''.$orderId.'\');
Caso você queira saber o nome da forma de pagamento usada no pedido, você pode usar esta variável:
$orders->fields['payment_method']
zenCart + PayPal – parte 1
Caso você use o PayPal como um gateway de pagamento no ZenCart, é necessária uma abordagem de integração diferente.
Em “zenCart_installation_directory/includes/functions/html_output.php“encontre a seguinte linha:
$field = '<input type="hidden" name="' . zen_sanitize_string(zen_output_string($name)) . '"';
e substitua por esta:
if ($name == 'notify_url') {
$field = '<input type="hidden" id="pap_ab78y5t4a" name="' . zen_output_string($name) . '"';
} else {
$field = '<input type="hidden" name="' . zen_output_string($name) . '"';
}
zenCart + PayPal – parte 2
Em “zenCart_installation_directory/includes/templates/template_default/common/tpl_footer.php“ adicione o seguinte código:
<!-- PAP Integration snippet -->
<script id="pap_x2s6df8d" src="https://URL_TO_PostAffiliatePro/scripts/trackjs.js" type="text/javascript"></script>
<script type="text/javascript">
PostAffTracker.setAccountId('default1');
PostAffTracker.writeCookieToCustomField('pap_ab78y5t4a', '', 'pap_custom');
</script>
<!-- /PAP Integration snippet -->
zenCart + PayPal – parte 3
Em “zenCart_installation_directory/ipn_main_handler.php” adicione o seguinte código:
/* Post Affiliate Pro integration snippet */
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://URL_TO_PostAffiliatePro/plugins/PayPal/paypal.php?pap_custom=".$_GET['pap_custom']);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $_POST);
curl_exec($ch);
/* /Post Affiliate Pro integration snippet */
É isso.
Agora, faça login no painel do comerciante do Post Affiliate Pro (Network), navegue até a seção “Plugins” e ative o plugin “Controle de IPN do PayPal“.
OBSERVAÇÃO: Se você deseja habilitar a integração Comissão Vitalícia ao usar este método de integração “zenCart + PayPal“, na configuração do plugin “Controle de IPN do PayPal“, ative a opção “Suporte à comissão vitalícia“.
Não se esqueça de integrar seu site com o código de rastreamento de cliques para que o rastreamento de vendas funcione corretamente.
Post Affiliate Pro Domain parking possible problems
Solve domain parking issues with Post Affiliate Pro. Learn how to fix SSL, CNAME, and DNS errors for smooth domain setup.
9. Integrate the affiliate software with your website
Integrate your affiliate software seamlessly with your website for effective tracking of referrals and commissions. Set it up right!
How to integrate Post Affiliate Pro (Network) with 3rd party affiliate systems?
Learn how to integrate Post Affiliate Pro with 3rd-party affiliate systems. Follow our step-by-step guide to streamline your affiliate tracking!