Funktion für Check: Ist Artikel in bestimmter Kategorie?

Hallo zusammen,

habe gerade eine kleine Funktion gebaut, um zu ermitteln, ob der gerade in details.tpl angezeigte Artikel in einer bestimmten Kategorie enthalten ist.

Anwendungsfall: Interessant ist das bei Mehrfachzuordnungen z.B. einmal in Neuheiten, einmal in Damenartikel. Man will ggf. auch in der Artikelansicht unter “Damen” wissen, ob der Artikel außerdem in Neuheiten gelistet ist-

Hierzu mit einem Modul die details.php erweitern (class xyzdetails extends xyzdetails_parent) und folgende Funktion einbauen:

   /* fk: check if current product is in specific category (does not have to be active category!) */ 
   public function isInCategory($sCatId)
   {
    $bFound = false;
    
    if (in_array($sCatId, $this->getProduct()->getCategoryIds())) $bFound = true;    
    
    return $bFound; 
   } 

Aufruf/Check in details.tpl dann per

[{ if $oView->isInCategory('b47ee5046c582ae0bd6392c8e542cd48') }]
     Hier dann die Sonderbehandlung
[{ /if }]

Viell. sparts jemandem ein bißchen Arbeit :wink:

Fändest Du das in einem Template-Block nicht viel cooler? Sollen wir das mal zusammen aufsetzen?

Vielen Dank mir hats geholfen.

Fändest Du das in einem Template-Block nicht viel cooler?

kann man das auch direkt im Template umsetzen, ohne die View Datei anzupassen?

Vielen Dank floko, dass Script hat mir für die Anzeige in den Artikel-Details sehr geholfen.

Ich möchte es aber gerne noch bei der Artikel-Übersicht (listitem_grid.tpl) einsetzten. Allerdings funktioniert das nicht bei der Übersicht.
Das Script habe ich in die View alist.php eingetragen und folgendes in die listitem_grid.tpl:

[{ if $oView->isInCategory('0123456789012345678901234567890') }] 
	<div class="custom_newproduct">
		<span>[{oxmultilang ident="DETAILS_NEWPRODUCT"}]</span>
	</div>	
[{/if}]

Hat jemand vielleicht eine Idee wo der Fehler sein könnte?

Gruß

Y-Nell

[QUOTE=floko;96042]Hallo zusammen,

habe gerade eine kleine Funktion gebaut, um zu ermitteln, ob der gerade in details.tpl angezeigte Artikel in einer bestimmten Kategorie enthalten ist.

Anwendungsfall: Interessant ist das bei Mehrfachzuordnungen z.B. einmal in Neuheiten, einmal in Damenartikel. Man will ggf. auch in der Artikelansicht unter “Damen” wissen, ob der Artikel außerdem in Neuheiten gelistet ist-

Hierzu mit einem Modul die details.php erweitern (class xyzdetails extends xyzdetails_parent) und folgende Funktion einbauen:

   /* fk: check if current product is in specific category (does not have to be active category!) */ 
   public function isInCategory($sCatId)
   {
    $bFound = false;
    
    if (in_array($sCatId, $this->getProduct()->getCategoryIds())) $bFound = true;    
    
    return $bFound; 
   } 

Aufruf/Check in details.tpl dann per

[{ if $oView->isInCategory('b47ee5046c582ae0bd6392c8e542cd48') }]
     Hier dann die Sonderbehandlung
[{ /if }]

Viell. sparts jemandem ein bißchen Arbeit ;-)[/QUOTE]

Den Part mit “Hierzu mit einem Modul die details.php erweitern” verstehe ich nicht ganz, wie macht man das genau ?

Beste Grüße
Daniel

Würde ich auch gern wissen, wie das mit dem Erweitern so richtig funktioniert.

schau mal - Marco hat da was: http://www.marco-steinhaeuser.de/

Danke, aber ich steig da trotzdem nicht durch. Hab das jetzt versucht, halbwegs abzuleiten, aber das Template wird dann kaum noch geladen, <head> ist komplett leer.