Hallo beisammen, wir haben in einem älteren und nicht updatebaren weitreichend modifiziertem 3.12 shop das problem dass gambio beim speichern neuer produkte bei eingabe gleicher produktname NICHT wie normal üblich url keywords marke produktname-produktid generiert. es werden mehrere produkte mit der gleichen url gespeichert. hat auch jemand anderes dieses problem? da der shop weitreichend modifiziert ist greift der gambio support nicht. aber in unserem 1:1 gespiegelten testshop (hier nur etliche 10t inaktive produkte gelöscht) funktioniert alles korrekt. der fehler scheint also durch korrupte produktdaten zu entstehen. mehrfach manuell korrigierte doppelte produkt urls brachten aber auch keine abhilfe. ich suche schon seit stunden wo genau gambio ermittelt ob eine produkturl bereits besteht - und wo ich einfach generell an alle urls -pID anhängen könnte. meine beste vermutung bisher? admin/includes/classes/categories.php und dann folgender code: PHP: $gm_url_keywords = xtc_db_prepare_input($products_data['gm_url_keywords'][$language_id]); $gm_url_keywords = xtc_cleanName($gm_url_keywords)."-PIDANHAENGEN"; natürlich in function insert_product trotz x probierten stellen auch in anderen dateien bekomme ich aber auf teufel komm raus nichts an die gm_url_keywords angehängt. caches natürlich geleert. kann mir jemand sagen wo ich angreifen muss?
Schau mal in die admin/includes/modules/new_product.php oder die admin/includes/modules/set_product_data.inc.php Das wären so meine Ideen zur Anlage des Produktes
ja waren meine auch. der code zum anhängen der pid ist sicher in categories.php version 3.12 zeile 1869: PHP: 'gm_url_keywords' => $description['gm_url_keywords'] . "-" . $dup_products_id, änderungen hier oder darüber in funktion insert_product zeile 1540 PHP: $gm_url_keywords = xtc_cleanName($gm_url_keywords); führen jedoch zu keinerlei änderung. deine dateien hatte ich schon auf dem schirm und gecheckt, tut sich leider auch nichts...
@ff-webdesigner Die Funktion für die SEO Boost URLs mit der ID usw. ist in der /gm/classes/GMSEOBoost.php Klasse. Da gibt es eine Funktion "repair" die das prüft ob es doppelte URLs gibt und dann die entsprechende Ergänzung vornehmen sollte. Schau mal ob du ggf. die Klasse aktualisieren kannst oder die Funktion ist auskommentiert, weshalb die Reparaur nicht funktioniert.
danke till! auskommentiert ist da gar nichts, seoboost exakt der gleiche wie im gespiegelten shop. es MUSS an korrupten produkten liegen. im testshop funktioniert die reparaturfunktion auch tadellos. im liveshop nicht. debuggen ist wie immer bei objekten schwer... die funktion repair() wir bei jedem produkt anlegen angestossen, korrekt? wo genau?