Jump to content
xt:Commerce Community Forum

Ist Es M?glich Jede Kategorie Einen Anderen


caruni

Recommended Posts

Hi,

ich habe 7 Kategorien. Dazu habe ich zwei Fragen:

1- Ist es m?glich das so zu gestalten, dass bei den Aufruf von jeder Kategorie, immer oben in der Tabelle wo das Logo von XTcommerce ist, eine neue Optik zugewiesen wird, indem anderen Grafiken dort eingef?gt werden?

Ich habe bereits den Header ver?ndert (in den Templates-Ordner habe ich die index-datei ge?ndert. Diese ?nderung ist allerdings immer sichtbar, und ich w?rde gerne das es nur beim ersten Aufruf sichtbar w?re, und dann beim KLick auf jede andere Kategorie eine andere Optik oben zugewiesen wird, damit der User eindeutig wei? wo er sich befindet. Bei alles andere wie Anmeldung usw. sollte wieder die Grafik oben erscheinen, die beim ersten Aufruf angezeigt wurde.

2- Ist es m?glich, den Kategorie-Namen eine andere Farbe und eventuell Schriftgr??e zuzuweisen?

Gr??e,

caruni

Link to comment
Share on other sites

1- Ist es m?glich das so zu gestalten, dass bei den Aufruf von jeder Kategorie, immer oben in der Tabelle wo das Logo von XTcommerce ist, eine neue Optik zugewiesen wird, indem anderen Grafiken dort eingef?gt werden?

Sicher m?glich, aber auf jeden Fall mit Aufwand verbunden...

2- Ist es m?glich, den Kategorie-Namen eine andere Farbe und eventuell Schriftgr??e zuzuweisen?

Im Template-Order die Datei module/categorie_listing/categorie_listing.html dort in Zeile 6 den Farbwert (color="#666666") und die Schriftgr??e (size="4") anpassen oder gleich ?ber css formatieren...

Matt

Link to comment
Share on other sites

1- Ist es m?glich das so zu gestalten, dass bei den Aufruf von jeder Kategorie, immer oben in der Tabelle wo das Logo von XTcommerce ist, eine neue Optik zugewiesen wird, indem anderen Grafiken dort eingef?gt werden?

ganz einfach, du kannst im html template mit php arbeiten, und dann einfach eine switch/case anweisung ?ber das cPath, und das jeweilige bild dann anzeigen.

2. siehe oberes posting.

Link to comment
Share on other sites

Hallo,

erstmal Danke f?r die Antworten.

Zu Punkt 1:

Mit HTML-Template meinst du sicherlich die index-Datei, denke ich.

Aber was ist das:

"switch/case anweisung ?ber das cPath, und das jeweilige bild dann anzeigen"

Ich weiss noch nicht was eine switch/case-Anweisung ist und w?re dir sehr dankbar wenn du mir ein Tip geben k?nntest. K?nnen es auch mehrere Bilder sein anstatt ein Bild? Es sollte eine Tabelle sein, mit eine Zeile und drei Spalten, wo in jede Spalte ein Hintergrundbild eingef?gt wird, so dass die Tebelle auch variabel ist, sprich f?r verschiedene Aufl?sungen.

EDIT: Ich habe mich schlau gemacht und ich denke ich weiss was du mit cpath meinst. Das ist die Befehlsweitergabe bei einen Click auf den entsprechenden Link, immer unten in der Browserzeile sichtbar. Nur mit der switch/case-anweisung bin ich noch nicht weitergekommen.

Zu Punkt 2:

"Im Template-Order die Datei module/categorie_listing/categorie_listing.html dort in Zeile 6 den Farbwert (color="#666666") und die Schriftgr??e (size="4") anpassen oder gleich ?ber css formatieren..."

-Ich denke, ich habe mich nicht richtig ausgedr?ckt. Ich meinte nicht die Kategorie-Namen die gro? erscheinen, sondern die etwas kleineren Kategorie-Namen in der Box "Kategorien" links. Dort wo bei einen Click sich eine weitere Hierarchie darunter ?ffnet.

Meine Frage war, ob ich die Kategorie-Namen der "obersten" Hierarchien (und nur diese) jeweils in eine andere Farbe gestalten kann. Wenn also 5 Hierarchien, jede oberste in eine andere Farbe.

Trotzdem Danke f?r den Tip, dadurch konnte ich auch ein paar ?nderngen machen, auch wenn anderer Natur :D

Gr??e

caruni

Link to comment
Share on other sites

Zu Punkt 2:

Datei inc/xtc_show_category.inc.php ?ffnen

Zeile 25


 ? ?$categories_string .= '<a href="';

ersetzen durch

 ? ?$categories_string .= '<a ';


 ? ?if($foo[$counter]['level']>0) {

 ? ? ?$categories_string .= 'class="sub" ';

 ? ?} else {

 ? ? ?$categories_string .= 'class="top" ';

 ? ?}


 ? ?$categories_string .= 'href="';

Im Template-Ordner die Datei stylesheet.css ?ffnen und Formatierungen f?r beide Klassen anlegen:

.top {

 font-family: Arial, Helvetica, sans-serif;

 font-weight: bold;

 font-size: 12pt;

 color: #f00;

 background: #ccc;

}


.sub {

 font-family: "Times New Roman", Times, serif;

 font-weight: bold;

 font-size: 10pt;

 color: #ff0;

 background: #d1d1d1;

}

Matt

Link to comment
Share on other sites

Danke, war schon mal hilfreich. War aber nicht das worum ich gefragt hatte.

Wenn ich 5 oberen Kategorien habe, welche weitere Unterkategorien haben, so m?chte ich "jede einzelne Kategorie von diesen 5 mit seinen entsprechenden Unterkategorien eine andere Farbe zuweisen. Also w?ren dort auf der Startseite 5 verschiedenen Kategorien und jede mit eine andere Farbe.

Link to comment
Share on other sites

Zu 1 (ungetestet!):

Abh?ngig von der Hauptkategorie unterschiedliche Header anzeigen (hier zwei Auswahlm?glichkeiten und ein default):


  <td class="tableShop"><table border="0" width="100%" cellspacing="0" cellpadding="0">

    <tr class="header">

     <td width="123" valign="middle"><img src="{$tpl_path}img/logo_kategorie1.gif"></td>

     <td background="{$tpl_path}img/bg_kategorie1.jpg" align="left" valign="bottom"></td>

     <td background="{$tpl_path}img/bg_kategorie1.jpg" align="right" valign="bottom"><img src="{$tpl_path}img/img_kategorie1.jpg" border="0" alt="" width="1" height="75"></td>

    </tr>

   </table>


  <td class="tableShop">

  {php}

   switch(substr($_GET["cPath"],0,1)) {

    case "1":

  {/php}

   <table border="0" width="100%" cellspacing="0" cellpadding="0">

    <tr class="header">

     <td width="123" valign="middle"><img src="{$tpl_path}img/logo_kategorie2.gif"></td>

     <td background="{$tpl_path}img/bg_kategorie2.jpg" align="left" valign="bottom"></td>

     <td background="{$tpl_path}img/bg_kategorie2.jpg" align="right" valign="bottom"><img src="{$tpl_path}img/img_kategorie2.jpg" border="0" alt="" width="1" height="75"></td>

    </tr>

   </table>

  {php}

   break;

   case "2":

  {/php}

   <table border="0" width="100%" cellspacing="0" cellpadding="0">

    <tr class="header">

     <td width="123" valign="middle"><img src="{$tpl_path}img/logo_kategorie3.gif"></td>

     <td background="{$tpl_path}img/bg_kategorie3.jpg" align="left" valign="bottom"></td>

     <td background="{$tpl_path}img/bg_kategorie3.jpg" align="right" valign="bottom"><img src="{$tpl_path}img/img_kategorie3.jpg" border="0" alt="" width="1" height="75"></td>

    </tr>

   </table>

  {php}

   break;

   default:

  {/php}

   <table border="0" width="100%" cellspacing="0" cellpadding="0">

    <tr class="header">

     <td width="123" valign="middle"><img src="{$tpl_path}img/logo_default.gif"></td>

     <td background="{$tpl_path}img/bg_default.jpg" align="left" valign="bottom"></td>

     <td background="{$tpl_path}img/bg_default.jpg" align="right" valign="bottom"><img src="{$tpl_path}img/img_default.jpg" border="0" alt="" width="1" height="75"></td>

    </tr>

   </table>

  {php}

   }

  {/php}

Link to comment
Share on other sites

Frage:

<td class="tableShop"><table border="0" width="100%" cellspacing="0" cellpadding="0">

<tr class="header">

<td width="123" valign="middle">logo_kategorie1.gif</td>

<td background="{$tpl_path}img/bg_kategorie1.jpg" align="left" valign="bottom"></td>

<td background="{$tpl_path}img/bg_kategorie1.jpg" align="right" valign="bottom">img_kategorie1.jpg</td>

</tr>

</table>

Muss das ?berhaupt eingef?gt werden? Das ist doch der Standard.

<td class="tableShop">

{php}

switch(substr($_GET["cPath"],0,1)) {

case "1":

{/php}

<table border="0" width="100%" cellspacing="0" cellpadding="0">

<tr class="header">

<td width="123" valign="middle">logo_kategorie2.gif</td>

<td background="{$tpl_path}img/bg_kategorie2.jpg" align="left" valign="bottom"></td>

<td background="{$tpl_path}img/bg_kategorie2.jpg" align="right" valign="bottom">img_kategorie2.jpg</td>

</tr>

</table>

{php}

break;

case "2":

{/php}

<table border="0" width="100%" cellspacing="0" cellpadding="0">

<tr class="header">

<td width="123" valign="middle">logo_kategorie3.gif</td>

<td background="{$tpl_path}img/bg_kategorie3.jpg" align="left" valign="bottom"></td>

<td background="{$tpl_path}img/bg_kategorie3.jpg" align="right" valign="bottom">img_kategorie3.jpg</td>

</tr>

</table>

{php}

break;

default:

{/php}

<table border="0" width="100%" cellspacing="0" cellpadding="0">

<tr class="header">

<td width="123" valign="middle">logo_default.gif</td>

<td background="{$tpl_path}img/bg_default.jpg" align="left" valign="bottom"></td>

<td background="{$tpl_path}img/bg_default.jpg" align="right" valign="bottom">img_default.jpg</td>

</tr>

</table>

{php}

}

{/php}

Hier habe ich ein paar Experimente gemacht und es sieht ganz gut aus :-)

Kannst du mir die genaue Funktion auch erkl?ren? Liege ich richtig bei der Annahme, das die beiden Skripte (angefangen mit

<td class="tableShop">

{php}

switch(substr($_GET["cPath"],0,1)) {" usw.

eben auf die Kategorien zuweisen wie ich nach gefragt habe? Aber was ist mit den unteren "default"? F?r wann ist das denn gedacht? Ich gehe von der Annahme, immer dann wenn keiner der Kategorien augerufen wird, sondern alles andere.

Habe auch festgestellt, dass bei einen Click auf eine Kategorie sich die entsprechenden Grafiken oben ver?ndern sowie es sein sollte, nur wenn ich dann auf eine Unterkategorie davon Clicke verschwindet es wieder. Ist es m?glich den Skript so zu ?ndern das innerhalb dieser Kategorie bzw. Hierarchie die Grafiken oben unver?ndert bleiben und nur bei einen Click auf eine andere Kategorie die entsprechenden Grafiken geladen werden oder bei einen Click auf den Warenkorb oder Kontakt die Default Grafiken?

Vielen Dank f?r deine Hilfe bisher.

caruni

Link to comment
Share on other sites

Man sollte nicht Sachen hinschmieren wenn man grad auf dem Sprung ist.

Der oberste Teil in meinem Beispiel:


<td class="tableShop"><table border="0" width="100%" cellspacing="0" cellpadding="0">

    <tr class="header">

     <td width="123" valign="middle"><img src="{$tpl_path}img/logo_kategorie1.gif"></td>

     <td background="{$tpl_path}img/bg_kategorie1.jpg" align="left" valign="bottom"></td>

     <td background="{$tpl_path}img/bg_kategorie1.jpg" align="right" valign="bottom"><img src="{$tpl_path}img/img_kategorie1.jpg" border="0" alt="" width="1" height="75"></td>

    </tr>

   </table>

sollte eigentlich das Original in index.html darstellen (stimmt nicht 100%), das es zu ersetzen gilt mit dem darunter befindlichen Teil, wie du schon richtig erkannt hast. Das Problem das er auf die default-Einstellung zur?ckspringt liegt daran das die benutzte Variable $_GET["cPath"] ihren Wert ?ndert. Damit es trotzdem funktioniert das in allen Sub-Kategorien das Layout der Hauptkategorie erscheint mu? in includes/modules/metatags.php unterhalb von
if ($_GET['cPath']) {
(Zeile 28) eingef?gt werden:

$_GET["Cat"] = substr($_GET["cPath"],0,1);

und im Beispielcode oben mu?
switch(substr($_GET["cPath"],0,1)) {
durch
switch($_GET["Cat"]) {

ersetzt werden.

Wird jetzt die Kategorie mit der ID 1 aufgerufen wird der Teil angezeigt der nach 'case "1":' folgt (bis 'break'), wird die Kategorie mit der ID 2 aufgerufen, der Teil der nach 'case "2":' kommt usw. F?r alles andere springt 'default' in die Bresche (also Warenkorb, Konto, Startseite etc.)

Matt

Link to comment
Share on other sites

Wenn ich 5 oberen Kategorien habe, welche weitere Unterkategorien haben, so m?chte ich "jede einzelne Kategorie von diesen 5 mit seinen entsprechenden Unterkategorien eine andere Farbe zuweisen. Also w?ren dort auf der Startseite 5 verschiedenen Kategorien und jede mit eine andere Farbe.

Das erreichen wir mir


 ?$categories_string .= '<a ';


 ? if($foo[$counter]['level']>0) {

 ? ? $categories_string .= 'class="sub'.substr($foo[$counter]['path'],0,1).'" ';

 ? } else {

 ? ? $categories_string .= 'class="top'.$counter.'" ';

 ? }


 ? $categories_string .= 'href="';

Angenommen wir haben f?nf Hauptkategorien mit den ID's 1-5, dann ben?tige wir die css-Klassen .top1, .top2, .top3, .top4, .top5, .sub1, .sub2, .sub3, .sub4 und .sub5, die wir alle nach belieben formatieren k?nnen.

Matt

Link to comment
Share on other sites

Bez?glich jede Kategorie eine andere Grafi:

Es hat geklappt, lediglich folgendes Problem tritt auf:

Meine Kategorien haben aus f?r mich unerkl?rlichen Gr?nden keine durchnummerierung. Das heisst

Kategorie 1=Path1

Kategorie 2=Path8

Kategorie 3=Path9

Kategorie 4=Path10

Kategorie 5=Path11

Kategorie 6=Path12

Kategorie 7=Path13

Bis Kategorie 3 funktioniert alles einwandfrei, ab Kategorie 10 erscheinen immer die Grafiken von Kategorie 1.

Kann das ge?ndert werden? Entweder den Skript oder die Kategorie-Nummer?

Gr??e,

caruni

Link to comment
Share on other sites

wow, mega!!! :bounce:

es funktioniert super gut... danke dir vielmals :)

kannst du mir auch sagen wie ich das f?r die kategorien mache :stupid: dort passiert das gleiche, die Unterkategorien nach 10 erscheinen in rot, aber die oberkategorien daf?r nicht :blink:

vielleicht kannst du mir noch ein Tipp daf?r geben.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
  • Create New...