Ich habe ein Import-Script, welches zuerst neue Artikel importiert, bestehende aktualisiert, und alte Artikel löscht. Die Methode zum löschen sieht so aus: /\*\* \* delete single article \* @param string $artnr \* @return void \*/ public function deleteArticle( $artnr ) { if( in\_array($artnr, $this-\>ignoreArticle ) ) { return; } $articleID = $this-\>sImport-\>sGetArticleID((string)$artnr); $this-\>sImport-\>sDeleteArticle( array('ordernumber'=\>$artnr) ); $this-\>sImport-\>sDeleteArticleImages( array('ordernumber'=\>$artnr) ); $this-\>sImport-\>sDeleteArticleDownloads( array('ordernumber'=\>$artnr) ); $this-\>sImport-\>sDeleteArticleSimilar( array('ordernumber'=\>$artnr) ); $this-\>sImport-\>sDeleteArticleCrossSelling( array('ordernumber'=\>$artnr) ); $this-\>sExtended-\>sDeleteArticleFromWizard( $articleID ); $this-\>sExtended-\>sDeleteWizardRelation( $articleID ); }
ganz zum Schluß wird der Cache gelöscht: $importShop-\>sDeleteArticleCache(); $importShop-\>sDeleteCache();
Und trozdem erscheinen die nicht mehr verfügbaren Artikel in den Suchergebnissen, sonst nirgendwo. Selbst wenn ich im Backend den gesamten Cache lösche, ändert das nichts. Das ist ungünstig, weil viele Artikel davon bestellt wurden und wir diese Artikel stornieren und den Kunden enttäuschen müssen. Muss ich dazu noch was in der Datenbank löschen oder wie kann ich dieses Problem beheben? Viele Grüße, Alex