Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.

#1 05. Juni 2011 13:17

AL-d82
Server-Pate
Ort: Heilbronn / Göppingen
Registriert: 18. Dezember 2010
Beiträge: 149
Webseite

[gelöst] Modul: Products - einzelne Extrafelder ausgeben und anzeigen?

Hallo kommen nicht mehr weiter:
Habe das Modul Products.
Im Reiter Felddefinitionen habe ich mir ein paar extra Felder erstellt.

z.B. ABS, ESP, Airbag... (Checkbox)

Wollte im Template die einzelnen Variablen aufrufen aber das gelingt mir irgendwie nicht :-(
hab
{$ABS} {$ESP} {$Airbag} versucht ohne Erfolg

oder
{if $ABS ==true}
  Ja {else} neun
{/if}

{if $ABS ==1}
  Ja {else} neun
{/if}...

wie kann ich die erstellten Extra Felder (Variablen) mir  manuell anzeigen lassen?  glasses

Beitrag geändert von AL-d82 (05. Juni 2011 16:08)

Offline

#2 05. Juni 2011 14:14

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: [gelöst] Modul: Products - einzelne Extrafelder ausgeben und anzeigen?

Man muss das Template nur genau studieren, dann sieht man schon wie man an welche Daten herankommt.
Und das alles ohne {get_template_vars} oder {$variable|print_r} ausprobieren zu müssen wink

Im Beispieltemplate wird eine Variable {$entry->fields} durchlaufen.
Das ist ein assoziatives Array welches alle Felder und ihre Eigenschaften enthält:

{foreach from=$entry->fields key='name' item='field'}

Auf ein einzelnes Feld kann innerhalb der {foreach}-Schleife mit {$field} (item='field') zugegriffen werden.
{$field} ist ein Objekt und hat folgende Eigenschaften (hab die wichtigsten mal fett markiert):

id
name = Name des Feldes
prompt = Eingabeaufforderung für dieses Feld
type
options
max_length
fielddef_id
value = Eingetragener Wert

Innerhalb dieser {foreach}-Schleife kannst Du also so auf die Felder zugreifen:

Außerdem wird innerhalb der {foreach}-Schleife der Index jedes Array-Eintrags in der Variable {$name} (key='name') gespeichert. Und wenn man dann sowas sieht:

{$mod->Lang('name')}: {$name}<br/>

dann bedeutet das, dass der Index gleich dem Feldnamen entspricht. D.h. {$name} ist innerhalb der Schleife das gleiche wie {$field->name}.
D.h. das Array {$entry} ist so aufgebaut:

{$entry->fields.NAME_DES_FELDES->EIGENSCHAFT}

Somit kannst du außerhalb dieser {foreach}-Schleife z.B. so direkt auf jedes einzelne Feld zugreifen:

{if $entry->fields.ABS->value}
   Ja
{else}
   Nein
{/if}

Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#3 05. Juni 2011 15:25

AL-d82
Server-Pate
Ort: Heilbronn / Göppingen
Registriert: 18. Dezember 2010
Beiträge: 149
Webseite

Re: [gelöst] Modul: Products - einzelne Extrafelder ausgeben und anzeigen?

@NaN

ich danke dir für deine sehr gute und ausführliche Antwort.
Die Schleife habe ich schon gesehen :-P
hab auch was versucht mit der Schleifen aber bin gescheitert :-D 

auf diese Kombination wäre ich nicht gekommen $entry->fields.ABS->value
auch nach durchsuchen des Forums hier und auf .org war ich nicht schlauer..
im .org Forum habe ich so was ähnliches gefunden $entry->fields.ABS->value aber das war für Bilder
hab da auch was ausprobiert aber bekam ne Fehlermeldung :-p

Hab auch ein anderes Modul Namens Automobile  Listing (Vehicle Listing) ausprobiert ist auch ein sehr nettes Modul aber da hab ich das Problem, wenn ich mehr als 18 checkboxen ausgewählt habe waren alle checkboxen wieder nicht markiert unter 18 kein Problem waren die checkboxen aktiv.

DANKE AL

Offline

#4 05. Juni 2011 16:07

AL-d82
Server-Pate
Ort: Heilbronn / Göppingen
Registriert: 18. Dezember 2010
Beiträge: 149
Webseite

Re: [gelöst] Modul: Products - einzelne Extrafelder ausgeben und anzeigen?

Kleiner Nachtrag:

es muss in die if abfrage =='true' rein da es immer einen Wert gibt bei nicht markierter Checkbox wird false zurückgegeben somit würde ohne =='true' immer ja kommen monkey

ABS: {if $entry->fields.ABS->value == 'true'} ja{else}nein {/if}

greez AL

Offline