SKochSKoch MemberComments: 13 Received thanks: 2 Member since: June 2010 edited July 2010
Hallo Leute,

Ich bastle gerade daran, dass eine Bestimmte Hauptkategorie aus der Linken Spalte
immer vollständig ausgeklappt wird. Also auch dann wenn sie nicht active ist.

Ganz konkret wollte ich den Namen der Hauptkategorie eingeben, auf die das zutrifft.
Also z.B. hier: http://www.sora-shop.de/ die Kategorie "Vitrinen"

Nun dachte ich, dass ich in der index.tpl einfach eine Elseif im Block
[*Ansonsten Ausgabe der Unterkategorien*] einfügen könnte nach dem Motto: :sunglasses:
{elseif $sMainCategory.description == "Vitrinen"}
								<ul id="categories">
									{if $sCategories}
										{* Rekursives Laden der verschiedenen Hierarchie-Ebenen *}
										{include file="category/category_maincategories.tpl" sCategories=$sCategories}
									{/if}
								</ul>
Leider Pustekucken! :(


Irgendwas muss hier noch falsch sein.
Hat einer von euch eine Idee, wie man das richtig einbindet?

LG,

Sebastian

Comments

  • TSchenkTSchenk MemberComments: 335 Received thanks: 36 Member since: June 2010
    SKoch wrote:
    Hallo Leute,

    Ich bastle gerade daran, dass eine Bestimmte Hauptkategorie aus der Linken Spalte
    immer vollständig ausgeklappt wird. Also auch dann wenn sie nicht active ist.

    Ganz konkret wollte ich den Namen der Hauptkategorie eingeben, auf die das zutrifft.
    Also z.B. hier: http://www.sora-shop.de/ die Kategorie "Vitrinen"

    Nun dachte ich, dass ich in der index.tpl einfach eine Elseif im Block
    [*Ansonsten Ausgabe der Unterkategorien*] einfügen könnte nach dem Motto: :sunglasses:
    {elseif $sMainCategory.description == "Vitrinen"}
    								<ul id="categories">
    									{if $sCategories}
    										{* Rekursives Laden der verschiedenen Hierarchie-Ebenen *}
    										{include file="category/category_maincategories.tpl" sCategories=$sCategories}
    									{/if}
    								</ul>
    
    Leider Pustekucken! :(


    Irgendwas muss hier noch falsch sein.
    Hat einer von euch eine Idee, wie man das richtig einbindet?

    LG,

    Sebastian
    Hallo,

    das kenn ich das Problem.
    Versuch dir mal die Variable sCategories darstellen zu lassen (Firebug). Die Sache ist die, das nicht der Komplette Kategoriebaum in der sCategories dargstellt ist.

    - Hauptkat 1
    - Hauptkat 2 (aktiv)
    - Unterkat 1
    - Unterkat 2
    - Unterkat 3
    - Hauptkat 3

    Da nur Hauptkat 2 aktiv ist, bekommst du auch nur die untergeordneten Kategorien von Hauptkat 2. Da können noch so viele Unterkategorien in der Hauptkat 1 bzw. 3 sein, die werden dir in dem Augenblick nicht in der Variable sCategories mitgeliefert.

    Ich denke das dies das Problem sein wird, zumindestens hatte ich es in einer früheren Version.

    Abhilfe kannst du in einer Factory-Klasse schaffen. (myCore.php) in dem du dir da halt alles zur Kategorie "Vitrinen" in eine SmartyVariable schreiben lässt.

    Viele Grüße
    Thomas
    Thanked by 1SKoch
  • SKochSKoch MemberComments: 13 Received thanks: 2 Member since: June 2010
    Danke für den Tipp. :thumbup:
    Kannst du mir mal sagen, wie das mit der Factory-Klasse aussehen müsste
    (habe bisher noch nichts an der myCore.php verändern müssen)?
  • TSchenkTSchenk MemberComments: 335 Received thanks: 36 Member since: June 2010
    Hallo,

    ich schau nachher mal, wenn ich Zuhaus bin...

    Viele Grüße
    Thomas
  • TSchenkTSchenk MemberComments: 335 Received thanks: 36 Member since: June 2010
    Hallo,

    also in der myCore.php in der Funktion sCustomRenderer.
    //SQL-Select auf s_categories-Tabelle
    $sql = "...SQL-SELECT...";
    $tmp = $this->sSYSTEM->sDB_CONNECTION->getAll($sql);
    //$tmp-Array Aufbereiten
    foreach($tmp as $key=>$value)
    {
         .......
    }
    //Variable zuweisen
    $sRender['variables']['sVitrineCategory'] = $tmp
    
    Das so als grobes Gerüst.
    Nach dem Select musst du das Ergebnis warscheinlich noch in einer Schleife durchgehen und ein wenig aufbereiten für das Array.

    Im Template (index.tpl) hast du dann die variable "sVitrineCategory". Die Kannst du dann über eine Foreach-Schleife (oder include-Smarty-Befehl) ausgeben.

    Hoff ich hab dir da noch ein wenig geholfen.

    Viele Grüße
    Thomas
    Thanked by 2Stephan Pohl SKoch
Sign In or Register to comment.