Anleitung "Bewertungsfilter direkt in der product_info_*_.html ohne PopUp"
[ Für Gäste sind keine Dateianhänge sichtbar ]
Optional (geht auch beides parallel): Deaktiviere in den Moduleinstellungen die Option
Filter-PopUp aktivieren?.
Öffne die Datei
/templates/dein-template/module/products_reviews.html, suche die foreach-Schleife
{foreach name=aussen item=module_data from=$module_content}
...
{/foreach}
und kommentiere sie aus:
{*foreach name=aussen item=module_data from=$module_content}
...
{/foreach*}
Füge anschließend in einer neuen Zeilen hinter {/foreach} folgendes hinzu und lade die Datei wieder hoch:
<iframe name="iFrame" style="border:none;width:100%;height:auto;" src="{$smarty.const.FILENAME_POPUP_REVIEWS|xtc_href_link}?products_id={$smarty.get.products_id}"></iframe>
Statt dem Inline-Style kann auch eine CSS-Klasse in der stylesheet.css hinzugefügt werden, welche die Angaben enthält. Für mein Beispiel belasse ich es beim Inline-Style.
Bereits jetzt werden die normalerweise angezeigten Bewertungen durch den Bewertungsfilter ersetzt.
Optional kannst du noch die Datei
/templates/dein-template/javascript/extra/toggle_review_filter.php öffnen und hinter </script> folgendes hinzufügen:
<script type="text/javascript">
var framefenster = document.getElementsByTagName("iFrame");
var auto_resize_timer = window.setInterval("autoresize_frames()", 400);
function autoresize_frames() {
for (var i = 0; i < framefenster.length; ++i) {
if(framefenster[i].contentWindow.document.body){
var framefenster_size = framefenster[i].contentWindow.document.body.offsetHeight;
if(document.all && !window.opera) {
framefenster_size = framefenster[i].contentWindow.document.body.scrollHeight;
}
framefenster[i].style.height = framefenster_size + 'px';
}
}
}
</script>
Damit erreicht man, dass das iFrame immer die notwendige Höhe hat und kein Scrollen notwendig wird.