Jump to content

Recommended Posts

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:

post-720849-0-35488500-1391634672_thumb.jpg

 

Der Angezeigte Text ist bereits der komplette.

Ich hoffe mir kann einer helfen.

 

Mit freundlichen Grüßen

Giuseppe

Edited by calicosmeticshop (see edit history)
Link to comment
Share on other sites

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

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

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

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)

 

post-720849-0-86022100-1391763157_thumb.png

 

post-720849-0-28279100-1391763190_thumb.png

 

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}

post-720849-0-61989800-1391763357_thumb.png

 

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 by calicosmeticshop (see edit history)
Link to comment
Share on other sites

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 by BluTiGeS (see edit history)
Link to comment
Share on other sites

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:

 

post-720849-0-72801100-1391774993_thumb.jpg

 

 

Link to comment
Share on other sites

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 by BluTiGeS (see edit history)
Link to comment
Share on other sites


{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

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

  • Like 1
Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...