–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.

osCommerce

Een gratis online winkelprogramma met bestelgeschiedenis, winkelwagentjes, volledige zoekmogelijkheden, productrecensies, beveiligde transacties, bestsellerlijsten en gerelateerde items.

Integratie met osCommerce wordt gemaakt door een script voor het volgen van de verkoop op de bevestigingspagina te plaatsen. Om de waarden van OrderID en TotalSale te verkrijgen, maakt het fragment verbinding met de osCommerce-databank en haalt het de waarden van daaruit op.

Zoek bestand checkout_success.php

Zoek en open het bestand checkout_success.php in osCommerce-bronbestanden.

Zoek de juiste plaats voor integratie

Zoek in het bestand deze regel:

if ($global['global\_product\_notifications'] != '1') {...

het zou ergens na deze regel moeten staan:

<! DOCTYPE ........>

Integratiecode toevoegen

Plaats de volgende code net boven die regel:

  //--------------------------------------------------------------------------
   // 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
   //--------------------------------------------------------------------------

Integratie is voltooid

Het is nu geïntegreerd. Elke keer dat de klant de orderbevestigingspagina betreedt, wordt de trackingcode opgeroepen en wordt een verkoop geregistreerd voor verwijzende partner.

Een andere integratie

Als u van plan bent om producten in meer campagnes te verdelen, heeft u waarschijnlijk een andere integratie nodig, die de hele verkoop in afzonderlijke productverkoop verdeelt.

//--------------------------------------------------------------------------
   // 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
   //--------------------------------------------------------------------------

Directe PayPal-integratie met osCommerce

Als u op PayPal IPN wilt vertrouwen (omdat dit veilig is en 100% zeker dat de transactie wordt geregistreerd), kunt u de PayPal-knopsjabloon rechtstreeks in osCommerce bewerken. Log in op uw FTP en navigeer naar catalog/includes/modules/payment/ en bewerk het bestand paypal_standard.php.

Zoek de functie process_button en scrol omlaag naar het einde ervan. U zou dit codeblok moeten vinden:
} 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;

Hiermee wordt het trackingscript rechtstreeks aan de PayPal-knop toegevoegd en wordt de juiste waarde in de aangepaste parameter ingevoegd.

Nu moet u de IPN ook opnieuw van osCommerce naar PAP verzenden. Zie de volgende stap.

PayPal-omleiding naar PAP

Wanneer er een verkoop is, stuurt PayPal IPN naar uw osCommerce. U moet het opnieuw naar PAP sturen om de transactie op te slaan. Navigeer naar catalog/ext/modules/payment/paypal/ in uw FTP en wijzig het bestand standard_ipn.php. Voeg de volgende code toe aan het begin van het bestand:
 $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);

De laatste stap is het wijzigen van de klant-ID die is opgeslagen in het aangepaste veld, naar de waarde zonder PAP-bezoekers-ID. Zoek lijn:

if ($result == 'VERIFIED') {

en voeg de volgende code toe boven de regel:

$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];
      }
    }

Vergeet niet uw website te integreren met de kliktrackingcode.

Terug naar Integraties GRATIS account aanmaken

Onze website maakt gebruik van cookies. Door verder te gaan, gaan we uit van uw toestemming om cookies te plaatsen zoals beschreven in onze privacy- en cookiebeleid.

×

Plan een één-op-één gesprek en ontdek hoe Post Affiliate Pro uw bedrijf ten goede kan komen.

We zijn beschikbaar op meerdere data

Plan een gesprek