1 <sect1 id="zend.service.amazon">
2 <title>Zend_Service_Amazon</title>
3 <sect2 id="zend.service.amazon.introduction">
4 <title>Wprowadzenie</title>
6 <code>Zend_Service_Amazon</code> jest prostym API do użycia z web serwisami
7 Amazon. <code>Zend_Service_Amazon</code> ma dwa API: bardziej tradycyjne,
8 które jest oparte na własnym API serwisu Amazon, oraz prostsze API zapytań do
9 łatwego tworzenia nawet skomplikowanych zapytań wyszukiwania.
12 <code>Zend_Service_Amazon</code> pozwala programistom odbierać
13 informacje dostępne na stronach Amazon.com bezpośrednio za pomocą
14 API web serwisów Amazon. Przykłady zawierają:
18 Informacje o przedmiotach, takie jak obrazki, opisy, cenniki i inne
23 Recenzje klientów i redaktorów
28 Podobne produkty i akcesoria
44 Aby użyć <code>Zend_Service_Amazon</code>, musisz posiadać klucz API programisty
45 Amazon. Aby otrzymać klucz i zdobyć więcej informacji odwiedź stronę
46 <ulink url="http://www.amazon.com/gp/aws/landing.html">Amazon Web Services</ulink>.
51 Twój klucz do API serwisu Amazon jest połączony z twoją tożsamością
52 w Amazon, więc staraj się przechowywać twój klucz API bezpiecznie.
55 <example id="zend.service.amazon.introduction.example.itemsearch">
56 <title>Przeszukiwanie Amazon używając tradycyjnego API</title>
58 W tym przykładzie, szukamy książek o PHP w Amazon i przechodzimy
59 przez nie w pętli, wyświetlając je.
61 <programlisting><![CDATA[
62 $amazon = new Zend_Service_Amazon('AMAZON_API_KEY');
63 $results = $amazon->itemSearch(array('SearchIndex' => 'Books',
64 'Keywords' => 'php'));
65 foreach ($results as $result) {
66 echo $result->Title .'<br />';
71 <example id="zend.service.amazon.introduction.example.query_api">
72 <title>Przeszukiwanie Amazon używając API zapytań</title>
74 Tutaj także szukamy książek o PHP w Amazon, ale zamiast
75 tradycyjnego API używamy API zapytań, które jest stworzone
76 w oparciu o projektowy wzorzec płynnych interfejsów.
78 <programlisting><![CDATA[
79 $query = new Zend_Service_Amazon_Query('AMAZON_API_KEY');
80 $query->category('Books')->Keywords('PHP');
81 $results = $query->search();
82 foreach ($results as $result) {
83 echo $result->Title . '<br />';
89 <sect2 id="zend.service.amazon.countrycodes">
90 <title>Kody państw</title>
92 Domyślnie, <code>Zend_Service_Amazon</code> łączy się z web serwisem
93 Amazon w Stanach Zjednoczonych ("<code>US</code>"). Aby połączyć się
94 z innym krajem, w prosty sposób podaj kod odpowiedniego państwa jako
95 drugi parametr konstruktora:
97 <example id="zend.service.amazon.countrycodes.example.country_code">
98 <title>Wybierania państwa web serwisu Amazon</title>
99 <programlisting><![CDATA[
100 // Łączenie się z Amazon w Japonii
101 $amazon = new Zend_Service_Amazon('AMAZON_API_KEY', 'JP');
106 <title>Kody państw</title>
108 Poprawne kody państw: <code>CA</code>, <code>DE</code>, <code>FR</code>, <code>JP</code>,
109 <code>UK</code>, oraz <code>US</code>.
113 <sect2 id="zend.service.amazon.itemlookup">
114 <title>Szukanie specyficznego przedmiotu w Amazon na podstawie ASIN</title>
116 Metoda <code>itemLookup()</code> zapewnia możliwość pobrania informacji
117 o konkretnym przedmiocie, którego ASIN jest znany.
119 <example id="zend.service.amazon.itemlookup.example.asin">
120 <title>Szukanie specyficznego przedmiotu w Amazon na podstawie ASIN</title>
121 <programlisting><![CDATA[
122 $amazon = new Zend_Service_Amazon('AMAZON_API_KEY');
123 $item = $amazon->itemLookup('B0000A432X');
128 Metoda <code>itemLookup()</code> także akceptuje opcjonalny drugi parametr
129 do obsługi opcji wyszukiwania. Aby poznać pełne informacje, włączając
130 w to listę dostępnych opcji odwiedź
132 url="http://www.amazon.com/gp/aws/sdk/main.html/103-9285448-4703844?s=AWSEcommerceService&v=2005-10-05&p=ApiReference/ItemLookupOperation">dokumentację Amazon</ulink>.
135 <title>Informacje o zdjęciach</title>
137 Aby odebrać informacje o zdjęciach dla twoich wyników wyszukiwania, musisz ustawić
138 opcję <code>ResponseGroup</code> na <code>Medium</code> lub <code>Large</code>.
142 <sect2 id="zend.service.amazon.itemsearch">
143 <title>Wykonywanie wyszukiwań przedmiotów Amazon</title>
145 Wyszukiwanie przedmiotów oparte na różnych dostępnych kryteriach
146 jest przeprowadzane za pomocą metody <code>itemSearch()</code>, tak
147 jak w poniższym przykładzie:
149 <example id="zend.service.amazon.itemsearch.example.basic">
150 <title>Wykonywanie wyszukiwań przedmiotów Amazon</title>
151 <programlisting><![CDATA[
152 $amazon = new Zend_Service_Amazon('AMAZON_API_KEY');
153 $results = $amazon->itemSearch(array('SearchIndex' => 'Books',
154 'Keywords' => 'php'));
155 foreach($results as $result) {
156 echo $result->Title .'<br />';
161 <example id="zend.service.amazon.itemsearch.example.responsegroup">
162 <title>Użycie opcji <code>ResponseGroup</code></title>
164 Opcja <code>ResponseGroup</code> używana jest do konfigurowania
165 informacji jakie mają być zwracane w odpowiedzi.
167 <programlisting role="php"><![CDATA[
168 $amazon = new Zend_Service_Amazon('AMAZON_API_KEY');
169 $results = $amazon->itemSearch(array(
170 'SearchIndex' => 'Books',
172 'ResponseGroup' => 'Small,ItemAttributes,Images,SalesRank,Reviews,' .
173 'EditorialReview,Similarities,ListmaniaLists'
175 foreach ($results as $result) {
176 echo $result->Title . '<br />';
182 Metoda <code>itemSearch()</code> akceptuje jeden parametr w postaci
183 tablicy do obsługi opcji wyszukiwania. Aby poznać wszystkie
184 szczegóły włączając w to listę dostępnych opcji, proszę zobacz
186 url="http://www.amazon.com/gp/aws/sdk/main.html/103-9285448-4703844?s=AWSEcommerceService&v=2005-10-05&p=ApiReference/ItemSearchOperation">dokumentację Amazon</ulink>
190 Klasa <link linkend="zend.service.amazon.query"><code>Zend_Service_Amazon_Query</code></link>
191 jest nakładką na tę metodę ułatwiającą tworzenie zapytań wyszukiwania.
195 <sect2 id="zend.service.amazon.query">
196 <title>Użycie alternatywnego API zapytań</title>
197 <sect3 id="zend.service.amazon.query.introduction">
198 <title>Wprowadzenie</title>
200 <code>Zend_Service_Amazon_Query</code> zapewnia alternatywne API
201 do użycia z web serwisami Amazon. Alternatywne API używa wzorca
202 projektowego płynnych interfejsów. Oznacza to, że wszystkie
203 wywołania mogą być przeprowadzone przez łańcuchowe wywołania
204 metod. (np. <code>$obj->method()->method2($arg)</code>)
207 API <code>Zend_Service_Amazon_Query</code> używa przeładowania
208 w celu łatwego ustawiania wyszukiwania przedmiotów i pozwala na
209 wyszukiwanie na podstawie określonych kryteriów. Każda z opcji
210 jest udostępniana jako wywołanie metody, a każdy argument metody
211 odpowiada wartości opcji o tej nazwie:
213 <example id="zend.service.amazon.query.introduction.example.basic">
214 <title>Przeszukiwanie serwisu Amazon używając alternatywnego API zapytań</title>
216 W tym przykładzie alternatywne API zapytań używane jest jako
217 płynny interfejs służący do określania opcji i odpowiadającym
220 <programlisting><![CDATA[
221 require_once 'Zend/Service/Amazon/Query.php';
222 $query = new Zend_Service_Amazon_Query('MY_API_KEY');
223 $query->Category('Books')->Keywords('PHP');
224 $results = $query->search();
225 foreach ($results as $result) {
226 echo $result->Title .'<br />';
231 To ustawia opcję <code>Category</code> na "Books" oraz <code>Keywords</code> na "PHP".
234 Aby uzyskać więcej informacji o dostępnych opcjach, proszę odwiedź
236 url="http://www.amazon.com/gp/aws/sdk/main.html/102-9041115-9057709?s=AWSEcommerceService&v=2005-10-05&p=ApiReference/ItemSearchOperation">dokumentację Amazon</ulink>.
241 <sect2 id="zend.service.amazon.classes">
242 <title>Klasy Zend_Service_Amazon</title>
244 Poniższe klasy są zwracane przez metody
245 <link linkend="zend.service.amazon.itemlookup"><code>Zend_Service_Amazon::itemLookup()</code></link>
247 <link linkend="zend.service.amazon.itemsearch"><code>Zend_Service_Amazon::itemSearch()</code></link>:
249 <listitem><para><link linkend="zend.service.amazon.classes.item"><code>Zend_Service_Amazon_Item</code></link></para></listitem>
250 <listitem><para><link linkend="zend.service.amazon.classes.image"><code>Zend_Service_Amazon_Image</code></link></para></listitem>
251 <listitem><para><link linkend="zend.service.amazon.classes.resultset"><code>Zend_Service_Amazon_ResultSet</code></link></para></listitem>
252 <listitem><para><link linkend="zend.service.amazon.classes.offerset"><code>Zend_Service_Amazon_OfferSet</code></link></para></listitem>
253 <listitem><para><link linkend="zend.service.amazon.classes.offer"><code>Zend_Service_Amazon_Offer</code></link></para></listitem>
254 <listitem><para><link linkend="zend.service.amazon.classes.similarproduct"><code>Zend_Service_Amazon_SimilarProduct</code></link></para></listitem>
255 <listitem><para><link linkend="zend.service.amazon.classes.accessories"><code>Zend_Service_Amazon_Accessories</code></link></para></listitem>
256 <listitem><para><link linkend="zend.service.amazon.classes.customerreview"><code>Zend_Service_Amazon_CustomerReview</code></link></para></listitem>
257 <listitem><para><link linkend="zend.service.amazon.classes.editorialreview"><code>Zend_Service_Amazon_EditorialReview</code></link></para></listitem>
258 <listitem><para><link linkend="zend.service.amazon.classes.listmania"><code>Zend_Service_Amazon_ListMania</code></link></para></listitem>
261 <sect3 id="zend.service.amazon.classes.item">
262 <title>Zend_Service_Amazon_Item</title>
264 <code>Zend_Service_Amazon_Item</code> jest typem klasy używanej
265 dp reprezentowania przedmiotu Amazon zwracanego przez web serwis.
266 Zawiera ona wszystkie atrybuty przedmiotu, włączając w to tytuł,
269 <sect4 id="zend.service.amazon.classes.item.asxml">
270 <title>Zend_Service_Amazon_Item::asXML()</title>
274 <methodname>asXML</methodname>
278 <para>Zwraca oryginalną treść XML dla przedmiotu</para>
280 <sect4 id="zend.service.amazon.classes.item.properties">
281 <title>Właściwości</title>
283 <code>Zend_Service_Amazon_Item</code> posiada właściwości
284 bezpośrednio związane ze standardowymi częściami Amazon API.
286 <table id="zend.service.amazon.classes.item.properties.table-1">
287 <title>Właściwości Zend_Service_Amazon_Item</title>
299 <entry>string</entry>
300 <entry>ID przedmiotu w Amazon</entry>
303 <entry>DetailPageURL</entry>
304 <entry>string</entry>
305 <entry>Adres URL strony ze szczegółowymi informacjami o przedmiocie</entry>
308 <entry>SalesRank</entry>
310 <entry>Ranking sprzedaży dla przedmiotu</entry>
313 <entry>SmallImage</entry>
314 <entry>Zend_Service_Amazon_Image</entry>
315 <entry>Małe zdjęcie przedmiotu</entry>
318 <entry>MediumImage</entry>
319 <entry>Zend_Service_Amazon_Image</entry>
320 <entry>Średnie zdjęcie przedmiotu</entry>
323 <entry>LargeImage</entry>
324 <entry>Zend_Service_Amazon_Image</entry>
325 <entry>Duże zdjęcie przedmiotu</entry>
328 <entry>Subjects</entry>
330 <entry>Tematy przedmiotów</entry>
333 <entry>Offers</entry>
337 linkend="zend.service.amazon.classes.offerset">Zend_Service_Amazon_OfferSet</link>
340 <entry>Podsumowanie ofert oraz oferty dla przedmiotu</entry>
343 <entry>CustomerReviews</entry>
346 Recenzje klientów reprezentowane jako tablica obiektów
349 linkend="zend.service.amazon.classes.customerreview">Zend_Service_Amazon_CustomerReview</link>
354 <entry>EditorialReviews</entry>
357 Recenzje redaktorów reprezentowane jako tablica obiektów
360 linkend="zend.service.amazon.classes.editorialreview">Zend_Service_Amazon_EditorialReview</link>
365 <entry>SimilarProducts</entry>
368 Podobne produkty reprezentowane jako tablica obiektów
371 linkend="zend.service.amazon.classes.similarproduct">Zend_Service_Amazon_SimilarProduct</link>
376 <entry>Accessories</entry>
379 Akcesoria dla przedmiotu reprezentowane jako tablica obiektów
382 linkend="zend.service.amazon.classes.accessories">Zend_Service_Amazon_Accessories</link>
387 <entry>Tracks</entry>
389 <entry>Tablica numerów i nazw utworów dla muzycznych płyt CD oraz DVD</entry>
392 <entry>ListmaniaLists</entry>
395 Listy Listmania powiązane z przedmiotem jako tablica obiektó∑
398 linkend="zend.service.amazon.classes.listmania">Zend_Service_Amazon_ListmainList</link>
403 <entry>PromotionalTag</entry>
404 <entry>string</entry>
405 <entry>Etykieta promocyjna przedmiotu</entry>
411 <link linkend="zend.service.amazon.classes">Powrót do listy klas</link>
415 <sect3 id="zend.service.amazon.classes.image">
416 <title>Zend_Service_Amazon_Image</title>
417 <para><code>Zend_Service_Amazon_Image</code> reprezentuje zdalny obraz dla produktu.</para>
418 <sect4 id="zend.service.amazon.classes.image.properties">
419 <title>Właściwości</title>
420 <table id="zend.service.amazon.classes.image.properties.table-1">
421 <title>Właściwości Zend_Service_Amazon_Image</title>
433 <entry>Zend_Uri</entry>
434 <entry>Zdalny adres URL obrazka</entry>
437 <entry>Height</entry>
439 <entry>Wysokość obrazka w pikselach</entry>
444 <entry>Szerokość obrazka w pikselach</entry>
450 <link linkend="zend.service.amazon.classes">Powrót do listy klas</link>
454 <sect3 id="zend.service.amazon.classes.resultset">
455 <title>Zend_Service_Amazon_ResultSet</title>
457 Obiekty <code>Zend_Service_Amazon_ResultSet</code> są zwracane przez metodę
458 <link linkend="zend.service.amazon.itemsearch">Zend_Service_Amazon::itemSearch()</link>
459 i pozwalają ci na łatwą obsługę wielu zwróconych wyników wyszukiwania.
462 <title>SeekableIterator</title>
464 Implementuje interfejs <code>SeekableIterator</code> dla łatwej iteracji
465 (np. używając <code>foreach</code>), tak samo jak i dla bezpośredniego
466 dostępu do specyficznego wyniku używając metody <code>seek()</code>.
469 <sect4 id="zend.service.amazon.classes.resultset.totalresults">
470 <title>Zend_Service_Amazon_ResultSet::totalResults()</title>
473 <methodname>totalResults</methodname>
476 <para>Zwraca całkowitą ilość wyników zwróconych przez wyszukiwanie</para>
478 <link linkend="zend.service.amazon.classes">Powrót do listy klas</link>
482 <sect3 id="zend.service.amazon.classes.offerset">
483 <title>Zend_Service_Amazon_OfferSet</title>
485 Każdy wynik zwracany przez metody
486 <link linkend="zend.service.amazon.itemsearch">Zend_Service_Amazon::itemSearch()</link>
488 <link linkend="zend.service.amazon.itemlookup">Zend_Service_Amazon::itemLookup()</link>
490 <code>Zend_Service_Amazon_OfferSet</code> poprzez który dostępne są
491 informacje o cenach dla przedmiotu.
493 <sect4 id="zend.service.amazon.classes.offerset.parameters">
494 <title>Właściwości</title>
495 <table id="zend.service.amazon.classes.offerset.parameters.table-1">
496 <title>Właściwości Zend_Service_Amazon_OfferSet</title>
507 <entry>LowestNewPrice</entry>
509 <entry>Najniższa cena dla nowego przedmiotu (stan "New")</entry>
512 <entry>LowestNewPriceCurrency</entry>
513 <entry>string</entry>
515 Waluta dla <code>LowestNewPrice</code>
519 <entry>LowestOldPrice</entry>
521 <entry>Najniższa cena dla używanego przedmiotu (stan "Used")</entry>
524 <entry>LowestOldPriceCurrency</entry>
525 <entry>string</entry>
527 Waluta dla <code>LowestOldPrice</code>
531 <entry>TotalNew</entry>
533 <entry>Całkowita ilość przedmiotów o stanie "new"</entry>
536 <entry>TotalUsed</entry>
538 <entry>Całkowita ilość przedmiotów o stanie "used"</entry>
541 <entry>TotalCollectible</entry>
543 <entry>Całkowita ilość przedmiotów o stanie "collectible"</entry>
546 <entry>TotalRefurbished</entry>
548 <entry>Całkowita ilość przedmiotów o stanie "refurbished"</entry>
551 <entry>Offers</entry>
555 <code>Zend_Service_Amazon_Offer</code>.
562 <link linkend="zend.service.amazon.classes">Powrót do listy klas</link>
566 <sect3 id="zend.service.amazon.classes.offer">
567 <title>Zend_Service_Amazon_Offer</title>
569 Każda oferta dla przedmiotu jest zwracana jako obiekt
570 <code>Zend_Service_Amazon_Offer</code>.
572 <sect4 id="zend.service.amazon.classes.offer.properties">
573 <title>Właściwości Zend_Service_Amazon_Offer</title>
574 <table id="zend.service.amazon.classes.offer.properties.table-1">
575 <title>Właściwości</title>
586 <entry>MerchantId</entry>
587 <entry>string</entry>
588 <entry>ID handlowca Amazon</entry>
591 <entry>GlancePage</entry>
592 <entry>string</entry>
593 <entry>Adres URL strony z podsumowaniem handlowca</entry>
596 <entry>Condition</entry>
597 <entry>string</entry>
598 <entry>Stan przedmiotu</entry>
601 <entry>OfferListingId</entry>
602 <entry>string</entry>
603 <entry>ID listy ofert</entry>
608 <entry>Cena za przedmiot</entry>
611 <entry>CurrencyCode</entry>
612 <entry>string</entry>
613 <entry>Kod waluty dla ceny przedmiotu</entry>
616 <entry>Availability</entry>
617 <entry>string</entry>
618 <entry>Dostępność przedmiotu</entry>
621 <entry>IsEligibleForSuperSaverShipping</entry>
622 <entry>boolean</entry>
623 <entry>Czy przedmiot jest dostępny w Super Saver Shipping czy nie</entry>
629 <link linkend="zend.service.amazon.classes">Powrót do listy klas</link>
633 <sect3 id="zend.service.amazon.classes.similarproduct">
634 <title>Zend_Service_Amazon_SimilarProduct</title>
636 Kiedy wyszukujemy przedmiotów, Amazon także zwraca listę
637 podobnych produktów, które także mogą odpowiadać szukającemu.
638 Każdy z nich jest zwracany jako obiekt
639 <code>Zend_Service_Amazon_SimilarProduct</code>.
642 Każdy obiekt zawiera informacje pozwalające ci na
643 przeprowadzenie kolejnego żądania w celu pobrania pełnych
644 informacji o przedmiocie.
646 <sect4 id="zend.service.amazon.classes.similarproduct.properties">
647 <title>Właściwości</title>
648 <table id="zend.service.amazon.classes.similarproduct.properties.table-1">
649 <title>Właściwości Zend_Service_Amazon_SimilarProduct</title>
661 <entry>string</entry>
662 <entry>Unikalny ID produktu (ASIN)</entry>
666 <entry>string</entry>
667 <entry>Tytuł produktu</entry>
673 <link linkend="zend.service.amazon.classes">Powrót do listy klas</link>
677 <sect3 id="zend.service.amazon.classes.accessories">
678 <title>Zend_Service_Amazon_Accessories</title>
680 Akcesoria dla zwróconego przedmiotu są reprezentowane jako obiekty <code>Zend_Service_Amazon_Accessories</code>
682 <sect4 id="zend.service.amazon.classes.accessories.properties">
683 <title>Właściwości</title>
684 <table id="zend.service.amazon.classes.accessories.properties.table-1">
685 <title>Właściwości Zend_Service_Amazon_Accessories</title>
697 <entry>string</entry>
698 <entry>Unikalny ID produktu Amazon (ASIN)</entry>
702 <entry>string</entry>
703 <entry>Tytuł produktu</entry>
709 <link linkend="zend.service.amazon.classes">Powrót do listy klas</link>
713 <sect3 id="zend.service.amazon.classes.customerreview">
714 <title>Zend_Service_Amazon_CustomerReview</title>
716 Każda recenzja klienta jest zwracana jako obiekt <code>Zend_Service_Amazon_CustomerReview</code>.
718 <sect4 id="zend.service.amazon.classes.customerreview.properties">
719 <title>Właściwości</title>
720 <table id="zend.service.amazon.classes.customerreview.properties.table-1">
721 <title>Właściwości Zend_Service_Amazon_CustomerReview</title>
732 <entry>Rating</entry>
733 <entry>string</entry>
734 <entry>Ocena przedmiotu</entry>
737 <entry>HelpfulVotes</entry>
738 <entry>string</entry>
739 <entry>Głosy mówiące o tym jak pomocna jest recenzja</entry>
742 <entry>CustomerId</entry>
743 <entry>string</entry>
744 <entry>ID klienta</entry>
747 <entry>TotalVotes</entry>
748 <entry>string</entry>
749 <entry>Całkowiita ilość głosów</entry>
753 <entry>string</entry>
754 <entry>Data oceny</entry>
757 <entry>Summary</entry>
758 <entry>string</entry>
759 <entry>Podsumowanie oceny</entry>
762 <entry>Content</entry>
763 <entry>string</entry>
764 <entry>Zawartość oceny</entry>
770 <link linkend="zend.service.amazon.classes">Powrót do listy klas</link>
774 <sect3 id="zend.service.amazon.classes.editorialreview">
775 <title>Zend_Service_Amazon_EditorialReview</title>
777 Każda recenzja redaktora jest zwracana jako obiekt
778 <code>Zend_Service_Amazon_EditorialReview</code>
780 <sect4 id="zend.service.amazon.classes.editorialreview.properties">
781 <title>Właściwości</title>
782 <table id="zend.service.amazon.classes.editorialreview.properties.table-1">
783 <title>Właściwości Zend_Service_Amazon_EditorialReview</title>
794 <entry>Source</entry>
795 <entry>string</entry>
796 <entry>Źródło recenzji redaktora</entry>
799 <entry>Content</entry>
800 <entry>string</entry>
801 <entry>Zawartość oceny</entry>
807 <link linkend="zend.service.amazon.classes">Powrót do listy klas</link>
811 <sect3 id="zend.service.amazon.classes.listmania">
812 <title>Zend_Service_Amazon_Listmania</title>
814 Wyniki wyszukiwania elementów List Mania są zwracane jako
815 obiekty <code>Zend_Service_Amazon_Listmania</code>.
817 <sect4 id="zend.service.amazon.classes.listmania.properties">
818 <title>Właściwości</title>
819 <table id="zend.service.amazon.classes.listmania.properties.table-1">
820 <title>Właściwości Zend_Service_Amazon_Listmania</title>
831 <entry>ListId</entry>
832 <entry>string</entry>
833 <entry>ID listy</entry>
836 <entry>ListName</entry>
837 <entry>string</entry>
838 <entry>Nazwa listy</entry>
844 <link linkend="zend.service.amazon.classes">Powrót do listy klas</link>