calicosmeticshop Posted February 5, 2014 Share Posted February 5, 2014 (edited) Hallo Liebe Community, ich hoffe mir kann einer helfen. Mein Problem ist, dass in der Kategorieansicht die Beschreibung nicht gekürzt angezeigt wird. Auch die Suche im Forum brachte keine funktionierenden Lösungen. Beim Überprüfen der category.tpl ist mir kein Fehler aufgefallen. Aber vielleicht übersehe ich etwas oder es ist die falsche Datei, was ich aber bezweifle. Hier der Teil aus der category.tpl {if $category->description} <div class="cat_desc"> {if strlen($category->description) > 200} <p id="category_description_short">{$category->description|truncate:200}</p> <p id="category_description_full" style="display:none">{$category->description}</p> <a href="#" onclick="$('#category_description_short').hide(); $('#category_description_full').show(); $(this).hide(); return false;" class="lnk_more">{l s='More'}</a> {else} <p>{$category->description}</p> {/if} Und hier ein Screenshot der Beschreibung: Der Angezeigte Text ist bereits der komplette. Ich hoffe mir kann einer helfen. Mit freundlichen Grüßen Giuseppe Edited February 5, 2014 by calicosmeticshop (see edit history) Link to comment Share on other sites More sharing options...
BluTiGeS Posted February 5, 2014 Share Posted February 5, 2014 (edited) Truncate ist das Stichwort damit kannst ihn kürzen. bin am Handy sonst hätte Ich dir ein Beispiel gemacht aber wird ja zu Hauf in den tpl Files verwendet. Ist nicht das original theme oder? Sonst vergleiche die beiden Files mal. Edited February 5, 2014 by BluTiGeS (see edit history) Link to comment Share on other sites More sharing options...
calicosmeticshop Posted February 6, 2014 Author Share Posted February 6, 2014 Danke erstmal für die schnelle Antwort. Ich habe ein leicht verändertes Standard Theme in Verwendung. Beim Vergleich mit einem original Theme ist mir aber nichts besonderes aufgefallen. Die Kürzung des Textes funktioniert nicht einmal auf einem frisch installierten Prestashop. Muss ich vielleicht etwas beim einfügen des Textes beachten? Link to comment Share on other sites More sharing options...
BluTiGeS Posted February 6, 2014 Share Posted February 6, 2014 Habe dein Schnipsel mal verglichen und siehe da er ist nterschieldich: {if $category->description} <div class="cat_desc"> {if strlen($category->description) > 120} <div id="category_description_short">{$description_short}</div> <div id="category_description_full" style="display:none;">{$category->description}</div> <a href="#" onclick="$('#category_description_short').hide(); $('#category_description_full').show(); $(this).hide(); return false;" class="lnk_more">{l s='More'}</a> {else} <div>{$category->description}</div> {/if} </div> {/if} Bitte mal mit dem Standard tempalte vergleichen nicht nur auf die schnelle ,) aber mit deinem Beispiel umgeschriebn auf so soltle es gehen (cache leeren nicht vergessen): {if $category->description} <div class="cat_desc"> {if strlen($category->description) > 200} <p id="category_description_short">{$category->description|truncate:200:'...'}</p> <p id="category_description_full" style="display:none">{$category->description|truncate:300:'...'}</p> <a href="#" onclick="$('#category_description_short').hide(); $('#category_description_full').show(); $(this).hide(); return false;" class="lnk_more">{l s='More'}</a> {else} <p>{$category->description|truncate:300:'...'}</p> {/if} Link to comment Share on other sites More sharing options...
calicosmeticshop Posted February 6, 2014 Author Share Posted February 6, 2014 Hallo, ich habe mal deinen Vorschlag ausprobiert und es funktioniert nicht richtig. Also es funktioniert schon aber nicht wie vorhergesehen, denn es wird auch die Category Long gekürzt ausgegeben, was ja nicht mein Ziel ist. Das Problem ist ja das die category_description_full beim öffnen der Seite mit angezeigt wird. Also Code technisch sollte es ja richtig sein. <p id="category_description_short">{$category->description|truncate:200}</p> <p id="category_description_full" style="display:none">{$category->description}</p> style="display:none" sollte doch dem Browser sagen das er die category_description_full NICHT anzeigen soll. Gibt es vielleicht eine andere category.tpl die diejenige aus dem Theme überschreibt? Link to comment Share on other sites More sharing options...
BluTiGeS Posted February 7, 2014 Share Posted February 7, 2014 Mach bei meinem Code bei der description_full das truncate weg dann geht es... Du musst den Code richtig lesen da ist auch ein if Statement. Link to comment Share on other sites More sharing options...
calicosmeticshop Posted February 7, 2014 Author Share Posted February 7, 2014 (edited) Tut mir Leid das ich eine so große Inkompetenz durch den Raum gehen lasse, aber irgendwie will der Shop nicht. Ich habe sogar einen Mann vom Fach gefragt und der meint das der Shop es theoretisch richtig anzeigen müsste, weil der Code eigentlich richtig ist. Hier habe ich drei Screens. Der 1. und 2. Bild beinhalten deinen korrigierten Code und zwar einmal nach dem Aufrufen und nach dem klick auf "Mehr" (More) Das 3. Bild einhaltet deinen Code ohne truncate unter description_full, siehe hier Zeile 5: {if $category->description} <div class="cat_desc"> {if strlen($category->description) > 200} <p id="category_description_short">{$category->description|truncate:200:'...'}</p> <p id="category_description_full" style="display:none">{$category->description}</p> <a href="#" onclick="$('#category_description_short').hide(); $('#category_description_full').show(); $(this).hide(); return false;" class="lnk_more">{l s='More'}</a> {else} <p>{$category->description|truncate:300:'...'}</p> {/if} Ich hoffe ich kann dir mein Problem verständlich vermitteln. Wenn irgendetwas unverständlich ist bitte fragen. Und vielen Dank für deine Hilfe! Edited February 7, 2014 by calicosmeticshop (see edit history) Link to comment Share on other sites More sharing options...
BluTiGeS Posted February 7, 2014 Share Posted February 7, 2014 (edited) Der Code {if $category->description} <div class="cat_desc"> {if strlen($category->description) > 200} <p id="category_description_short">{$category->description|truncate:200}</p> <p id="category_description_full" style="display:none">{$category->description}</p> <a href="#" onclick="$('#category_description_short').hide(); $('#category_description_full').show(); $(this).hide(); return false;" class="lnk_more">{l s='More'}</a> {else} <p>{$category->description}</p> {/if} sagt folgendes, wenn mehr wie 200 zeichen dann zeige gekürzt an und zeige category_description_full nicht an, falls Text kürzer ist wird er voll angezeigt. Beim click auf mehr wird die full description angezeigt. Also schon richtige das script wo ich hier geposted hab (auszug aus dem default theme ). Wirft deine Seite Javascript fehler? Mal mit firebug geprüft? Edited February 7, 2014 by BluTiGeS (see edit history) Link to comment Share on other sites More sharing options...
calicosmeticshop Posted February 7, 2014 Author Share Posted February 7, 2014 Ich sage ja auch nicht das der Code den du gepostet hast falsch ist, aber irgendwie will der Shop den Code nicht richtig ausführen. Chrome und Firefox sagen mir es gibt keine Fehler. Es kann sich auch nicht um einen Bug handeln sonst wäre ich nicht gefühlt der einzige. Wie der Code zu lesen ist weiß ich, jedoch wird bei Firefox und bei Chrome nicht das gemacht was im Code steht. Es wird immer auch am Anfang die category_description_full angezeigt. Hier aus Firefox: Link to comment Share on other sites More sharing options...
BluTiGeS Posted February 8, 2014 Share Posted February 8, 2014 (edited) Wenn ich dein DOM Inspectoc anschaue hast du ein tag fehler, weil das was angezeigt wird ist <p></p> und nicht das mit der id="description_full", schau dir nochmal dein theme an un schau ob alle tags richtig geschlossen sind un der full block richtig gesetzt ist Post mal das komplette file wenn es nicht selbst hinbekommst. Edited February 8, 2014 by BluTiGeS (see edit history) Link to comment Share on other sites More sharing options...
calicosmeticshop Posted February 8, 2014 Author Share Posted February 8, 2014 {include file="$tpl_dir./breadcrumb.tpl"} {include file="$tpl_dir./errors.tpl"} {if isset($category)} {if $category->id AND $category->active} <h1> {strip} {$category->name|escape:'htmlall':'UTF-8'} {if isset($categoryNameComplement)} {$categoryNameComplement|escape:'htmlall':'UTF-8'} {/if} {/strip} </h1> <div class="resumecat category-product-count"> {include file="$tpl_dir./category-count.tpl"} </div> {if $scenes || $category->description || $category->id_image} <div class="content_scene_cat"> {if $scenes} <!-- Scenes --> {include file="$tpl_dir./scenes.tpl" scenes=$scenes} {else} <!-- Category image --> {if $category->id_image} <div class="align_center"> <img src="{$link->getCatImageLink($category->link_rewrite, $category->id_image, 'category_gc-default')|escape:'html'}" alt="{$category->name|escape:'htmlall':'UTF-8'}" title="{$category->name|escape:'htmlall':'UTF-8'}" id="categoryImage" width="{$categorySize.width}" height="{$categorySize.height}" /> </div> {/if} {/if} {if $category->description} <div class="cat_desc"> {if strlen($category->description) > 200} <p id="category_description_short">{$category->description|truncate:200:'...'}</p> <p id="category_description_full" style="display:none">{$category->description}</p> <a href="#" onclick="$('#category_description_short').hide(); $('#category_description_full').show(); $(this).hide(); return false;" class="lnk_more">{l s='More'}</a> {else} <p>{$category->description}</p> {/if} </div> {/if} </div> {/if} {if isset($subcategories)} <!-- Subcategories --> <div id="subcategories"> <h3>{l s='Subcategories'}</h3> <ul class="inline_list"> {foreach from=$subcategories item=subcategory} <li class="clearfix"> <a href="{$link->getCategoryLink($subcategory.id_category, $subcategory.link_rewrite)|escape:'htmlall':'UTF-8'}" title="{$subcategory.name|escape:'htmlall':'UTF-8'}" class="img"> {if $subcategory.id_image} <img src="{$link->getCatImageLink($subcategory.link_rewrite, $subcategory.id_image, 'medium_gc-default')|escape:'html'}" alt="" width="{$mediumSize.width}" height="{$mediumSize.height}" /> {else} <img src="{$img_cat_dir}default-medium_default.jpg" alt="" width="{$mediumSize.width}" height="{$mediumSize.height}" /> {/if} </a> <a href="{$link->getCategoryLink($subcategory.id_category, $subcategory.link_rewrite)|escape:'htmlall':'UTF-8'}" class="cat_name">{$subcategory.name|escape:'htmlall':'UTF-8'}</a> {if $subcategory.description} <p class="cat_desc">{$subcategory.description}</p> {/if} </li> {/foreach} </ul> <br class="clear"/> </div> {/if} {if $products} <div class="content_sortPagiBar"> {include file="$tpl_dir./pagination.tpl"} <div class="sortPagiBar clearfix"> {include file="./product-sort.tpl"} {include file="./product-compare.tpl"} {include file="./nbr-product-page.tpl"} </div> </div> {include file="./product-list.tpl" products=$products} <div class="content_sortPagiBar"> <div class="sortPagiBar clearfix"> {include file="./product-sort.tpl" paginationId='bottom'} {include file="./product-compare.tpl" paginationId='bottom'} {include file="./nbr-product-page.tpl" paginationId='bottom'} </div> {include file="./pagination.tpl" paginationId='bottom'} </div> {/if} {elseif $category->id} <p class="warning">{l s='This category is currently unavailable.'}</p> {/if} {/if} Link to comment Share on other sites More sharing options...
BluTiGeS Posted February 8, 2014 Share Posted February 8, 2014 Okay, habe es mal jetzt mit dem default gemerged: {include file="$tpl_dir./breadcrumb.tpl"} {include file="$tpl_dir./errors.tpl"} {if isset($category)} {if $category->id AND $category->active} <h1> {strip} {$category->name|escape:'htmlall':'UTF-8'} {if isset($categoryNameComplement)} {$categoryNameComplement|escape:'htmlall':'UTF-8'} {/if} {/strip} </h1> <div class="resumecat category-product-count"> {include file="$tpl_dir./category-count.tpl"} </div> {if $scenes || $category->description || $category->id_image} <div class="content_scene_cat"> {if $scenes} <!-- Scenes --> {include file="$tpl_dir./scenes.tpl" scenes=$scenes} {else} <!-- Category image --> {if $category->id_image} <div class="align_center"> <img src="{$link->getCatImageLink($category->link_rewrite, $category->id_image, 'category_gc-default')|escape:'html'}" alt="{$category->name|escape:'htmlall':'UTF-8'}" title="{$category->name|escape:'htmlall':'UTF-8'}" id="categoryImage" width="{$categorySize.width}" height="{$categorySize.height}" /> </div> {/if} {/if} {if $category->description} <div class="cat_desc"> {if strlen($category->description) > 120} <div id="category_description_short">{$description_short}</div> <div id="category_description_full" style="display:none;">{$category->description}</div> <a href="#" onclick="$('#category_description_short').hide(); $('#category_description_full').show(); $(this).hide(); return false;" class="lnk_more">{l s='More'}</a> {else} <div>{$category->description}</div> {/if} </div> {/if} </div> {/if} {if isset($subcategories)} <!-- Subcategories --> <div id="subcategories"> <h3>{l s='Subcategories'}</h3> <ul class="inline_list"> {foreach from=$subcategories item=subcategory} <li class="clearfix"> <a href="{$link->getCategoryLink($subcategory.id_category, $subcategory.link_rewrite)|escape:'htmlall':'UTF-8'}" title="{$subcategory.name|escape:'htmlall':'UTF-8'}" class="img"> {if $subcategory.id_image} <img src="{$link->getCatImageLink($subcategory.link_rewrite, $subcategory.id_image, 'medium_gc-default')|escape:'html'}" alt="" width="{$mediumSize.width}" height="{$mediumSize.height}" /> {else} <img src="{$img_cat_dir}default-medium_default.jpg" alt="" width="{$mediumSize.width}" height="{$mediumSize.height}" /> {/if} </a> <a href="{$link->getCategoryLink($subcategory.id_category, $subcategory.link_rewrite)|escape:'htmlall':'UTF-8'}" class="cat_name">{$subcategory.name|escape:'htmlall':'UTF-8'}</a> {if $subcategory.description} <p class="cat_desc">{$subcategory.description}</p> {/if} </li> {/foreach} </ul> <br class="clear"/> </div> {/if} {if $products} <div class="content_sortPagiBar"> {include file="$tpl_dir./pagination.tpl"} <div class="sortPagiBar clearfix"> {include file="./product-sort.tpl"} {include file="./product-compare.tpl"} {include file="./nbr-product-page.tpl"} </div> </div> {include file="./product-list.tpl" products=$products} <div class="content_sortPagiBar"> <div class="sortPagiBar clearfix"> {include file="./product-sort.tpl" paginationId='bottom'} {include file="./product-compare.tpl" paginationId='bottom'} {include file="./nbr-product-page.tpl" paginationId='bottom'} </div> {include file="./pagination.tpl" paginationId='bottom'} </div> {/if} {elseif $category->id} <p class="warning">{l s='This category is currently unavailable.'}</p> {/if} {/if} Versuche das mal 1 Link to comment Share on other sites More sharing options...
calicosmeticshop Posted February 8, 2014 Author Share Posted February 8, 2014 Vielen Dank! Es ist nicht ganz das was ich erwartet habe aber es sieht besser aus. Also vielen Dank. Link to comment Share on other sites More sharing options...
BluTiGeS Posted February 8, 2014 Share Posted February 8, 2014 Kannst die divs ja wieder duch <p> ersetzen, aber es war auch ein smarty wert falsch also kannst es ja mit deinem nochmal anpassen, bis es passt. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now