PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Google Shopping für einzelne Produkte deaktivieren



KlausK
17.02.2017, 10:56
Wie lässt sich Google Shopping für einzelne Produkte in GX v2.4.x deaktivieren?
Oder weiß jemand, welche Tabelle/Spalte dafür verantwortlich ist?

KlausK
20.02.2017, 20:03
Verantwortlich ist m.E. die Spalte expiration_date in der Tabelle products_item_codes.
Über das Verfallsdatum (expiration_date), dass nichts mit dem Verfallsdatum von Lebensmitteln zu tun hat, lässt sich die Produktanzeige in Google-Shopping steuern.

Das kleinstmögliche Datum 0000-00-00 (ab GX 2.7.x 1000-01-01) ist default. Damit bleibt das Produkt unendlich aktiv.
Ein Datum bis max. 30 Tage in der Zukunft deaktiviert das Produkt zum angegebenen Zeitpunkt.
Zum sofortigen Deaktivieren wählt man ein Datum in der Vergangenheit, z.B. von gestern.
Will man die Produkte später wieder aktivieren, wählt man wieder 0000-00-00 bzw. 1000-01-01
Siehe auch: expiration_date (https://support.google.com/merchants/answer/6324499)

Ich verwende immernoch die alte Import-Methode und wundere mich schon länger, dass die expiration_date und identifier_exists nie mit übergeben wird.
Deshalb habe ich jetzt mal in die import.php im Verzeichnis /admin/includes/classes/ geschaut und einen Fehler ab Zeile 492 festgestellt:


if ($this->FileSheme['code_isbn'] == 'Y')
$t_item_codes_array = array_merge($t_item_codes_array, array ('code_isbn' => $dataArray['code_isbn']));
if ($this->FileSheme['code_upc'] == 'Y')
$t_item_codes_array = array_merge($t_item_codes_array, array ('code_upc' => $dataArray['code_upc']));
if ($this->FileSheme['code_mpn'] == 'Y')
$t_item_codes_array = array_merge($t_item_codes_array, array ('code_mpn' => $dataArray['code_mpn']));
if ($this->FileSheme['code_jan'] == 'Y')
$t_item_codes_array = array_merge($t_item_codes_array, array ('code_jan' => $dataArray['code_jan']));
if ($this->FileSheme['brand_name'] == 'Y')
$t_item_codes_array = array_merge($t_item_codes_array, array ('brand_name' => $dataArray['brand_name']));
if ($this->FileSheme['identifier_exists'] == 'Y')
$t_item_codes_array = array_merge($t_item_codes_array, array ('brand_name' => $dataArray['brand_name']));
if ($this->FileSheme['gender'] == 'Y')
$t_item_codes_array = array_merge($t_item_codes_array, array ('brand_name' => $dataArray['brand_name']));
if ($this->FileSheme['age_group'] == 'Y')
$t_item_codes_array = array_merge($t_item_codes_array, array ('brand_name' => $dataArray['brand_name']));
if ($this->FileSheme['expiration_date'] == 'Y')
$t_item_codes_array = array_merge($t_item_codes_array, array ('brand_name' => $dataArray['brand_name']));


Wer, wie ich, immernoch mit der alten Import-Funktion arbeitet, sollte die import.php entsprechend anpassen:



if ($this->FileSheme['code_isbn'] == 'Y')
$t_item_codes_array = array_merge($t_item_codes_array, array ('code_isbn' => $dataArray['code_isbn']));
if ($this->FileSheme['code_upc'] == 'Y')
$t_item_codes_array = array_merge($t_item_codes_array, array ('code_upc' => $dataArray['code_upc']));
if ($this->FileSheme['code_mpn'] == 'Y')
$t_item_codes_array = array_merge($t_item_codes_array, array ('code_mpn' => $dataArray['code_mpn']));
if ($this->FileSheme['code_jan'] == 'Y')
$t_item_codes_array = array_merge($t_item_codes_array, array ('code_jan' => $dataArray['code_jan']));
if ($this->FileSheme['brand_name'] == 'Y')
$t_item_codes_array = array_merge($t_item_codes_array, array ('brand_name' => $dataArray['brand_name']));
if ($this->FileSheme['identifier_exists'] == 'Y')
$t_item_codes_array = array_merge($t_item_codes_array, array ('identifier_exists' => $dataArray['identifier_exists']));
if ($this->FileSheme['gender'] == 'Y')
$t_item_codes_array = array_merge($t_item_codes_array, array ('gender' => $dataArray['gender']));
if ($this->FileSheme['age_group'] == 'Y')
$t_item_codes_array = array_merge($t_item_codes_array, array ('age_group' => $dataArray['age_group']));
if ($this->FileSheme['expiration_date'] == 'Y')
$t_item_codes_array = array_merge($t_item_codes_array, array ('expiration_date' => $dataArray['expiration_date']));