2016-10-20 11 views
0

私は、開発者用ドキュメントで提案されているPayPal-PHP-SDKに取り組んでいます。私は現在、このコードを実行しています:PayPal(PayPal-PHP-SDK)のチェックアウトページをカスタマイズする方法

http://paypal.github.io/PayPal-PHP-SDK/

を私は単純にブランド名を変更し、ロゴを追加したいが、私はこれを達成する方法がわかりません。

+0

を少し節約できます願っています。 –

+0

質問から答えを削除し、コミュニティのwikiの回答として追加しました。将来、回答を質問に編集するのではなく、回答を自分で追加して下さい。 – FrankerZ

答えて

2

PayPalはデザインを更新しているため、プロフィールの設定を変更することはできません。設定はもう機能しません。

デザインを変更するには、まずWebProfileを作成する必要があります。

作成したプロファイルのIDが$ profileid.This IDに格納されている
// Create the WebProfile 
    $presentation = new Presentation(); 
    $presentation->setLogoImage("http://www.yeowza.com/favico.ico") 
     ->setBrandName("YeowZa! Paypal") 
     ->setLocaleCode("US"); 
    $inputFields = new InputFields(); 
    $inputFields->setAllowNote(true) 
     ->setNoShipping(1) 
     ->setAddressOverride(0); 
    $webProfile = new WebProfile(); 
    $webProfile->setName("YeowZa! T-Shirt Shop" . uniqid()) 
     ->setPresentation($presentation) 
     ->setInputFields($inputFields); 
    try { 
     $createdProfile = $webProfile->create($paypal); 
     $createdProfileID = json_decode($createdProfile); 
     $profileid = $createdProfileID->id; 
    } catch(PayPal\Exception\PayPalConnectionException $pce) { 
     echo '<pre>',print_r(json_decode($pce->getData())),"</pre>"; 
     exit; 
    } 

を経由して設定する必要があります。お支払いを作成する場合は、setExperienceProfileId($ profileid)。

 // Create the Payment  
    $product = $_POST['product']; 
    $price = 4; 
    $shipping = 2; 
    $total = $price + $shipping; 

    $payer = new Payer(); 
    $payer->setPaymentMethod("paypal"); 

    $item1 = new Item(); 
    $item1->setName('Ground Coffee 40 oz') ->setCurrency('EUR') ->setQuantity(1) ->setSku("123123")->setPrice(6.5); // Similar to `item_number` in Classic API 
    $item2 = new Item(); 
    $item2->setName('Granola bars') ->setCurrency('EUR') ->setQuantity(1) ->setSku("321321")->setPrice(1.5); // Similar to `item_number` in Classic API 
    $itemList = new ItemList(); 
    $itemList->setItems(array($item1, $item2)); 

    $details = new Details(); 
    $details->setShipping(1.2) ->setTax(1.3) ->setSubtotal(8); 

    $amount = new Amount(); 
    $amount->setCurrency("EUR") ->setTotal(10.5) ->setDetails($details); 

    $transaction = new Transaction(); 
    $transaction->setAmount($amount)->setItemList($itemList)->setDescription("Payment description")->setInvoiceNumber(uniqid()); 

    $baseUrl = "http://localhost/abiunity/test.php"; 
    $redirectUrls = new RedirectUrls(); 
    $redirectUrls->setReturnUrl($baseUrl."?success=true")->setCancelUrl($baseUrl."?success=false"); 

    $payment = new Payment(); 
    $payment->setExperienceProfileId($profileid)->setIntent("sale") ->setPayer($payer) ->setRedirectUrls($redirectUrls) ->setTransactions(array($transaction)); 
    //$request = clone $payment; 

    try { 
     $payment->create($paypal); 
     $approvalUrl = $payment->getApprovalLink(); 
     header("Location:".$approvalUrl); 
     exit; 
    } catch(PayPal\Exception\PayPalConnectionException $pce) { 
     echo '<pre>',print_r(json_decode($pce->getData())),"</pre>"; 
     exit; 
    } 

私はこれが誰かを助け、あなたがページをカスタマイズしたり、より良い休暇を取るためにPayPalのアカウントにログインする必要があり、時間:)

+0

注:GitHubのサンプルコードに慣れているなら、この答えの '$ paypal'はサンプルコードの' $ apiContext'と同じです。 – Connum

関連する問題