Seite 1 von 1

Wie übergibt man variable Werte an WE Tags?

Verfasst: Mi 16. Feb 2011, 16:13
von CoderboyPB

Code: Alles auswählen

<we:ifVarEmpty match="folderID" type="request">
<we:setVar to="request" nameto="folderID" value="293" />
</we:ifVarEmpty>
<we:navigation navigationname="default" parentid="\$_REQUEST['folderID']" level="1" />

<we:navigationEntry type="folder" navigationname="default">
  <li><we:navigationField name="text" />
  </li>
</we:navigationEntry>

<ul>
<we:navigationWrite navigationname="default" />
</ul>
So, die Idee ist die, dass ich per URL String gerne den Startknotenpunkt übergeben möchte.

Aus der webEdition Doku habe ich folgendes adaptiert:

Code: Alles auswählen

<we:ifVarEmpty match="votingId" type="request">
<we:setVar to="request" nameto="votingId" value="3" />
</we:ifVarEmpty>

<we:voting name="voting" id="\$_REQUEST['votingId']" version="1">
Warum funktioniert das hier mit der Variablen, aber nicht im oberen Code ?

Re: Wie übergibt man variable Werte an WE Tags?

Verfasst: Mi 16. Feb 2011, 16:15
von Dirk Einecke
Hi,

am besten keine globalen oder superglobalen Variablen verwenden.

Besser so: attribute="\$vaiable"
Wenn's nicht geht, dann so versuchen: attribute="$vaiable"

Dirk

Re: Wie übergibt man variable Werte an WE Tags?

Verfasst: Mi 16. Feb 2011, 16:16
von haydi
nimm mal das level="1" bei we:navigation raus...
die id, die du übergibst gibt es aber als parentid der navigation, ja??
was genau funktioniert denn nicht?

Re: Wie übergibt man variable Werte an WE Tags?

Verfasst: Mi 16. Feb 2011, 16:53
von CoderboyPB
Habe das jetzt so gemacht:

Code: Alles auswählen

<we:setVar to="request" nameto="folderID" value="293" />

<we:var type="request" name="folderID" />

<we:navigation navigationname="default" parentid="\$folderID" level="1" />
Wobei die zweite Zeile lediglich der Überprüfung gilt, ob in folderID auch wirklich der Wert 293 steht.

Tatsächlich wird aber das Wurzelelement ausgegeben, also es passiert genau das, wenn man eine leere ID übergibt.

Sodele. Habe mal meine kleinen grauen Zellen angeschmissen und eine Lösung über ein selbtgeschriebenes Web Tag realisiert:

Code: Alles auswählen

<?php
function we_tag_navi()
{
	extract($_GET);
        return we_tag("navigation", array("naviagationname"=>"default","parentid"=>"$folderID","level"=>"1"));
}
?>
Die Lösung sieht nun wie folgt aus (OK, das Template ist noch nicht fertig)

Code: Alles auswählen

<we:setVar to="request" nameto="folderID" value="293" />
<we:var type="request" name="folderID" />
<we:navi />

<we:navigationEntry type="folder" navigationname="default">
  <li><we:navigationField name="text" />
  </li>
</we:navigationEntry>

<ul>
<we:navigationWrite navigationname="default" />
</ul>
OK, vielleicht etwas umständlich - aber es FUNZT ... !!! ;-)