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

#1 24. März 2011 15:08

nicmare
Server-Pate
Registriert: 15. Dezember 2010
Beiträge: 1.316
Webseite

Re:

Ich habe mal wieder eine Knobelaufgabe. Möglicherweise mache ich es mir zu kompliziert.
Es handelt sich um eine CMSms Seite mit zwei templates.
In einem Template steckt content_dump um die Inhalte der Seiten mit dem anderen Template zu "holen".
Das funzt ja sehr gut für content blöcke mittels dem parameter "extensions".
nun möchte ich aber auch eine variable von dem template bzw der seite laden.
also hatte ich mir einen workaround mit advancedcontent einfallen lassen:

{assign var=varname value="hallo welt"}
{content block="templatevar" assign="templatevar" active="false" default=`$varname`}

Als nächste hätte ich versucht "templatevar" als weiteren block mittels dem extensions-paramater von content_dump zu laden.
Aber das wäre zu einfach gewesen. Leider bleibt bei get_template_vars der block leer (auch bei default=$varname). Aus bestimmten Gründen kann ich den Wert nicht direkt in der Seite bei der Bearbeitung hinterlegen. darum active="false". Gibt es sonst noch eine Möglichkeit an die Variable ranzukommen? also wozu ist dann active="false" gut? um erst einen wert zu hinterlegen und dann erst den block auszublenden?

Beitrag geändert von nicmare (24. März 2011 15:09)

Offline

#2 24. März 2011 15:32

cyberman
Moderator
Ort: Dohna / Sachsen
Registriert: 13. September 2010
Beiträge: 6.741
Webseite

Re:

Hatte content_dump nicht einen Parameter, mittels dessen man den geholten Inhalt parsen kann?


1. Wie bekomme ich hier schnelle Hilfe?
2. HowTo: Fehlersuche bei CMSMS
---
„First they ignore you, then they laugh at you, then they fight you, then you win.“ Mahatma Ghandi

Offline

#3 24. März 2011 15:33

nicmare
Server-Pate
Registriert: 15. Dezember 2010
Beiträge: 1.316
Webseite

Re:

jup, aber selbst dann wäre dieser ja noch leer.

Offline

#4 24. März 2011 16:30

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

Re:

Also active=false ist eigentlich nur, um einen Block mal zu deaktivieren, ohne ihn gleich aus dem Template zu löschen. Blöcke mit active=false werden weder im Backend noch Frontend angezeigt. Sie werden erst garnicht verarbeitet. Sind also überhaupt nicht da bzw. immer leer. Genausogut könnte man aber auch einfach {* content ... *} draus machen. Bringt Dich hier also nicht weiter.
(Der Parameter kommt warscheinlich auch wieder raus, weil eigentlich sinnlos.)

default=$varname ergibt für mich im Moment auch keinen Sinn.
Der Parameter ist eigentlich nur für's Backend, um bei neuen Seiten für diesen Block einen Standardwert vorzugeben. Im Frontend wird er nur dann berücksichtigt, wenn der Inhalt des Blocks leer ist, er aber nicht leer sein darf (Parameter allow_none=false).

Offline

#5 24. März 2011 22:02

nhaack
Server-Pate
Ort: Bonn
Registriert: 12. Dezember 2010
Beiträge: 171
Webseite

Re:

N'abend smile

Ich wiederhol' das mal mit meinen Worten um zu sehen, ob ich das verstanden habe.

- Du hast eine Seite X
- Diese Seite X enthält Content Blöcke, an die du auch alle per CD ran kommst
- Du hast eine Seite Y, auf der soll der Zauber stattfinden
- Auf der Seite X führst du aber noch irgendwelche Berechnungen/Abfragen/etc durch, deren Ergebnis du ebenfalls auf Seite Y sehen willst

Da fallen mir spontan folgende Optionen ein:

- Notwendige Werte zur Berechnung von X ebenfalls mitgeben und Berechnung auf der Seite Y erneut ausführen
- Logik, die deine Variable füllt in einen Content Block packen und diesen mit do_smarty=true (bei Content Dump) ausführen

Führt beides dazu, dass du den Wert jeweils erneut berechnest.

Hoffe das ging in die richtige Richtung.


@NaN: nicht löschen smile Ich mag solche Steuerparameter.

Viele Grüße
Nils

Offline

Fußzeile des Forums

Powered by FluxBB