Language switcher

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

Summer Cart

Könnyen használható, teljes funkcionalitású PHP bevásárlókosár.

A Summer Cart minden eszközzel és funkcióval rendelkezik, amelyek lehetővé teszik az online kereskedők számára, hogy egyszerűen, tetőtől talpig működő üzletet építsenek fel. Akár tucatnyi niche-specialitást árul, akár több száz tömegterméket sorol fel, egy mesterien kidolgozott üzleten keresztül nagy láthatóságot és népszerűséget szerez a működésének.

A Post Affiliate Pro integrálása a Summer Cart-talnemcsak az üzlet láblécét (kattintáskövető kód hozzáadásához), hanem 2 bevásárlókosár-osztályt is megköveteli. Lásd alább az integráció részleteit.

Kattintson az integrációra

A kattintáskövető kódot a skins//customer/footer.tmpl fájlban kell tárolni.

Egyszerűen másolja át a skeleton könyvtárból a témakönyvtárba a fájlt, és adjon hozzá kattintáskövető kódot, amely a Post Affiliate Pro programban van elkészítve (Eszközök menü -> Integráció -> Kattintáskövetés)

Adja hozzá ezt a kódot a

Mivel a Summer cart nem tudja használni a Flash-cookie-k követését (csak a böngésző cookie-jait használjuk), le kell tiltanunk a Flash-cookie-követést a következő sor hozzáadásával a követőkód kattintásához:

PostAffTracker.disableTrackingMethod('F');

Közvetlenül a sor után kell tárolni:

PostAffTracker.setAccountId('default1');

a footer.tmpl fájlban található kattintási integrációs kódban.

Értékesítési integráció

Az értékesítési integráció 2 lépésben fog működni, és az integráció úgy történik, hogy a PAP API kéréseket közvetlenül a bevásárlókosár php kódjából hívja a Post Affiliate Pro felé.

Első lépésben tranzakció jön létre a Post Affiliate Pro alkalmazásban (függőben lévő állapot), majd később, amikor a rendelést kézbesítik az ügyfélnek, a Post Affiliate Pro szolgáltatásban a tranzakció állapota Jóváhagyva lesz.

Tranzakciós lépés hozzáadása

Bevásárlókosara időben létrehozza a rendelést, amikor a látogató a fizetési feldolgozóhoz (pl. Paypal) kerül átirányításra. Ezzel egy időben létrejön a tranzakció a Post Affiliate Pro programban (függőben lévő állapot)

Nyissa meg a bevásárlókosár fájlt: /include/sc/util/order/OrdersInProgress.php

hogy ott elhelyezhessük az eladás követő kódját közvetlenül a scOrdersInProgress osztály végén.

Ha a teljes rendelést 1 tranzakcióként (jutalékként) szeretné követni a Post Affiliate Pro-ban (még akkor is, ha az adott rendelés során több tételt is vásárolt), használja a következő kódot:

private function registerNewPostAffiliateProTransaction($order) {
    include_once('<PATH_TO_PAP_API>/PapApi.class.php');
    $saleTracker = new Pap_Api_SaleTracker('https://URL_TO_PostAffiliatePro/scripts/sale.php');

    $productIDs = '';
    $items = $order->getOrderItems();
    foreach($items as $item) {
       $productIDs .= $item->get('OrderItemProductCode').',';
    }

    $sale = $saleTracker->createSale();
    $papOrderDetails = $order->getOrderTotalLines();
    $sale->setTotalCost($papOrderDetails[0]->get('OrderTotalLineCustomerCurrencyAmount'));
    $sale->setOrderID($order->getPK());
    $sale->setProductID($productIDs);
 
    $saleTracker->register();
}

Ha azt szeretné, hogy a megrendelés során vásárolt minden egyes tétel külön tranzakcióként (jutalékként) legyen nyomon követve a Post Affiliate Pro-ban, akkor használja a következő kódot:

private function registerNewPostAffiliateProTransaction($order) {
    include_once('<PATH_TO_PAP_API>/PapApi.class.php');
    $saleTracker = new Pap_Api_SaleTracker('https://URL_TO_PostAffiliatePro/scripts/sale.php');
      $items = $order->getOrderItems();
      foreach($items as $item) {
          $sale = $saleTracker->createSale();
          $sale->setTotalCost($item->get('OrderItemTotal'));
          $sale->setOrderID($order->getPK());
          $sale->setProductID($item->get('OrderItemProductCode'));
      }
      $saleTracker->register();
    }

FONTOS: ezt a metódust az osztály vége előtt kell tárolni, ez azt jelenti, hogy az utolsó } előtt az /include/sc/util/order/OrdersInProgress.php fájlban

FONTOS: Ne felejtse el lecserélni a PapApi.class.php fájl megfelelő elérési útjára.

A PapApi.class.php fájl letölthető a Post Affiliate Pro telepítéséből az Eszközök-> Integráció -> Api-integráció menüből.

Másolja ki a szerverére, ahol telepítve van a boltja, és állítsa be a megfelelő elérési utat a helyére.

Tranzakciós lépés hozzáadása

Most a registerNewPostAffiliateProTransaction metódust kell használnunk, amelyet az előző lépésben adtunk hozzá.

Kérjük, adja hozzá a következő kódsort a createOrder metódushoz közvetlenül az utolsó sor előtt

return $this->_lastOrderId;
$this->registerNewPostAffiliateProTransaction($order);

A tranzakció állapotának módosítása

A Post Affiliate Pro meglévő tranzakcióinak állapota a bevásárlókosárban lévő állapot módosításával szabályozható.

A következő kód a PAP-tranzakció státuszát Jóváhagyva-ra módosítja, ha a bevásárlókosaras rendelést Kézbesítve állapotba állítja.

És a PAP-tranzakciót Elutasítva állapotba állítja, ha bevásárlókosár-rendelését Törölt, Sikertelen vagy Visszaküldve állapotra állítja.

Szerkessze a bevásárlókosár fájlját /include/sc/domainobj/Order.php, és a Rendelés osztály végén adja hozzá a következő metódust:

    private function updatePostAffiliateProTransaction() {
      try {
  		  include_once('<PATH_TO_PAP_API>/PapApi.class.php');
        $session = new Gpf_Api_Session("https://URL_TO_PostAffiliatePro/scripts/server.php");

        if(!$session->login("<MERCHANT_USERNAME>","<MERCHANT_PASSWORD>")) {
          return false;
        }


        $request = new Pap_Api_TransactionsGrid($session);
        $request->addFilter("orderid", Gpf_Data_Filter::LIKE, $this->getPK());
        $request->addFilter("rtype", Gpf_Data_Filter::EQUALS, 'S');
        try {
        	$request->sendNow();
        	$grid = $request->getGrid();
        	$recordset = $grid->getRecordset();
        } catch (Exception $e) {
          return false;
        }

        foreach($recordset as $rec) {
          $transaction = new Pap_Api_Transaction($session);
          $transaction->setTransid($rec->get('transid'));
          try {
        	  if(!$transaction->load()) {
        	   return false;
        	  } else {
        	     if ($transaction->getStatus() != 'D') {
                  $newStatus = '';
                  switch($this->get('OrderStatus')) {
                    case scOrderStatus::ORDER_STATUS_UNFINISHED:
              		  case scOrderStatus::ORDER_STATUS_PAYMENT_PENDING:
              		  case scOrderStatus::ORDER_STATUS_NEW:
              		  case scOrderStatus::ORDER_STATUS_IN_PROGRESS:
              		  case scOrderStatus::ORDER_STATUS_ON_HOLD:
              		  case scOrderStatus::ORDER_STATUS_QUEUED:
              		    $newStatus = 'P';
              		    break;
              		  case scOrderStatus::ORDER_STATUS_RETURNED:
              	    case scOrderStatus::ORDER_STATUS_PAYMENT_FAILED:
              		  case scOrderStatus::ORDER_STATUS_CANCELLED:
              		    $newStatus = 'D';
              		    break;
              		  case scOrderStatus::ORDER_STATUS_DELIVERED:
              		    $newStatus = 'A';
              		    break;
            		  default:
            		    return false;
                  }
                  // changing the status of a transaction
                  if (strlen($newStatus) && $transaction->getStatus() != $newStatus) {
                    $transaction->setStatus($newStatus);
                    $transaction->save();
                  }
               }
        	  }
          } catch (Exception $e) {
            return false;
          }
        }
        } catch (Exception $e) {
          return false;
        }
        return true;
    }

FONTOS: ezt a metódust az osztály vége előtt kell tárolni, ez azt jelenti, hogy az utolsó } előtt az /include/sc/domainobj/Order.php fájlban

FONTOS: Ne felejtse el lecserélni a PapApi.class.php fájl megfelelő elérési útjára. A PapApi.class.php fájl letölthető a Post Affiliate Pro telepítéséből az Eszközök-> Integráció -> Api-integráció menüből.

Másolja ki a szerverére, ahol telepítve van a boltja, és állítsa be a megfelelő elérési utat a helyére.

FONTOS: A felhasználás helyén a kereskedő felhasználóneve, a felhasználás helyén pedig a jelszava. Az API-kérés az Ön felhasználói hitelesítő adatait fogja használni a Post Affiliate Pro telepítésének tranzakcióihoz való hozzáféréshez.

A tranzakció állapotának módosítása

Most azt a metódust kell használnunk, amelyet a Rendelés osztályhoz adtunk.

Adja hozzá a következő kódsort (az alábbi mezőben található) az /include/sc/domainobj/Order.php fájlba az updateOrderStatus és setOrderStatus metódusok legvégére.

$this->updatePostAffiliateProTransaction();

Egyedi rendelési állapotok

Abban az esetben, ha egyéni rendelési állapotokat kíván használni a nyári kosárban, módosítania kell az updatePostAffiliateProTransaction metódust a bevásárlókosár-fájlban /include/sc/domainobj/Order.php.

a switch funkcióban új eset-utasításokat kell hozzáadnia, ahol az érték az egyéni állapot azonosítója lesz.

Back to Integrations Create account for FREE

Our website uses cookies. By continuing we assume your permission to deploy cookies as detailed in our privacy and cookies policy.

×

Schedule a one-on-one call and discover how Post Affiliate Pro can benefit your business.

We’re available on multiple dates

Schedule a call