Verkaufskanäle alle Länder freischalten

Moin,

unser Shop soll international verkaufen. Muss ich dafür unter „Verkaufskanäle“ -> „Name des Shops“ -> „Länder“ alle 2xx Länder der Erde manuell hinzufügen oder geht das irgendwie schneller?

Habe es mittels API requests gelöst. Im Frontend habe ich keine Möglichkeit gefunden.

@btxtiger schrieb:

Habe es mittels API requests gelöst. Im Frontend habe ich keine Möglichkeit gefunden.

Hallo btxtiger,

könntest Du bitte beschreiben, wie Du das gemacht hast?

 

VG Frank

@Aspidoras‍ 

Im Grunde sind es 4 Schritte:

  1. Alle country IDs abrufen:
    Das geht mit einem POST Request an /search/country mit dem body 

    $body = [‘includes’ => [‘country’ => [‘id’]], ];

 

  1. Dann aus der Reponse ein Array mit der Struktur

    $a = [[‘id’ => 123], … ]

aus allen IDs erzeugen

$allCountryIdsFormatted = array_map(fn($id) => ['id' => $id], $allCountryIds);

 

  1. Dann die Sales-Channel ID holen mit POST Request an _ /search/sales-channel _ und dem body

    $body = [‘filter’ => [[‘type’ => ‘contains’, ‘field’ => ‘name’, ‘value’ => ‘My SalesChannel Name’]] ];

 

  1. Dann die Countrys des Sales channel updaten mit einem PUT Request an /sales-channel/12345 wobei 12345 mit der zuvor geholten channelId zu ersetzen ist. Den Request mit dem Body absenden:

    $body = [‘id’ => $channelId, ‘countries’ => $allCountryIdsFormatted,];

 

Hoffe ich konnte damit weiterhelfen.

VG