Projekt

Allgemein

Aktionen

GX-Task #45772

geschlossen

StoredProduct::getUrl() in getManufacturerUrl() umbenennen und StoredProduct::getProductUrl() implementieren

Von Marco Bruchmann vor mehr als 9 Jahren hinzugefügt. Vor mehr als 7 Jahren aktualisiert.

Status:
Erledigt
Priorität:
Hoch
Zugewiesen an:
Torben Wark
Kategorie:
Core
Zielversion:
% erledigt:

100%

Steps to reproduce:
Betroffene Versionen:
2.7.2.1
Release Notes Langtext:

GXEngineProduct::getUrl wurde durch besser verständliche Methode GXEngineProduct::getInfoUrl ersetzt

Tags:

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

Beziehung mit GX-Entwicklung - GX-Feature #54468: Über die Produkt-Entität die Url zum Produkt abrufen könnenGemeldet

Aktionen
Beziehung mit Entwickler-Logbuch - GX-Task #54469: Neue Methode GXEngineProduct::getInfoUrl ersetzt GXEngineProduct::getUrlErledigtMoritz Bunjes

Aktionen
Aktionen #1

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.

Aktionen #2

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.

Aktionen #5

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.

Aktionen #16

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

Aktionen