simple IF Abfrage

Diskussionen zur Smarty-Template-Engine
nicmare
Power Poster
Power Poster
Posts: 1150
Joined: Sat Aug 25, 2007 9:55 am
Location: Berlin

Re: simple IF Abfrage

Post by nicmare »

ich glaube es liegt an CMSms und die Reihenfolge/Geschwindigkeit wie das Template berechnet wird.
Denn es ist so aufgebaut:

Code: Select all

{content_image urlonly='true' block='Headerimage'  label='Headerimage' dir='images/backgrounds' assign='imagevar'}
{global_content name='header'}
<div class="left">
<h3>{title}</h3>
{content}
</div>
<div class="right">
{content block="right" label="right column"}
</div>
{global_content name='footer'}
Und im Header sind dann eben diese ganzen anderen Sachen (etwas gekürzt):

Code: Select all

{process_pagedata}
{babel action="assign"}
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<__html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" >
<head>
<title>{sitename} - {title}</title>
{metadata}
<link href="{root_url}/style.css" rel="stylesheet" type="text/css" media="all" />
<style type="text/css">
{if $imagevar|strip !== '-1' && $imagevar|strip !==-1 && $imagevar|strip != ''}
.wrapper {literal}{{/literal}
background-image:url({root_url}/{$imagevar}){literal}}{/literal}
{/if}
{if $page_lang == "de_DE"}
{literal}
.mainnavi a {
	background-image:url(images/navigation_de.gif);}
{/literal}
{elseif $page_lang == "nl_NL"}
{literal}
.mainnavi a {
	background-image:url(images/navigation_nl.gif);}
{/literal}
{/if}
</style>
</head>
</__body>
	<div class="sand">
	<div class="wrapper">
		<div class="container">
			<div class="header">
				<a href="{root_url}" class="home"><img src="images/living_africa.png" alt="{sitename}" /></a>
{babel action="menu"}
			</div>
			<div class="content">
				<div class="contenttop"></div>
					<div class="mainnavi">
                                        {menu start_level="2" number_of_levels="1"}
</div>
					<a class="booknow" href="{cms_selflink href="contact-us"}">Book now</a>
					<div class="clear"></div>
					<div class="innercontent">
cyberman

Re: simple IF Abfrage

Post by cyberman »

Hast du schon versucht

Code: Select all

{content_image urlonly='true' block='Headerimage'  label='Headerimage' dir='images/backgrounds' assign='imagevar'}
in den seitenspezifischen Smarty-Daten (Tab Optionen) unterzubringen?

Welchen Wert hat bei dir $config['process_whole_template']
nicmare
Power Poster
Power Poster
Posts: 1150
Joined: Sat Aug 25, 2007 9:55 am
Location: Berlin

Re: simple IF Abfrage

Post by nicmare »

ist false! aber auch bei true ändert das nicht die lage :(.
Und nein, ich habe es noch nicht in die seitenspezifischen smartyfelder eingefügt da es für mich auch keine alternative ist. (das müsstet man ja immer machen, sobald man ne neue Seite anlegt).
Gerne schicke ich nem Interessieren den Admin Zugang um damit rumzuspielen, ich bin am Ende :D
nicmare
Power Poster
Power Poster
Posts: 1150
Joined: Sat Aug 25, 2007 9:55 am
Location: Berlin

Re: simple IF Abfrage

Post by nicmare »

mir ist aufgefallen dass nur noch -1 ausgegeben wird, wenn man den Zwischenspeicher einer Seite abhakt! Das würde auch erklären wieso das am Anfang erstmal nirgends geht und dann aber ohne Probleme bis man wieder die Sprache wechselt. Nur wieso kommt -1 wenn die Seite nicht zwischengespeichert ist?
cyberman

Re: simple IF Abfrage

Post by cyberman »

nicmare wrote: ist false! aber auch bei true ändert das nicht die lage :(.
Alternativ kannst du doch auch

Code: Select all

{content_image urlonly='true' block='Headerimage'  label='Headerimage' dir='images/backgrounds' assign='imagevar'}
auch direkt hinter Babel aufrufen - damit sollte die Variable doch im Stylesheet zur Verfügung stehen ...
nicmare
Power Poster
Power Poster
Posts: 1150
Joined: Sat Aug 25, 2007 9:55 am
Location: Berlin

Re: simple IF Abfrage

Post by nicmare »

ändert auch nichts! immer das selbe. sobald die seite zwischengespeichert ist, gehts erst. ändert man was, kommt der fehler
cyberman

Re: simple IF Abfrage

Post by cyberman »

Welche CMSms-Version verwendest du denn?

Grund meiner Frage ist der, dass der neue Tag {cms_stylesheet} das Parsen von Smarty-Daten innerhalb der CSS unterstützt und somit eigentlich für die Lösung deines Problems geeignet sein sollte.
nicmare
Power Poster
Power Poster
Posts: 1150
Joined: Sat Aug 25, 2007 9:55 am
Location: Berlin

Re: simple IF Abfrage

Post by nicmare »

gezwungenermaßen 1.6.8 da der Kundenserver-Admin meint, man könne keine neuere PHP Version auf nem Linuxserver installieren (gäbe es angeblich noch nicht)  >:(
cyberman

Re: simple IF Abfrage

Post by cyberman »

nicmare wrote: der Kundenserver-Admin meint, man könne keine neuere PHP Version auf nem Linuxserver installieren
Auf einem Linux-Server oder auf SEINEM Linux-Server?

Bin zwar kein Linux-Profi, aber da verarscht er dich - schau einfach mal hier

http://www.apachefriends.org/de/xampp-linux.html

XAMPP Linux 1.7.3a - PHP 5.3.1

Hmm, hilft dir aber erst mal nicht weiter ... was meinst du eigentlich mit "beim Zwischenspeichern geht es, aber nach einer erneuten Bearbeitung gibt es einen Fehler"?

Lass dir doch einfach mal die für CSS gedachte Variable sichbar ausgeben. Lässt sich da ein Unterschied feststellen (vorher/nachher)?

Denn der Fehler spräche ja dafür, dass sich an der Variable etwas ändert ...
Last edited by cyberman on Wed Nov 03, 2010 4:31 pm, edited 1 time in total.
nicmare
Power Poster
Power Poster
Posts: 1150
Joined: Sat Aug 25, 2007 9:55 am
Location: Berlin

Re: simple IF Abfrage

Post by nicmare »

hmm, ich bin mir sicher dass du die funktion kennst!!!

sobald die aus ist, kommt der fehler permanent
Attachments
Bildschirmfoto 2010-11-03 um 17.35.47.png
cyberman

Re: simple IF Abfrage

Post by cyberman »

Und das ist noch die originale 1.6.8 (keine Hacks an der index.php o.ä.)?
nicmare
Power Poster
Power Poster
Posts: 1150
Joined: Sat Aug 25, 2007 9:55 am
Location: Berlin

Re: simple IF Abfrage

Post by nicmare »

ja klar
cyberman

Re: simple IF Abfrage

Post by cyberman »

cyberman wrote: Grund meiner Frage ist der, dass der neue Tag {cms_stylesheet} das Parsen von Smarty-Daten innerhalb der CSS unterstützt und somit eigentlich für die Lösung deines Problems geeignet sein sollte.
Du könntest als Ersatz evtl. dies verwenden

http://dev.cmsmadesimple.org/projects/smartstylesheet
nicmare
Power Poster
Power Poster
Posts: 1150
Joined: Sat Aug 25, 2007 9:55 am
Location: Berlin

Re: simple IF Abfrage

Post by nicmare »

aha, wie sollte dann die abfrage im stylesheet konkret ablaufen?
cyberman

Re: simple IF Abfrage

Post by cyberman »

Wenn ich es richtig verstanden habe, kannst du den ganzen Kram dann ins Stylesheet packen, nur dass du für die Smarty-Befehle, Tags, etc. anstatt {tag} eben [[tag]] verwendest, so das du mit wrapper { bla } keinen Trouble bekommst ...
Locked

Return to “Smarty-Tipps und -Tricks”