Installationsanleitung des AGI-Shop-Moduls "Google-XML-Export"
Geschätzter Installations-Aufwand: 30 Minuten
Zur besseren Lesbarkeit aktivieren Sie bitte Javascript in Ihrem Browser, bzw. lassen das Ausführen von Javascript zu.
Möchten Sie die Installation nicht selbst durchführen, können Sie gerne den kostenpflichtigen Installationsservice nutzen. Diesen bestellen Sie über dieses Formular: http://www.andreas-guder.de/bestelle-datenfeed-installation.html.
Für die Installation benötige ich
- die Angabe zur Shopversion
- einen FTP-Zugang zu Ihrem Shop oder alle in der Installationsanleitung aufgeführten zu ändernden Dateien aus Ihrem Shop
Einrichtung des Moduls
Sind die hier genannten Menüpunkte nicht sichtbar, prüfen Sie die Adminrechte Ihres Benutzers.
- Konfigurieren Sie das Modul im Menü "Module -> Export Module".
- Tragen Sie alle benötigten Google-Kategorien im Menü "Hilfsprogramme -> AGI Google XML Datenfeed -> Google-Taxonomie" ein.
- Ordnen Sie Ihren Shop-Kategorien und/oder Ihren Produkten die passende Google-Kategorie zu.
Beim Erstellen der Exportdatei werden Google-Kategorien von der Shop-Kategorie auf das Produkt vererbt, sofern am Produkt selbst keine Google-Kategorie angegeben ist. - Ordnen Sie Ihren Artikelmerkmalen die passenden Google-Attribute zu.
- Ordnen Sie Ihren Lieferstatus die passende Google-Verfügbarkeiten zu.
- Rufen Sie die URL "http://www.IHR_SHOP.de/export/google_xml.php" in Ihrem Browser auf.
Kann der Datenfeed erfolgreich erstellt werden, können Sie den ersten Testfeed im Google Merchant Center einrichten. - Rufen Sie die URL "http://www.IHR_SHOP.de/export/google_quick_xml.php" in Ihrem Browser auf.
Kann der Datenfeed erfolgreich erstellt werden, können Sie deinen Feed zur Aktualisierung ihres Inventars im Google Merchant Center einrichten.
Funktionsumfang des Moduls
Das Modul erstellt durch Aufruf der URL "http://www.IHR_SHOP.de/export/google_xml.php" einen vom Google Merchant Center lesbaren Datenfeed.
Die URL kann in den Zeitplaner des Google Merchant Center eingefügt werden, sodass bei Abruf automatisch der aktuelle Feed generiert wird.
Die wichtigsten Features:
- Google-Kategorien zu Ihren Produkten/Shop-Kategorien zuordnen
- Erlaubte Google-Attribute zu Ihren Produkt-Attributen zuordnen
- Produkt-Varianten die passenden Produktbilder zuordnen
- Verfügbarkeiten anhand des Lieferstatus zuordnen
- Einzelne Produkte vom Google-Export ausnehmen
- Abweichende Produkttitel an Google übergeben
- Unterstützung der Google-Custom-Label, Adwords Gruppierung, Adwords-Label
- Aufteilung des Feeds in mehrere Dateien über URL-Parameter
- Beschränkung des Feed auf einzelne Hersteller über URL-Parameter
- Auswahl der Zielländer, Kundengruppe, Feedsprache über URL-Parameter
- Passwortschutz: Schützen Sie die Ausgabe Ihres Feeds durch ein Passwort
optional:
-
Feed zur Aktualisierung Ihres Inventars:
https://support.google.com/merchants/answer/6191341?hl=de-DE
Über die URL "http://www.IHR_SHOP.de/export/google_quick_xml.php" erreichen Sie den Feed zur Aktualisierung ihres Inventars. Die Funktionsweise und die Parameter sind identisch zu denen der "google_xml.php". Einzig der Cache-Zeitraum ist bei der "google_quick_xml.php" auf 1 Stunde reduziert.
Installation unter modified eCommerce 2.00
Einleitung
- Legen Sie eine Sicherungskopie Ihrer Datenbank und der zu ändernden Dateien an.
- Kopieren Sie alle neuen Dateien aus dem beiliegenden Verzeichnis "new_files" in die etsprechenden Verzeichnisse auf Ihrem Server.
- Führen Sie die Dateiänderungen zur Neuinstallation aus.
Im beiliegenden Verzeichnis "changed_files" können Sie alle geänderten Dateien einsehen und vergleichen. - Installieren Sie das Modul "AGI Google-XML-Exportmodul" im Menü "Module -> Export Module"
- Installieren Sie das Modul "AGI Google-Export-Werte" im Menü "Module -> Klassenerweiterungen Module"
- Konfigurienen Sie das Google-XML-Exportmodul und passen Sie Ihre Produkte an, wie auf dieser Hilfeseite beschrieben.
neue Dateien:
- admin/includes/extra/javascript/agi_google_xml.php
- admin/includes/extra/menu/agi_google_xml.php
- admin/includes/extra/modules/new_category/agi_google_xml.php
- admin/includes/extra/modules/new_product/agi_google_xml.php
- admin/includes/modules/categories/agi_google_xml.php
- admin/includes/modules/export/agi_google_xml.php
- admin/agi_google_xml_taxonomie.php
- admin/agi_google_xml_campaigns.php
- export/google_xml.php
- includes/extra/database_tables/agi_google_xml.php
- lang/english/extra/admin/agi_google_xml.php
- lang/english/modules/export/agi_google_xml.php
- lang/german/extra/admin/agi_google_xml.php
- lang/german/modules/export/agi_google_xml.php
Dateiänderungen für Neuinstallation
Achtung, die zu suchenden Zeilen beziehen sich auf unveränderte Shops. In Ihrem Shop können die angegebene Zeilennummern und die zu suchenden Passagen abweichen.
geänderte Dateien:
admin/includes/modules/products_attributes_action.php
ca. Zeile 38
Suche:
$update = xtc_db_perform(TABLE_PRODUCTS_OPTIONS, $sql_data_array);
Darüber einfügen:
/* BOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 1/3 */
$sql_data_array['is_google_attribute'] = xtc_db_prepare_input($_POST['is_google_attribute']);
/* EOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 1/3 */
ca. Zeile 58
Suche:
if (xtc_db_num_rows($products_options_query) == 0) xtc_db_perform(TABLE_PRODUCTS_OPTIONS, array ('products_options_id' => (int)$_POST['option_id'], 'language_id' => $languages[$i]['id']));
Ersetze durch:
/* BOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 2/3 */
// if (xtc_db_num_rows($products_options_query) == 0) xtc_db_perform(TABLE_PRODUCTS_OPTIONS, array ('products_options_id' => (int)$_POST['option_id'], 'language_id' => $languages[$i]['id']));
if (xtc_db_num_rows($products_options_query) == 0) xtc_db_perform(TABLE_PRODUCTS_OPTIONS, array ('products_options_id' => (int)$_POST['option_id'], 'language_id' => $languages[$i]['id'], 'is_google_attribute' => $_POST['is_google_attribute']));
/* EOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 2/3 */
ca. Zeile 66
Suche:
$update = xtc_db_perform(TABLE_PRODUCTS_OPTIONS, $sql_data_array, 'update', "products_options_id = '".(int)$_POST['option_id']."' AND language_id = '".$languages[$i]['id']."'");
Darüber einfügen:
/* BOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 3/3 */
$sql_data_array['is_google_attribute'] = xtc_db_prepare_input($_POST['is_google_attribute']);
/* EOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 3/3 */
admin/includes/modules/products_attributes_options.php
ca. Zeile 21
Suche:
defined('_VALID_XTC') or die('Direct Access to this location is not allowed.');
Darunter einfügen:
/* BOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 1/5 */
$agi_google_attributes = array(
'color' => AGI_GOOGLE_ATTRIBUTE_COLOR,
'size' => AGI_GOOGLE_ATTRIBUTE_SIZE,
'pattern' => AGI_GOOGLE_ATTRIBUTE_PATTERN,
'material' => AGI_GOOGLE_ATTRIBUTE_MATERIAL,
'gender' => AGI_GOOGLE_ATTRIBUTE_GENDER,
'age_group' => AGI_GOOGLE_ATTRIBUTE_AGE_GROUP
);
$agi_google_attributes_dropdown = array(
array('id' => '', 'text' => AGI_GOOGLE_ATTRIBUTE_NO_ATTRIBUTE)
);
foreach ($agi_google_attributes as $key => $value)
{
$agi_google_attributes_dropdown[] = array('id' => $key, 'text' => $value);
}
/* EOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 1/5 */
ca. Zeile 219
Suche:
<td class="dataTableHeadingContent"> <?php echo TABLE_HEADING_OPT_NAME; ?> </td>
Darunter einfügen:
<!-- BOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 2/5 //-->
<td class="dataTableHeadingContent"> <?php echo AGI_GOOGLE_TABLE_HEADING_GOOGLE_ATTRIBUT; ?> </td>
<!-- EOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 2/5 //-->
ca. Zeile 244
Suche:
<td class="dataTableContent"><?php echo $inputs; ?></td>
Darunter einfügen:
<!-- BOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 3/5 //-->
<td class="smallText"> <?php echo xtc_draw_pull_down_menu('is_google_attribute', $agi_google_attributes_dropdown, $options_values['is_google_attribute']); ?> </td>
<!-- EOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 3/5 //-->
ca. Zeile 282
Suche:
<td class="dataTableContent"><?php echo $inputs; ?></td>
Darunter einfügen:
<!-- BOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 4/5 //-->
<td class="smallText"> <?php echo xtc_draw_pull_down_menu('is_google_attribute', $agi_google_attributes_dropdown, $options_values['is_google_attribute']); ?> </td>
<!-- EOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 4/5 //-->
ca. Zeile 301
Suche:
<td class="dataTableContent"> <?php echo $options_values["products_options_name"]; ?> </td>
Darunter einfügen:
<!-- BOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 5/5 //-->
<td class="smallText"> <?php echo (!empty($options_values['is_google_attribute']) && array_key_exists($options_values['is_google_attribute'], $agi_google_attributes)) ? $agi_google_attributes[$options_values['is_google_attribute']] : ''; ?> </td>
<!-- EOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 5/5 //-->
admin/includes/modules/products_images.php
ca. Zeile 15
Suche:
//include needed functions
require_once (DIR_FS_INC.'xtc_get_products_mo_images.inc.php');
Darunter einfügen:
/* BOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 1/4 */
$agi_manipulation = false;
if (file_exists(DIR_FS_ADMIN. 'includes/modules/categories/agi_google_xml.php') && defined('MODULE_AGI_GOOGLE_XML_STATUS')){
include_once(DIR_FS_ADMIN. 'includes/modules/categories/agi_google_xml.php');
$agi_google_xml = new agi_google_xml;
$agi_options = $agi_google_xml->agi_load_products_attributes($pInfo->products_id, $_SESSION['languages_id']);
$agi_manipulation = true;
}
/* EOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 1/4 */
ca. Zeile 33
Suche:
// display images fields:
$rowspan = ' rowspan="'. 3 .'"';
Ersetze durch:
// display images fields:
/* BOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 2/4 */
//$rowspan = ' rowspan="'. 3 .'"';
$rowspan = $agi_manipulation ? ' rowspan="'. 4 .'"' : ' rowspan="'. 3 .'"';
/* EOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 2/4 */
ca. Zeile 45
Suche:
<tr>
<td class="dataTableConfig col-left"><?php echo TEXT_PRODUCTS_IMAGE; ?></td>
<td class="dataTableConfig col-middle"><?php echo xtc_draw_file_field('products_image', false, 'class="imgupload"'); ?></td>
</tr>
Darunter einfügen:
<?php
/* BOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 3/4 */
if ($agi_manipulation) {
?>
<tr>
<td class="dataTableConfig col-left">Das Bild entspricht der Attributkombination</td>
<td class="dataTableConfig col-middle"><?php echo $agi_google_xml->agi_get_products_image_attribute_selection($agi_options, $pInfo->products_id, 0); ?></td>
</tr>
<?php
}
/* EOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 3/4 */
?>
ca. Zeile 82
Suche:
<tr>
<td class="dataTableConfig col-left"><?php echo TEXT_PRODUCTS_IMAGE.' '. ($i +1); ?></td>
<td class="dataTableConfig col-middle"><?php echo xtc_draw_file_field('mo_pics_'.$i, false, 'class="imgupload"'); ?></td>
</tr>
Darunter einfügen:
<?php
/* BOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 4/4 */
if ($agi_manipulation) {
?>
<tr>
<td class="dataTableConfig col-left">Das Bild entspricht der Attributkombination</td>
<td class="dataTableConfig col-middle"><?php echo $agi_google_xml->agi_get_products_image_attribute_selection($agi_options, $pInfo->products_id, $i +1); ?></td>
</tr>
<?php
}
/* EOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 4/4 */
?>
admin/shipping_status.php
ca. Zeile 18
Suche:
require('includes/application_top.php');
Darunter einfügen:
/* BOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 1/6 */
$google_status_options = array(
array('id' => 'in stock', 'text' => GOOGLE_STATUS_IN_STOCK),
//array('id' => 'available for order', 'text' => GOOGLE_STATUS_AVAILABLE_FOR_ORDER),
array('id' => 'out of stock', 'text' => GOOGLE_STATUS_OUT_OF_STOCK),
array('id' => 'preorder', 'text' => GOOGLE_STATUS_PREORDER)
);
/* EOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 1/6 */
ca. Zeile 79
Suche:
if ($_POST['default'] == 'on') {
Darüber einfügen:
/* BOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 2/5 */
xtc_db_query("update " . TABLE_SHIPPING_STATUS . " set `google_status_name` = '" . xtc_db_prepare_input($_POST['google_status_name']) . "' where shipping_status_id = '" . xtc_db_input($shipping_status_id) . "'");
/* EOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 2/5 */
ca. Zeile 234
Suche:
$contents[] = array('text' => '<br />' . TEXT_INFO_SHIPPING_STATUS_NAME . $shipping_status_inputs_string);
Darunter einfügen:
/* BOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 3/5 */
$contents[] = array('text' => '<br />' . AGI_GOOGLE_SHIPPING_STATUS_GOOGLE_STATUS . xtc_draw_pull_down_menu('google_status_name', $google_status_options, 'in stock'));
/* EOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 3/5 */
ca. Zeile 258
Suche:
$contents[] = array('text' => '<br />' . TEXT_INFO_SHIPPING_STATUS_NAME . $shipping_status_inputs_string);
Darunter einfügen:
/* BOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 4/5 */
$contents[] = array('text' => '<br />' . AGI_GOOGLE_SHIPPING_STATUS_GOOGLE_STATUS . xtc_draw_pull_down_menu('google_status_name', $google_status_options, $oInfo->google_status_name));
/* EOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 4/5 */
ca. Zeile 287
Suche:
$contents[] = array('text' => $shipping_status_inputs_string);
Darunter einfügen:
/* BOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 5/5 */
$contents[] = array('text' => '<br />' . AGI_GOOGLE_SHIPPING_STATUS_GOOGLE_STATUS . $oInfo->google_status_name);
/* EOF AGI GOOGLE-XML-EXPORT www.andreas-guder.de 5/5 */
Update von modified eCommerce 1.06 zu 2.00
Wenn Sie das Modul Version 2.x in Ihrem Shop im Einsatz hatten, und nun Ihren modified eCommerce-Shop auf die aktuelle Version 2.x aktualisiert haben, kann das Exportodul problemlos aktualisiert werden.
Sie erkennen die Modulversion 2.x am Menüeintrag "AGI Google-XML-Datenfeed" unter "erweiterte Konfiguration".
Sollten Sie eine ältere Modulversion im Einsatz haben, so muss die Datenbank auf des Moduls auf den neusten Stand gebracht werden:
- Laden Sie die Version 2 des Export-Moduls herunter.
- Kopieren Sie die Datei "new_files/agi_install_googlexml.php" in das Stammverzeichnis des Shops.
- Rufen Sie die Datei im Browser auf: http://IHRE_DOMAIN.de/export/agi_install_googlexml.php.
Ersetzen Sie "IHRE_DOMAIN.de" durch Ihre Domain! - Folgen Sie der Anleitung in der Datei.
Update auf Modulversion 3:
- Führen Sie die Dateiänderungen aus dieser Installationsanleitung aus.
- Kopieren Sie alle neuen Dateien in Ihren Shop.
- War eine ältere Modulversion in Ihrem Shop installiert und aktiv, ist das Export-Modul "AGI Google-XML-Exportmodul" bereits installiert. Klicken Sie den Button zum Deinstallieren.
- Klicken Sie den Button zum Installieren.
- Installieren Sie das Modul "AGI Google-Export-Werte" im Menü "Module -> Klassenerweiterungen Module".
- Starten Sie anschließend das Modul über den Start-Button und Konfigurieren Sie das Modul.
- Dateien und Dateiänderungen aus älteren Modulversionen müssen nicht übernommen werden.
- Die Dateien "google_taxonomie.de.txt, google_taxonomie.xx.txt" können aus dem alten Shop wieder in das Verzeichnis "export" des neuen Shops kopiert werden.