GX-Task #45772
geschlossenStoredProduct::getUrl() in getManufacturerUrl() umbenennen und StoredProduct::getProductUrl() implementieren
100%
GXEngineProduct::getUrl wurde durch besser verständliche Methode GXEngineProduct::getInfoUrl ersetzt
Beschreibung
Wenn man ein StoredProduct über den ProductReadService bezieht, liefert die getUrl()-Methode einen leeren String.
Beispielcode:
$languageCode = MainFactory::create('LanguageCode', MainFactory::create('StringType', $_SESSION['language_code'])); $productReadService = StaticGXCoreLoader::getService('ProductRead'); $product = $productReadService->getProductById(MainFactory::create('IdType', $products_id)); $productName = $product->getName($languageCode); $productUrl = $product->getUrl($languageCode); printf("product URL via GXEngine: %s\n", $productUrl);
Erwartetes Ergebnis wäre der URL der Artikelseite, unter Berücksichtigung der SEOBoost-Konfiguration und ggf. anderer relevanter Einstellungen.
Checkliste 0/0
Zugehörige Tickets
Von Moritz Bunjes vor mehr als 9 Jahren aktualisiert
Gemeint ist der Herstellerlink einen Artikels. Die Methode sollte also einen passenderen Namen bekommen. Eine getUrl-Methode zu haben, die tatsächlich den Produktlink zurück gibt halte ich aber für eine sinnvolle Sache.
Von Marco Bruchmann vor mehr als 9 Jahren aktualisiert
Ich würde mich freuen, wenn zusätzlich auch getProductUrl() entstehen könnte. Das ist ein oft wiederkehrendes Problem, und die URL-Generierung samt SEOboost wegzukapseln ist sicher nicht falsch.
Von Daniel Würdemann vor mehr als 8 Jahren aktualisiert
- Tags wurde von Partner zu Partner, später geändert
Bei einer Methode ProductReadService::getProductUrl, die den tatsächlichen Produktlink zurück gibt, müsste man die GMSEOBoost-Klasse im Service verfügbar machen.
- \GXEngineProduct::getUrl (gibt den Herstellerlink aus der Tabelle products_description zurück) sollte als deprecated markiert werden.
- \GXEngineProduct::getManufacturerUrl sollte implementiert werden und den Herstellerlink zurückgeben.
- \ProductReadService::getProductUrl() sollte mittels GMSEOBoost den URL zum Produkt zurückgeben.
Aufgrund der o.g. Veränderungen sollten wir dieses Ticket frühestens mit 3.3 bearbeiten.
Von Torben Wark vor mehr als 7 Jahren aktualisiert
StoredProduct::getUrl() wurde als deprecated markiert und es wurde eine Methode getInfoUrl() implementiert, die getUrl() ablöst. Die andere geforderte Mehtode wird mit #54468 implentiert, da es sich hier eher um eines neues Feature handelt, welches nicht zum jetzigen Versionsstand implementiert werden sollte