PDA

Shop Support News Archive - Shopbetreiber News -> Forum : gelöst - Kategoriebeschreibung Ausblenden


Holger
13.11.2006, 13:53
Hallo,

ich möchte zu jeder Unterkategorie einen Beschreibungstext eingeben. Dieser soll aber nur in der eigentlichen Unterkategorie angezeigt werden.

Momentan wird dieser auch in der Übersnicht angezeigt. (Auf dem Bild der Text: Beschreibung des Angebotes)
An dieser Stelle soll bei der Übersnicht nur das Bild und die Kategoriebezeichnung der Unterkategorie stehen, mehr nicht.

Ich benutze das Template minimal10 von bara.munchies - was übrigens super gelungen ist :D

[attachmentid=670]

Ich hoffe ich habe mich etwas verständlich ausgedrückt......

Vielen Dank,
Holger

HarryBoo
13.11.2006, 15:21
Hallo Holger,

wenn ich dein Problem rnichtig verstanden habe, sollte das entfernen von {if $CATEGORIES_DESCRIPTION}{$CATEGORIES_DESCRIPTION}{/if} in der categorie_listing.html, dein Problem lösen.

Gruß
HarryBoo

paul123
13.11.2006, 17:26
du könntest aber auch anstatt das ganz rauszunehmen den bereich z.b. per css nur ausblenden, damit steht der dann im quelltext, nicht aber auf der seite (sumafreundlich)
''>ZITAT</div>
"verstecken">{if $CATEGORIES_DESCRIPTION}{$CATEGORIES_DESCRIPTION}{/if}[/b][/quote]
und im css legst du der .verstecken (class) die eigenschaft display none zu.

einfacher geht es auch, wenn du nur reine html-kommentare eingibst. dann steht der text auch im quelltext. ()

HarryBoo
13.11.2006, 18:09
@paul,

sehr guter Tipp :) für diesen Fall.

Sollte man aber nicht als Sumatrick missbrauchen um Keywords zu puschen, dass könnte dann ein Schuss nach hinten werden.

paul123
13.11.2006, 19:34
''>ZITAT</div>für diesen Fall.[/b]
was soll das heißen?

''>ZITAT</div>Sumatrick missbrauchen um Keywords zu pusche[/b]

ich kann es nicht beweisen; sehe das aber nicht als missbrauch. es ist wenn als kommentar eben ein solcher, und mit css ist es doch auch nur ein text, der ausgeblendet ist.

ich sehe darin keinen missbrauch; auch reell betrachtet erscheint es nicht unlogisch. im gegensatz zu weißem text auf weißem grund. dafür gibt es keinen anderen grund als missbrauch. bei ausgeblendetem container kann es doch durchaus gewollt sein, um diesen im rnichtigen moment auf der seite z.b. einzublenden... will heißen, es ist eine normale nutzung vorhandener gestaltungsmöglichkeiten, die den vorteil hat, eventuell sumafreundlicher zu sein.

bleibe bei der meinung, bis zum beweis des gegenteils. (was ja auch durchaus sein kann).

Holger
13.11.2006, 19:38
Hallo,

da ich mit der Variante css nicht so ganz zurecht komme habe ich mal den Tipp von HarryBoo probiert, aus dem Quelltext der categorie_listing.html habe ich folgendes rausgelöscht, aber irgendwie ohne Erfolg, die Kategorienbeschreibung wird auf der Übersnichtsseite immer noch angezeigt

</table>{if $CATEGORIES_DESCRIPTION}
{$CATEGORIES_DESCRIPTION}


{/if}

Das "Test" soll dort weg und nur dann auf der nächsten Seite erscheinen, wenn man in die Unterkategorie wechselt.
[attachmentid=671]

''>ZITAT</div>{config_load file="$language/lang_$language.conf" section="categorie_listing"}
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td class="main"> <table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td class="contentsTopics">{$CATEGORIES_NAME}</td>
<td align="right">{if $CATEGORIES_IMAGE}{$CATEGORIES_IMAGE}{/if}</td>
</tr>
<tr valign="top">
<td class="contentsTopics">{$CATEGORIES_HEADING_TITLE}</td>
<td align="right"></td>
</tr>

</table>{if $CATEGORIES_DESCRIPTION}
{$CATEGORIES_DESCRIPTION}


{/if}
{if $module_content !=''}
<table style="border-top: 2px solid; border-color: #d4d4d4;" width="100%" border="0" cellspacing="0" cellpadding="0">
<tr> {foreach name=aussen item=module_data from=$module_content}
{php}
$col++;
{/php}
<td class="main"><table width="100%" border="0" cellpadding="0" cellspacing="4">
<tr>
<td align="center" >{if $module_data.CATEGORIES_IMAGE}{$module_data.CATEGO RIES_IMAGE} ({$module_data.CATEGORIES_LINK}){/if}</td>
</tr>
<tr>
<td align="center" >{$tpl_path}img/bullet_cat.gif*{$module_data.CATEGORIES_NAME} ({$module_data.CATEGORIES_LINK})</td>
</tr>
<tr>
<td align="center" >{$module_data.CATEGORIES_DESCRIPTION}</td>
</tr>
</table>
</td>
{php}
if ($col>=3) {
$col=0;
echo '</tr><tr>';
}
{/php}
{/foreach} </tr>
</table>
{/if}
</td>
<td class="main">*</td>
</tr>
</table>


<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>{$MODULE_new_products}</td>
</tr>
</table>
[/b]

paul123
13.11.2006, 20:11
{config_load file="$language/lang_$language.conf" section="categorie_listing"}
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td class="main"> <table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td class="contentsTopics">{$CATEGORIES_NAME}</td>
<td align="right">{if $CATEGORIES_IMAGE}{$CATEGORIES_IMAGE}{/if}</td>
</tr>
<tr valign="top">
<td class="contentsTopics">{$CATEGORIES_HEADING_TITLE}</td>
<td align="right"></td>
</tr>

</table>
{if $CATEGORIES_DESCRIPTION}
{$CATEGORIES_DESCRIPTION}


{/if}
{if $module_content !=''}
<table style="border-top: 2px solid; border-color: #d4d4d4;" width="100%" border="0" cellspacing="0" cellpadding="0">
<tr> {foreach name=aussen item=module_data from=$module_content}
{php}
$col++;
{/php}
<td class="main"><table width="100%" border="0" cellpadding="0" cellspacing="4">
<tr>
<td align="center" >{if $module_data.CATEGORIES_IMAGE}{$module_data.CATEGO RIES_IMAGE} ({$module_data.CATEGORIES_LINK}){/if}</td>
</tr>
<tr>
<td align="center" >{$tpl_path}img/bullet_cat.gif {$module_data.CATEGORIES_NAME} ({$module_data.CATEGORIES_LINK})</td>
</tr>
<tr>
<td align="center" >{$module_data.CATEGORIES_DESCRIPTION}</td>
</tr>
</table>
</td>
{php}
if ($col>=3) {
$col=0;
echo '</tr><tr>';
}
{/php}
{/foreach} </tr>
</table>
{/if}
</td>
<td class="main"> </td>
</tr>
</table>


<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>{$MODULE_new_products}</td>
</tr>
</table>
in dem code ist sie aber (fett) noch drin...

wenn du es mit css machen willst:

...................
"verstecken">
{if $CATEGORIES_DESCRIPTION}
{$CATEGORIES_DESCRIPTION}</div>

.............

und im css

.verstecken {display:none;}

weitere infos zu displayhier (http://anonym.to/?http://www.css4you.de/example/display.html)

Holger
13.11.2006, 21:32
''>ZITAT</div>in dem code ist sie aber (fett) noch drin...[/b]

Ja, dies ist der Quelltext der Originaldatei. Aber wenn ich das rausnehme erscheint der Text immer noch.....

''>ZITAT</div>wenn du es mit css machen willst:

und im css
[/b]

und in welche Datein kommt das beides ???

HarryBoo
13.11.2006, 22:50
@paul,

ich kann das auch nicht beweisen und wollte nur daraufhinweisen, dass man damitvorsnichtig seine soll und damit auch nur auf das puschen.

Ansonsten finde ich den Tipp pfiffig :)

Grüße
HarryBoo

HarryBoo
13.11.2006, 23:08
@Holger,

wenn du es so gemacht hast wie in deinem Posting, dann funktioniert es auch.
Hast du das auch aus der categorie_listing.html entfernt?
Hast du dein Cache leer gemacht?
Hast du auch mal den Ordner templates_c geleert?

Die beiden Sachen sollte man bei Änderungen immer machen, weil sonst sieht man sich nicht ;)

Grüße
HarryBoo

Holger
14.11.2006, 00:00
''>ZITAT</div>Hast du das auch aus der categorie_listing.html entfernt?[/b]
also wenn es die nicht zwei mal gibt dann ja. (ordner Template/module usw...)

''>ZITAT</div>Hast du dein Cache leer gemacht?
Hast du auch mal den Ordner templates_c geleert?
[/b]

NEEEEEEE, natürlich nicht, davon hast du ja auch nichts gesagt... :D :D :D :D :D :D :D :D
Ich handele ja schließlich nicht eigenmächtig! :huh:

Werd es also noch mal versuchen....
Alles aus dem Ordner templates_c einfach löschen?!?!

HarryBoo
14.11.2006, 00:15
''>ZITAT</div>Alles aus dem Ordner templates_c einfach löschen?!?![/b]
Nee, die .htaccess und index.html sollten, aus Sicherheitsgründen immer drin bleiben.

pufaxx
14.11.2006, 00:19
Könnte an gecacheten Dateien liegen. Einfach mal im Ordner "templates_c" alle Dateien (bis auf die ".htaccess" und die "index.html") löschen. Wenn der Fehler weiterhin auftaucht, das Template prüfen:

CSS (Cascading Style Sheets ) CSS
http://de.selfhtml.org/css/ (http://anonym.to/?http://de.selfhtml.org/css/) - Top CSS Einsteiger Seite
http://www.css4you.de/ (http://anonym.to/?http://www.css4you.de/) - CSS Reference hat "hierarchische" Eigenschaften. Ohne zu wissen, welche Klassen "von außerhalb" auf die Elemente der Klasse "verstecken" einwirken, kann man zwar nie ganz genau sagen, warum irgendetwas immer noch angezeigt wird, aber die chance, dass dieses etwas immer noch angezeigt wird, kann man verkleinern:

Ein bisschen weiter auf der sicheren Seite ist man, wenn man die Anweisung präzisiert.[ ]Das könnte folgendermaßen aussehen:
.verstecken { display: none } heißt nur, dass alle "verstecken"s nicht angezeigt werden.[ ]"Genauer" wird die anweisung durch
div.verstecken {display: none} - das übertrifft alle widersprechenden Anweisungen für das Element <div></div> die eine Stufe drüber festgelegt wurden.[ ]Am sichersten ist man sowieso mit einer ID, aber IDs dürfen eigentlich nur einmal pro HTML-Seite vorkommen.
Deshalb viellenicht im Stylesheet schreiben div.verstecken, .verstecken { display: none } - damit wird erstens jedes DIV der Klasse "verstecken" ausgeblendet und zusätzlich jedes beliebige HTML-Tag, das innerhalb irgendeines mit der Klasse "verstecken" gekennzeichneten anderen Elementes auftaucht..
.
.

ansonsten: Dieser Code wundert mich"verstecken">
{if $CATEGORIES_DESCRIPTION}
{$CATEGORIES_DESCRIPTION}</div>

FALL1: "Es gibt eine Kategorienbeschreibung"
- DIV aufmachen.
- Kategorienbeschreibung anzeigen.
- DIV zumachen

FALL2: "Es gibt keine Kategorienbschreibung"
- DIV aufmachen
-.... ?
--> das DIV würde bei nicht existenter Kategorienbeschreibung nicht mehr geschlossen werden. Da stellt sich auch die Frage, ob man das öffnen nicht gleich verhundertn sollte.

TIPP:
- Bei "Bedingungen" im Template immer beachten, dass jeder mögliche "Fall" komplettes HTML erzeugt
- Also keine "Tags offen bleiben lassen"

In diesem Fall:{if $CATEGORIES_DESCRIPTION}"verstecken">{$CATEGORIES_DESCRIPTION}</div>{/if}

M.H.
22.09.2008, 21:56
Hi,
hab das selbe Problem nur funktioniert das bei mir mit den Tipps
hier nicht wirklich.
Daher meine Frage ob das in der aktuellen Version auch noch so gehen sollte.
Vielen Dank schon einmal.

Edit:
Habs nun hinbekommen.
Falls noch einmal jemand das gleiche Problem hat Poste ich hier mal meinen Lösungsweg.

Ich habe in der categorie_listing.html einfach
{$module_data.CATEGORIES_DESCRIPTION}
gelöscht und die Datei dann als categorie_listing_2.html gespeichert.

Somit kann man dann in der Hauptkategorie wählen ob man die Unterkategorie beschreibung in der
Hauptkategorie anzeigen lässt oder nicht.