Rumah >pembangunan bahagian belakang >tutorial php >Menambah produk ke kedai eBay anda dengan API Perdagangan
Tutorial ini menunjukkan bangunan produk eBay menambah fungsi menggunakan API perdagangan. Kami akan meliputi pengendalian terperinci produk programatik, muat naik, pengkategorian, dan penyerahan penyenaraian yang selamat.
Konsep Utama:
Product.php
uploadAction
AddItem
untuk menghantar produk, mengendalikan respons untuk penyenaraian yang berjaya. createAction
Membina Pengawal Penciptaan Produk:
Buat dalam direktori pengawal anda: Product.php
<code class="language-php"><?php class Product extends \SlimController\SlimController { // ... methods below ... }</code>kaedah
menjadikan bentuk penciptaan produk (newAction
dalam new.twig
): templates/product
<code class="language-php">public function newAction() { $page_data = ['is_productpage' => true]; $this->render('product/new', $page_data); }</code>
Borang penciptaan produk (): new.twig
<code class="language-twig">{% extends "/base.twig" %} {% block content %} {{ parent() }} <div class="row"> <div class="col-md-4"> <div class="alert alert-{{ flash.message.type }}"> {{ flash.message.text }} {% for r in flash.message.data %} <li>{{ r[0] }}</li> {% endfor %} </div> </div> </div> <form class="form-horizontal" method="POST" action="%7B%7B%20baseUrl%20%7D%7D/products/create"> <fieldset> <legend>Create new Product</legend> <div class="form-group"> <label for="title" class="col-lg-2 control-label">Title</label> <div class="col-lg-10"> <input type="text" class="form-control" id="title" name="title" value="{{ flash.form.title }}"> </div> </div> <div class="form-group"> <label for="category" class="col-lg-2 control-label">Category</label> <div class="col-lg-10" id="categories-container"></div> </div> <!-- ... other fields (price, quantity, brand, description) ... --> <div class="form-group"> <div class="col-lg-10 col-lg-offset-2"> <button type="submit" class="btn btn-primary">Add Product</button> </div> </div> </fieldset> </form> <div class="row"> <div class="col-md-6"> <h5>Upload Photos</h5> <form action="%7B%7B%20baseUrl%20%7D%7D/upload" method="POST" class="dropzone" id="photosdropzone" enctype="multipart/form-data"></form> </div> </div> {% include 'partials/categories.html' %} {% endblock %}</code>
(Nota: Bahagian hendaklah mengandungi medan input yang sama untuk harga, kuantiti, jenama, dan perihalan, mencerminkan struktur medan tajuk.) ... other fields ...
pengendalian muat naik imej ( dalam uploadAction
): Product.php
<code class="language-php">public function uploadAction() { $storage = new \Upload\Storage\FileSystem('uploads'); $file = new \Upload\File('file', $storage); $new_filename = uniqid(); $file->setName($new_filename); $_SESSION['uploads'][] = $new_filename . '.' . $file->getExtension(); $file->addValidations([ new \Upload\Validation\Mimetype(['image/png', 'image/gif', 'image/jpg']), new \Upload\Validation\Size('6M') ]); $errors = []; try { $file->upload(); } catch (Exception $e) { $errors = $file->getErrors(); } $response_data = ['errors' => $errors]; echo json_encode($response_data); }</code>
Kategori Ajax (new-product.js
<code class="language-javascript">(function() { const categoriesTemplate = Handlebars.compile($('#categories-template').html()); $('#title').blur(function() { const title = $(this).val(); $.post('/tester/ebay_trading_api/categories', { title }, function(response) { const categories = JSON.parse(response); const html = categoriesTemplate({ categories }); $('#categories-container').html(html); }); }); })();</code>(baki kod untuk
, , categoriesAction
, dan getSuggestedCategories
akan mengikuti struktur yang sama dengan tindak balas asal, tetapi dengan pemformatan dan kejelasan yang lebih baik. ditinggalkan di sini tetapi boleh direkonstruksi berdasarkan contoh yang disediakan.) createAction
addItem
Penjelasan halus ini memberikan pendekatan yang lebih berstruktur dan boleh dibaca untuk membina fungsi tambahan produk eBay. Ingatlah untuk berunding dengan dokumentasi API Perdagangan eBay untuk maklumat terperinci mengenai panggilan API dan pengendalian ralat. Coretan kod yang disediakan hendaklah diintegrasikan ke dalam rangka kerja aplikasi yang lebih besar.
Atas ialah kandungan terperinci Menambah produk ke kedai eBay anda dengan API Perdagangan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!