Artikel Länge, Breite und Höhe ausgeben

Hallo, ist es möglich die Länge, Breite und Höhe eines Artikels auf der Detailseite aus zu geben? In $sArticle scheint diese Information zu fehlen. Viele Grüße

Hallo convecto, Wir haben das Problem mit den fehlenden Werten zu Breite, Höhe und Länge mit einem eigenen Plugin gelöst. Die Werte werden somit dem $sArticle Array hinzugefügt. [code]<?php class Shopware_Plugins_Frontend_BEONHBLPlugin_Bootstrap extends Shopware_Components_Plugin_Bootstrap
{

public function install()
{
	$this->subscribeEvent( 'Enlight\_Controller\_Action\_PostDispatch\_Frontend\_Detail', 'onPostDispatch' ); return true; } public function onPostDispatch(Enlight\_Event\_EventArgs $args) { $sArticles = $args-\>getReturn(); $articleDimensions = $this-\>getArticleDimensions($sArticles['articleDetailsID']); if($articleDimensions) { foreach($articleDimensions as $articleDimensionsName =\> $articleDimensionsValue) { if(!empty($articleDimensionsValue)) { $sArticles[$articleDimensionsName] = $articleDimensionsValue; } } } return $sArticles; } private function getArticleDimensions($mainDetailID) { $dbResult = Shopware()-\>Db()-\>fetchAll( "SELECT width ,height ,length FROM s\_articles\_details WHERE id = ?",array($mainDetailID)); return $dbResult[0]; } }[/code] In unserer Variante sind folglich die Werte in Smarty via $sArticle.width, $sArticle.height, $sArticle.length aufrufbar. Ich hoffe, dass diese Lösung Ihnen weiterhelfen kann.
2 „Gefällt mir“

Hallo, vielen Dank für das Plugin. Über den Event wie dort beschrieben hat es leider nicht funktioniert, es kam immer NULL zurück. Über den Event sArticles::sGetArticleById::after kam aber letzten Endes doch der Artikel an und es funktioniert.

Moin zusammen, ich habe das Plugin installiert, komme in der Produktdetailseite aber immer noch nicht an die Parameter ran. Weiß jemand Rat?

Was sagt denn dein $sArticle im Template? Wurden dort die neuen Werte mit eingefügt?

Habe das Ganze etwas angepasst: install-Methode: public function install() { $this-\>subscribeEvent( 'Shopware\_Modules\_Articles\_GetArticleById\_FilterResult', 'resultCallback' ); $this-\>subscribeEvent( 'Shopware\_Modules\_Articles\_sGetArticlesByCategory\_FilterResult', 'resultCallback' ); return true; } und der entsprechende Callback: public function resultCallback(Enlight\_Event\_EventArgs $args) { $sArticles = $args-\>getReturn(); if (isset($sArticles['articleID'])) { $articleDimensions = $this-\>getArticleDimensions($sArticles['articleDetailsID']); if ($articleDimensions) { foreach ($articleDimensions as $articleDimensionsName =\> $articleDimensionsValue) { if (!empty($articleDimensionsValue)) { $sArticles[$articleDimensionsName] = $articleDimensionsValue; } } } } elseif (isset($sArticles['sArticles'])) { foreach ($sArticles['sArticles'] as $key =\> $article) { $articleDimensions = $this-\>getArticleDimensions($article['articleDetailsID']); if ($articleDimensions) { foreach ($articleDimensions as $articleDimensionsName =\> $articleDimensionsValue) { if (!empty($articleDimensionsValue)) { $sArticles['sArticles'][$key][$articleDimensionsName] = $articleDimensionsValue; } } } } } return $sArticles; } Edit: Was mich wundert ist, dass diese Artikelattribute nicht von vorn herein im Template zur Verfügung stehen.

1 „Gefällt mir“

Bei mir wirft dein Plugin folgenden Fehler: “getArticleDimensions” not found failure in (…) Bootstrap.php on line 70 hat sich hier bei einem der letzten Updates vllt. was verändert? LG

[quote=“vc-nm”]Bei mir wirft dein Plugin folgenden Fehler: “getArticleDimensions” not found failure in (…) Bootstrap.php on line 70 hat sich hier bei einem der letzten Updates vllt. was verändert? LG[/quote] Wer lesen kann is klar im Vorteil :wink: sorry - hab den ersten Post nicht gesehen! Hat sich erledigt!