Wer kennt das Problem bei dem Magento WYSIWYG Editor nicht? Jede neue Zeile führt zwangsläufig zu einem Zeilenumbruch, da der nette nl2br Tag verwendet wird. Das Resultat sind oft hässliche Layouts in den Produktdetails. Sehr ärgerlich wird das ganze, wenn man beispielsweise ein Auflistung hinzufügen möchte und hier das ganze weit nach unten „rutscht“.

Die Lösung ist jedoch mit wenig Aufwand eingebaut. Jedoch sollte man sich hier bewusst sein, dass Beschreibungen ohne HTML keine Zeilenumbrüche erhalten werden. Von daher ist bei einem Shop mit vielen Artikeln gesagt, dass die hier aufgezeigten Änderungen mit großer Wahrscheinlichkeit zu Layoutänderungen führen!

Zunächst einmal sollte man sich die description.phtml aufrufen. Diese findet man in der Regel in dem folgenden Verzeichnis: app/design/frontend/base/default/template/catalog/product/view. Damit man sein System sauber hält, sollte die description.phtml in sein eigenes Template-Verzeichnis kopiert werden, sofern diese hier nicht vorhanden ist um dann geändert zu werden.

Die normale description.phtml sieht so aus:

helper(‘catalog/output’)->productAttribute($this->getProduct(), nl2br($this->getProduct()->getDescription()), ‘description’) ?>

Der nl2br-Code muss entfernt werden. Nach der Änderung sieht das ganze dann so aus:

[fusion_builder_container hundred_percent=” yes”=”” overflow=”visible” ][fusion_builder_row][fusion_builder_column=”” type=”1_1″ background_position=”left top” background_color=”” border_size=”” border_color=”” border_style=”solid” spacing=”yes” background_image=”” background_repeat=”no-repeat” padding=”” margin_top=”0px” margin_bottom=”0px” class=”” id=”” animation_type=”” animation_speed=”0.3″ animation_direction=”left” hide_on_mobile=”no” center_content=”no” min_height=”none” ][lines]”=”” style=”box-sizing: border-box;”>

helper('catalog/output')->productAttribute($this->getProduct(), ($this->getProduct()->getDescription()), 'description') ?>

Sollte man nun – wie das bei mir der Fall ist – das Plugin easytabs verwenden, findet man die zugehörige description.phtml in dem Ordner app/design/frontend/[Eigenes_Template]/default/template/easytabs. Hierbei gilt zu beachten, dass die zugehörigen TAB-Layouts die man verwendet auch angepasst werden müssen.

So sieht die catalogproductcustom.phtml aus

getProduct()->$method());
if(!empty($content)){
echo '

'.$content.'

';
}
}
?>

Nach der Änderung sollte die catalogproductcustom.phtml so aussehen:

getProduct()->$method());
$content = preg_replace('@{{media url="(.*)}}"@','/media/$1',$content);
if(!empty($content)){
echo '

'.$content.'

';
}
}
?>
[/fusion_builder_column][/fusion_builder_row][/fusion_builder_container]