1

私は自分の製品に wordpress と wp eCommerce を使用しています。発送には UPS を使用しています。UPS でアカウントを作成し、API を取得しました。発送時に入力した情報は正しく、正しいチェックボックスをすべてオンにしました。

UPS Shipping が計算のみを行うことは知っていますが、ユーザーが注文したときに、追跡番号または類似のものを使用して My UPS アカウントに送られる方法はありますか? wp-ecommerceからこんなメールが返ってきました

オンラインストアを持っているかどうかに関係なく、あなたはあなたがする方法で製品を出荷します. ほとんどの場合、これは UPS システムにアクセスして配送ラベルを作成することを意味します。この時点で、追跡番号が提供されます。追跡番号は、その注文の店舗販売ログに入力できます。その後、追跡情報を持った人に通知が届きます。

それが私の配送を行う最良の方法ですか、それとももっと良いアイデアを持っている人はいますか?

ありがとう、J

4

2 に答える 2

2

私の 2 セント: @c2h50h の解決策 (素晴らしい発見、ところで!) に従い始めた後、PayPal には配送ラベルの印刷オプションがあり、UPS アカウントとシームレスに統合されていることに気付きました。私のクライアントは PayPal Pro (月額 30 ドルのホワイト ラベル支払いソリューション) を使用しており、出荷情報は自動的に PayPal に転送され、実装後にラベルを印刷できます。注: これは、他の PayPal (無料) プラットフォームでも機能するはずです。

@c2h50h のソリューションをテストで動作させたときに、クライアント用の実行可能なプラグインを作成するには多くのコーディングが必要になることに気付きました。しかし、彼らは PayPal ソリューションを気に入っており、認めざるを得ませんが、彼らの WordPress 管理ページのために、より優れた/より信頼性の高いものを設計することは難しいでしょう.

このルートに行きたい場合の手順は次のとおりです。

  1. ペイパルプロにサインアップ
  2. 次に、PayPal API 情報を WP E-Commerce に追加します: PayPal API 資格情報を見つける方法
  3. これを設定したら、PayPal アカウントにログインします。
  4. 注文の横にあるアカウント ページで、[配送ラベルを印刷] をクリックします。
  5. UPS アカウント (または USPS) を追加する
  6. クライアントは、PayPal から配送ラベルを印刷し、PayPal または UPS アカウントに請求できます。
  7. 追跡番号を WP E-Commerce に入力します。

とても簡単。

于 2012-10-11T00:02:13.907 に答える
1

これは、現時点で WP eCommerce で利用できる唯一の方法です。

UPS から配送料を取得する以外のことを行う WP プラグインを知りません。配送ダイジェストを生成し、UPS に送信して配送ラベルを取得できるカスタム プラグインを誰かに作成してもらう必要があります。

このようなプラグインを作成するために開始できるコードを次に示します。

$xmlRequest1='<?xml version="1.0" encoding="ISO-8859-1"?>
<AccessRequest>
<AccessLicenseNumber>ACCESS LICENCE NUMBER</AccessLicenseNumber>
<UserId>UPS USERNAME</UserId>
<Password>UPS PASSWORD</Password>
</AccessRequest>
<?xml version="1.0" encoding="ISO-8859-1"?>
<ShipmentAcceptRequest>
<Request>
<TransactionReference>
<CustomerContext>Customer Comment</CustomerContext>
</TransactionReference>
<RequestAction>ShipAccept</RequestAction>
<RequestOption>1</RequestOption>
</Request>
<ShipmentDigest>SHIPMENT DIGEST</ShipmentDigest>
</ShipmentAcceptRequest>
';

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://wwwcie.ups.com/ups.app/xml/ShipAccept");
// uncomment the next line if you get curl error 60: error setting certificate verify locations
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
// uncommenting the next line is most likely not necessary in case of error 60
// curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $xmlRequest1);
curl_setopt($ch, CURLOPT_TIMEOUT, 3600);

//if ($this->logfile) {
//   error_log("UPS REQUEST: " . $xmlRequest . "\n", 3, $this->logfile);
//}
$xmlResponse = curl_exec ($ch); // SHIP ACCEPT RESPONSE
//echo curl_errno($ch);

$xml = $xmlResponse;

preg_match_all( "/\<ShipmentAcceptResponse\>(.*?)\<\/ShipmentAcceptResponse\>/s",
$xml, $bookblocks );

foreach( $bookblocks[1] as $block )
{
preg_match_all( "/\<GraphicImage\>(.*?)\<\/GraphicImage\>/",
$block, $author ); // GET LABEL

preg_match_all( "/\<TrackingNumber\>(.*?)\<\/TrackingNumber\>/",
$block, $tracking ); // GET TRACKING NUMBER
//echo( $author[1][0]."\n" );
}

echo '<img src="data:image/gif;base64,'. $author[1][0]. '"/>';

コードソース: http://webcollage.wordpress.com/2011/05/13/ups-label-print-with-php/

そして、ここhttp://webcollage.wordpress.com/2011/05/10/ups-shipping-confirmation-code-in-php/ で、配送ダイジェストがどのように見えるかがわかります

于 2012-07-20T21:22:37.770 に答える