Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Woocommerce API
phpamator
post 16.12.2021, 21:00:52
Post #1





Grupa: Zarejestrowani
Postów: 321
Pomógł: 3
Dołączył: 10.07.2016
Skąd: UK-raine

Ostrzeżenie: (0%)
-----


Hejka, jako, że święta tuż tuż,
WSZYSTKIEGO DOBREGO, wielkiego Mikołaja i prezentów po sufit.


Dość słodzenia i do rzeczy tongue.gif

Szukam przykładów jak pobrać listę klientów woocomerce przez API.
Nie wiem gdzie jest błąd ale jak wysyłam request to mi zwraca wszystko co się tylko da ale nie listę. Mogę zobaczyć wszystkie obiekty jakie tylko, wszystkie endpointy ale nie mogę wyciągnąć danych klientów
  1. require __DIR__ . '/vendor/autoload.php';
  2.  
  3. use Automattic\WooCommerce\Client;
  4.  
  5. use Automattic\WooCommerce\HttpClient\HttpClientException;
  6.  
  7. $woocommerce = new Client(
  8. 'https://applications.com/index.php',
  9. 'moj klucz',
  10. 'ymoj klucz',
  11. [
  12. 'version' => 'wc/v3/?=',
  13. ]
  14. );
  15. try {
  16. // Array of response results.
  17. $data = [
  18. 'role' => 'customer'
  19.  
  20. ];
  21. $results = $woocommerce->get('customers',$data);
  22. echo '<pre>';
  23. print_r($results);
  24.  
  25. // foreach ($results as $prod)
  26. // {
  27. // $prods .= '';
  28. // }
  29.  
  30. } catch (HttpClientException $e) {
  31. //
  32. }
  33.  

przykładowy kod wywala mi tylko ....
  1. stdClass Object
  2. (
  3. [namespace] => wc/v3
  4. [routes] => stdClass Object
  5. (
  6. [/wc/v3] => stdClass Object
  7. (
  8. [namespace] => wc/v3
  9. [methods] => Array
  10. (
  11. [0] => GET
  12. )
  13.  
  14. [endpoints] => Array
  15. (
  16. [0] => stdClass Object
  17. (
  18. [methods] => Array
  19. (
  20. [0] => GET
  21. )
  22.  
  23. [args] => stdClass Object
  24. (
  25. [namespace] => stdClass Object
  26. (
  27. [default] => wc/v3
  28. [required] =>
  29. )
  30.  
  31. [context] => stdClass Object
  32. (
  33. [default] => view
  34. [required] =>
  35. )
  36.  
  37. )
  38.  
  39. )
  40.  
  41. )
  42.  
  43. [_links] => stdClass Object
  44. (
  45. [self] => Array
  46. (
  47. [0] => stdClass Object .............
  48.  
  49.  


Podpowiedzcie proszę
oczywiście nie podpinam się z WP, robię zewnętrzny skrypt.
zapomniałem dodać, że używan do tego :
automattic/woocommerce PHP wrapper for the WooCommerce REST API
który działa na innym systemie (przynajmniej pobiera produkty) tongue.gif


Ten post edytował phpamator 16.12.2021, 22:12:32
Go to the top of the page
+Quote Post
aras785
post 17.12.2021, 13:40:04
Post #2





Grupa: Zarejestrowani
Postów: 859
Pomógł: 177
Dołączył: 29.10.2009

Ostrzeżenie: (0%)
-----


Ten kod działa:

  1. <?php
  2.  
  3. require __DIR__ . '/vendor/autoload.php';
  4.  
  5. use Automattic\WooCommerce\Client;
  6.  
  7. $woocommerce = new Client(
  8. 'https://test.pl',
  9. 'key',
  10. 'key2',
  11. [
  12. 'version' => 'wc/v3',
  13. ]
  14. );
  15.  
  16. $results = $woocommerce->get('customers', ['role' => 'customer']); //lub 'role' => 'all'
  17. var_dump($results);


Pamiętaj, że dla API Woocommerce klientem jest tylko ten kto figuruje jako zarejestrowany użytkownik z rolą "customer". Jeśli chcesz też tych niezarejestrowanych to musisz przelecieć zamówienia i sobie pobrać z tych zamówień informacje.


Pozdrawiam
Go to the top of the page
+Quote Post
phpamator
post 18.12.2021, 02:27:22
Post #3





Grupa: Zarejestrowani
Postów: 321
Pomógł: 3
Dołączył: 10.07.2016
Skąd: UK-raine

Ostrzeżenie: (0%)
-----


Hej, dzięki za odpowiedź, owszem działa, na jednej maszynie mój kod też działa ana drugiej już nie i nie wiem dlaczego.
ten sam kod spodziewałem się będzie działał na róznych instalacjach (oczywiście używając odpowiednich kluczy i urli - żeby nie było)
w tym dziwnym przypadku muszę dodać "?" za "wc/v3/" bez tego wywala tylko błąd że nie mogę czytać resource'ów
a żeby było ciekawiej to var_dump wywalami to co pokazałem powyżej czyli wszystkie obiekty/strukture itd.
Czy to normalne ?
Co może być powodem?
Uzytkownik dla którego uruchomiłem dostęp przez API ma prawa administratora ......
łapki mi opadajątongue.gif



I kolejna sprawa, jak zbudować takie coś:
  1. 'categories' => [ $categories
  2. [
  3. 'id' => 9
  4. ],
  5. [
  6. 'id' => 14
  7. ]
  8. ],
  9.  
  10. 'images' => [
  11. [
  12. 'src' => 'http://demo.woothemes.com/woocommerce/wp-content/uploads/sites/56/2013/06/T_2_front.jpg'
  13. ],
  14. [
  15. 'src' => 'http://demo.woothemes.com/woocommerce/wp-content/uploads/sites/56/2013/06/T_2_back.jpg'
  16. ]
  17. ]
  18. ];

mam liste kategorii i liste obrazków

i za diabła nie czaje jak taką strukturę zbudować
buduję arraye ale nijak nie wyglądają nawet podobnie do tego
a co za tym idzie import .... nie działa tongue.gif

help me Obiwan Kenobi, you my only hope!


aaah ok,poradzilem sobie jakos z tym
przynajmniej kategorie już dodaje
tongue.gif


  1. (
  2. [name] => ANOTHER PRODUCT PIFLO
  3. [type] => simple
  4. [sku] => SKUP-12312
  5. [regular_price] => 3444
  6. [description] => hfodishfoihoif aoihfdois haiohfdioh soairewrewrwe
  7. [short_description] => rewrewrwerewrewrwerewrewrewrewrwt tewt etewtew
  8. [categories] => Array
  9. (
  10. [0] => Array
  11. (
  12. [id] => 16
  13. )
  14.  
  15. [1] => Array
  16. (
  17. [id] => 18
  18. )
  19.  
  20. [2] => Array
  21. (
  22. [id] => 19
  23. )
  24.  
  25. )
  26.  
  27. [images] => Array
  28. (
  29. [0] => Array
  30. (
  31. [src] => images/SKUP-12312/ad17b1ce6fade9d8957d33b3536eceeb.jpg
  32. )
  33.  
  34. [1] => Array
  35. (
  36. [src] => images/SKUP-12312/badge-cert-developer.png
  37. )
  38.  
  39. [2] => Array
  40. (
  41. [src] => images/SKUP-12312/badge-cert-front.png
  42. )
  43.  
  44. )
  45.  
  46. )
  47.  
  48. ///
  49. $data = [
  50. 'name' => strtoupper($_POST['title']),
  51. 'type' => strtolower($_POST['type']),
  52. 'sku' => strtoupper($sku),
  53. 'regular_price' => $_POST['price'],
  54. 'description' => $_POST['description'],
  55. 'short_description' => $_POST['short_description'],
  56. 'categories' => $categories,
  57. 'images' => $images
  58. ];
  59.  
  60.  

tak wyglada moja lista elementow i za diabla nie chce mi dodac produktu z obrazkami, coś skopałem i nie widzę przyczyny.
nie wiem .... ;(
Go to the top of the page
+Quote Post
trueblue
post 18.12.2021, 08:19:30
Post #4





Grupa: Zarejestrowani
Postów: 6 761
Pomógł: 1822
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


Ścieżka do obrazków musi być bezwzględna, tj. cały URL: http(s)://....


--------------------
Go to the top of the page
+Quote Post
phpamator
post 18.12.2021, 13:02:42
Post #5





Grupa: Zarejestrowani
Postów: 321
Pomógł: 3
Dołączył: 10.07.2016
Skąd: UK-raine

Ostrzeżenie: (0%)
-----


Cytat(trueblue @ 18.12.2021, 08:19:30 ) *
Ścieżka do obrazków musi być bezwzględna, tj. cały URL: http(s)://....

Hek truelbue,

próbowałem i tak i tak z tym samym efektem, może faktycznie mam jakieś ustawienia folderów nieprawidłowe, sprawdzę i zdam relację tongue.gif
dzięki za podpowiedź
Go to the top of the page
+Quote Post
trueblue
post 18.12.2021, 13:20:50
Post #6





Grupa: Zarejestrowani
Postów: 6 761
Pomógł: 1822
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


Sprawdź jakiś URL, po prostu wklej go do przeglądarki i zobacz czy zdjęcie się wyświetla.


--------------------
Go to the top of the page
+Quote Post
phpamator
post 18.12.2021, 13:49:13
Post #7





Grupa: Zarejestrowani
Postów: 321
Pomógł: 3
Dołączył: 10.07.2016
Skąd: UK-raine

Ostrzeżenie: (0%)
-----


Ok tak też zrobiłem ale ....i tu moje jeszcze większe zaskoczenie ....
ścieżki bezwzględne a plików nie znajduje ;(

http://xx.xx.xx.xx/productbuilder/images...Xonly.svg-1.png
tam jest plik 100% ale go nie widzi i nie wiem, błąd w konfiguracji serwera ?już zgłupiałem całkiem
pliki uploaduje to odpowiedniego katalogu w folderze samej aplikacji
...


aaahaha ale ja "gupi" jestem
już zrobione. działa jak ta lala

jak jakiś oszołom szukałem problemu podczas gdy okazało się, nazwa katalogu była niewłaściwa uppercased (NAZWA) a szukałem nazwa.

Dzięki za podpowiedzi ;P
ZROBIONE tongue.gif

Ten post edytował phpamator 18.12.2021, 14:05:38
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 26.04.2024 - 17:35