osCommerce integration
Ein kostenloses Onlineshop-Programm mit einem Bestellverlauf, Warenkörben, vollständiger Suchfunktion, Produktbewertungen, sicheren Transaktionen, Bestsellerlisten und ähnlichen Waren.
Die Integration mit osCommerce findet mithilfe eines Verkaufstrackingskripts auf der Bestätigungsseite statt. Um die Werte für OrderID und TotalSale zu erhalten, verbindet sich Snippet mit der osCommerce-Datenbank und sammelt die Werte von dort.
Suchen Sie die Datei checkout_success.php
Suchen und öffnen Sie die Datei checkout_success.php in den osCommerce-Quelldaten.
Suchen Sie nach der richtigen Stelle für die Integration
Suchen Sie in der Datei nach dieser Zeile:
if ($global['global\_product\_notifications'] != '1') {...
Sie sollte nach dieser Zeile kommen:
<! DOCTYPE ........>
Integrationscode einfügen
Fügen Sie den folgenden Code über dieser Zeile ein:
//--------------------------------------------------------------------------
// integration code
//--------------------------------------------------------------------------
// get order id
$sql = "select orders_id from ".TABLE_ORDERS.
" where customers_id='".(int)$customer_id.
"' order by date_purchased desc limit 1";
$pap_orders_query = tep_db_query($sql);
$pap_orders = tep_db_fetch_array($pap_orders_query);
$pap_order_id = $pap_orders['orders_id'];
// get total amount of order
$sql = "select value from ".TABLE_ORDERS_TOTAL.
" where orders_id='".(int)$pap_order_id.
"' and class='ot_subtotal'";
$pap_orders_total_query = tep_db_query($sql);
$pap_orders_total = tep_db_fetch_array($pap_orders_total_query);
$pap_total_value = $pap_orders_total['value'];
//get product ids
$sql = "select products_id from " .TABLE_ORDERS_PRODUCTS.
" where orders_id=".(int)$pap_order_id;
$pap_orders_products_query = tep_db_query($sql);
$pap_orders_products = '';
while ($row = tep_db_fetch_array($pap_orders_products_query)) {
$pap_orders_products .= $row['products_id'] . ',';
}
$pap_orders_products = substr($pap_orders_products, 0, -1);
// draw invisible image to register sale
if($pap_total_value != "" && $pap_order_id != "")
{
print '<script id="pap_x2s6df8d" src="https://URL_TO_PostAffiliatePro/scripts/trackjs.js" type="text/javascript"></script>
'."<script type=\"text/javascript\">PostAffTracker.setAccountId('Account_ID');
var sale = PostAffTracker.createSale();
sale.setTotalCost('$pap_total_value');
sale.setOrderID('$pap_order_id');
sale.setProductID('$pap_orders_products');
PostAffTracker.register();
</script>";
}
//--------------------------------------------------------------------------
// END of integration code
//--------------------------------------------------------------------------
Die Integration ist abgeschlossen
Jedes Mal, wenn ein Kunde auf der Bestellbestätigungsseite eintrifft, wird der Trackingcode abgerufen und ein Verkauf wird für den jeweiligen Affiliate generiert.
Eine weitere Integration
Wenn Sie Produkte in mehr Kampagnen teilen möchten, benötigen Sie wahrscheinlich eine weitere Integration, die den gesamten Verkauf in einzelne Produktverkäufe einteilt.
//--------------------------------------------------------------------------
// integration code
//--------------------------------------------------------------------------
// get order id
$sql = "select orders_id from ".TABLE_ORDERS.
" where customers_id='".(int)$customer_id.
"' order by date_purchased desc limit 1";
$pap_orders_query = tep_db_query($sql);
$pap_orders = tep_db_fetch_array($pap_orders_query);
$pap_order_id = $pap_orders['orders_id'];
//get variables for script
$sql = "select products_id,products_price,products_quantity from " .TABLE_ORDERS_PRODUCTS.
" where orders_id=".(int)$pap_order_id;
$pap_products_total_query = tep_db_query($sql);
$k = 0;
while ($row = tep_db_fetch_array($pap_products_total_query)) {
$pap_products_total[$k+1] = $row['products_price'] * $row['products_quantity'];
$pap_products[$k+1] = $row['products_id'];
$k++;
}
// draw invisible image to register sale
if($pap_order_id != "")
{
?>
<script id="pap_x2s6df8d" src="https://URL_TO_PostAffiliatePro/scripts/trackjs.js" type="text/javascript"></script>
<script type="text/javascript">
PostAffTracker.setAccountId('Account_ID'); <?php
for ($j=1; $j<=$k; $j++){
echo "var sale".$j." = PostAffTracker.createSale();\n".
"sale".$j.".setTotalCost('". $pap_products_total[$j]."');\n".
"sale".$j.".setOrderID('".$pap_order_id."');\n".
"sale".$j.".setProductID('".$pap_products[$j]."');\n\n";
}
?>
PostAffTracker.register();
</script>;
<?php
}
//--------------------------------------------------------------------------
// END of integration code
//--------------------------------------------------------------------------
Direkte PayPal-Integration mit osCommerce
Wenn Sie PayPal-IPN verwenden möchten (da dies sicher ist und die Transaktion mit 100%-iger Sicherheit aufgezeichnet wird), können Sie die PayPal-Schaltflächenvorlage direkt in osCommerce bearbeiten. Loggen Sie sich auf FTP ein und navigieren Sie zu catalog/includes/modules/payment/. Bearbeiten Sie dann die Datei paypal_standard.php.
Suchen Sie die Funktion process_button und scrollen Sie bis zum Ende. Sie sollten diesen Codeblock finden:
} else {
reset($parameters);
while (list($key, $value) = each($parameters)) {
$process_button_string .= tep_draw_hidden_field($key, $value);
}
}
return $process_button_string;
// --------------------------------------------
// change this whole block of code to this block:
} else {
reset($parameters);
while (list($key, $value) = each($parameters)) {
if ($key == "custom") {
$tofix = tep_draw_hidden_field($key, $value);
$process_button_string .= substr($tofix,0,-1) .' id="pap_ab78y5t4a" >';
}
else {
$process_button_string .= tep_draw_hidden_field($key, $value);
}
}
}
$process_button_string .= '<script type="text/javascript">';
$process_button_string .= 'document.write(unescape("%3Cscript id=%27pap_x2s6df8d%27 src=%27" + (("https:" == document.location.protocol) ? "https://" : "http://") + "URL_TO_PostAffiliatePro/scripts/trackjs.js%27 type=%27text/javascript%27%3E%3C/script%3E"));';
$process_button_string .= '</script><script type="text/javascript">PostAffTracker.setAccountId(\'default1\');';
$process_button_string .= 'PostAffTracker.setAppendValuesToField(\'||\');';
$process_button_string .= 'PostAffTracker.writeCookieToCustomField(\'pap_ab78y5t4a\');</script>';
return $process_button_string;
Dadurch wird ein Trackingskript direkt unter der PayPal-Schaltfläche und der korrekte Wert in dem benutzerdefinierten Parameter eingefügt.
Nun müssen Sie das IPN von osCommerce erneut an PAP senden. Sehen Sie den nächsten Schritt.
PayPal-Weiterleitung zu PAP
Wenn es einen Verkauf gibt, sendet PayPal IPN an osCommerce. Sie müssen es auch an PAP senden, um die Transaktion zu speichern. Navigieren Sie zu catalog/ext/modules/payment/paypal/ in FTP und bearbeiten Sie die Datei standard_ipn.php . Tragen Sie den folgenden Code am Anfang der Datei ein:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://URL_TO_PostAffiliatePro/plugins/PayPal/paypal.php");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $_POST);
curl_exec($ch);
Der letzte Schritt ist, die Kunden-ID in dem benutzerdefinierten Feld auf den Wert ohne PAP-Besucher-ID zu ändern. Suchen Sie die Zeile:
if ($result == 'VERIFIED') {
und fügen Sie den folgenden Code über der Zeile ein:
$separator = '||';
if ($_POST['custom'] != '') {
$explodedCustomValue = explode($separator, $_POST['custom'], 2);
if (count($explodedCustomValue) == 2) {
$_REQUEST['custom'] = $_POST['custom'] = $explodedCustomValue[0];
$HTTP_POST_VARS['custom'] = $explodedCustomValue[0];
}
}
Vergessen Sie nicht, Ihre Webseite mit dem Klick-Trackingcode zu integrieren.
Erleben Sie die nahtlose Integration von OpenCart 2 mit Post Affiliate Pro! Verfolgen Sie Bestellungen, Lifetime-Provisionen und Coupons mühelos und sorgen Sie für ein optimales Verkaufstracking. Entdecken Sie die Vorteile für Ihr E-Commerce-Geschäft und starten Sie jetzt Ihre kostenlose Testversion.
Entdecken Sie die nahtlose Integration von WordPress mit Post Affiliate Pro! Unser leistungsstarkes, open-source Plugin bietet Klick-Tracking, Affiliate-Anmeldungen und mehr. Kompatibel mit beliebten Tools wie WooCommerce und MemberPress. Besuchen Sie die Plugin-Homepage und starten Sie Ihre kostenlose Testversion heute!
Entdecken Sie die AmeriCommerce-Integration mit Post Affiliate Pro: Eine leistungsstarke E-Commerce-Plattform, die mehrere Storefronts unterstützt und einfaches Verkaufstracking bietet. Verbessern Sie Ihr Online-Marketing mit erweiterten Funktionen. Jetzt kostenlose Testversion starten und mehr erfahren!