<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>costel-marian.de</title>
	<atom:link href="http://www.costel-marian.de/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://www.costel-marian.de</link>
	<description>Ein weiteres tolles WordPress-Blog</description>
	<lastBuildDate>Mon, 02 Jan 2012 12:42:08 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=abc</generator>
		<item>
		<title>Ein anderes Kontaktformular mit RW (Teil 3)</title>
		<link>http://www.costel-marian.de/?p=328</link>
		<comments>http://www.costel-marian.de/?p=328#comments</comments>
		<pubDate>Mon, 21 Nov 2011 23:41:50 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Allgemein]]></category>

		<guid isPermaLink="false">http://www.costel-marian.de/?p=328</guid>
		<description><![CDATA[In dem ersten Teil wurde ein Formular erstellt und in dem zweiten Teil mit Forms To Go Lite validiert. Es bleibt jetzt nur das Formular in einer mit RW erstellten Homepage einzubinden. Dafür erstellt man zwei HTML Seiten. Eine für das Formular und eine für die Seite die beim Versenden-Erfolg erscheinen soll. BEIDE SEITEN BEKOMMEN [...]]]></description>
			<content:encoded><![CDATA[<p>In dem <a href="http://www.costel-marian.de/?p=282">ersten Teil</a> wurde ein Formular erstellt und in dem <a href="http://www.costel-marian.de/?p=299">zweiten Teil</a> mit Forms To Go Lite validiert.<br />
Es bleibt jetzt nur das Formular in einer mit RW erstellten Homepage einzubinden.<span id="more-328"></span></p>
<p>Dafür erstellt man zwei HTML Seiten. Eine für das Formular und eine für die Seite die beim Versenden-Erfolg erscheinen soll.<br />
BEIDE SEITEN BEKOMMEN DEN GLEICHEN ORDNERNAMEN. Es heisst dass beide Seiten in dem gleichen Ordner publiziert werden. Als Beispiel könnte man den Ordnernamen <strong>ftglite</strong> wählen (also bei beiden Seiten).<br />
Die Seite die das Formular beinhalten soll wird ftglite.php und die die andere Seite erfolg.html &#8211; siehe das Landing Pages Teil des zweiten Teils. Wie ich schon vorschlug, für die Seite erfolg.html könnte man den Code nehmen:</p>
<pre class="brush: xml;">
&lt;p&gt;Ihre Anfrage wurde erfolgreich versandt.&lt;br /&gt;
Wir werden uns so schnell wie möglich bei Ihnen melden.&lt;/p&gt;
</pre>
<p>und damit ist diese Seite fertig.</p>
<p>Für die Seite des Formulars braucht man das Formular selber kopiert (aus der Datei formular.html) und als Inhalt in die RW-Seite eingefügt zu werden.</p>
<p>In PageInspector in der Kopfzeile/CSS den Code in benutzerdefiniertes CSS-Feld einfügen:</p>
<pre class="brush: css;">
fieldset
{
	float: left;
	clear: left;
	width: 100%;
	margin: 0 0 1.5em 0;
	padding: 0;
	border: 1px solid #BFBAB0;
	background-color: #F2EFE9;
}

legend
{
	margin-left: 1em;
	padding: 0;
	color: #000000;
	font-weight: bold;
}

fieldset ol
{
	padding: 1em 1em 0 1em;
	list-style: none;
	zoom: 1;
}

fieldset li
{
	float: left;
	list-style: none;
	clear: left;
	width: 100%;
	padding-bottom: 1em;
}

label
{
	position: relative;
	float: left;
	width: 10em;
	margin-right: 1em;
}

.fm-req label
{
	font-weight: bold;
}

label strong
{
	position: absolute;
	left: 27em;
	top: 0.2em;
	width: 22em;
	color: #CC0000;
	font-size: 85%;
	font-weight: normal;
	text-transform: uppercase;
}

.fm-req strong
{
	color: #CC0000;
	font-size: 85%;
	font-weight: normal;
	text-transform: uppercase;
}

fieldset.submit
{
	float: none;
	width: auto;
	border-style: none;
	padding-left: 12em;
	background-color: transparent;
	background-image: none;
}
</pre>
<p>Auch in dem PageInspector, diesmal bei Kopfzeile/Kopfzeile in benutzerdefiniertes Kopfzeile-Feld das Skript einfügen:</p>
<pre class="brush: jscript;">
&lt;script type=&quot;text/javascript&quot;&gt;
window.onload=function()
{if(document.getElementById)
{var linkContainer=document.getElementById('fm-intro');var linebreak=linkContainer.appendChild(document.createElement('br'));var toggle=linkContainer.appendChild(document.createElement('a'));toggle.href='#';toggle.appendChild(document.createTextNode(' Optionale Felder verbergen?'));toggle.onclick=function()
{var linkText=this.firstChild.nodeValue;this.firstChild.nodeValue=(linkText==' Optionale Felder verbergen?')?' Optionale Felder anzeigen?':' Optionale Felder verbergen?';var tmp=document.getElementsByTagName('li');for(var i=0;i&lt;tmp.length;i++)
{if(tmp[i].className=='fm-opt')
{tmp[i].style.display=(tmp[i].style.display=='none')?'block':'none';}}
return false;}}}
&lt;/script&gt;
</pre>
<p>In diesem Skript sind die alternativen Links &#8220;Optionale Felder verbergen?&#8221; und &#8220;Optionale Felder anzeigen?&#8221; aus dem oberen Teil des Formulars zu finden.<br />
In dem ersten Teil schrieb ich dass das Formular mit geordneten Listen erzeugt wurde. Die Elementen diesen Listen</p>

<div class="wp_syntax"><div class="code"><pre class="html" style="font-family:monospace;">&lt;li class=&quot;fm-req&quot;&gt; und &lt;li class=&quot;fm-opt&quot;&gt;</pre></div></div>

<p> werden in dem oberen Code so angesprochen</p>
<pre class="brush: jscript;">
var tmp=document.getElementsByTagName('li');
</pre>
<p>Möchte man dem reCaptcha-Formular ein bißchen die Farben &#8220;verblassen&#8221; könnte man in dem PageInspector, weiterhin bei Kopfzeile/Kopfzeile in benutzerdefiniertes Kopfzeile-Feld das Skript einfügen</p>
<pre class="brush: jscript;">
&lt;/script&gt;
&lt;script type= &quot;text/javascript&quot;&gt;
var RecaptchaOptions = {
theme: 'clean'
};
&lt;/script&gt;
</pre>
<p>Das RW-Projekt kann man jetzt speichern und veröffentlichen. Nach dem Veröffentlichen MÜSSEN jetzt beide Dateien ftglite.php und erfolg.html in dem Ordner ftglite sich befinden! In diesem Ordner MUSS MAN jetzt die Datei submit.php (von Forms To Go erzeugt) UND recaptchalib.php HOCHLADEN. Dafür kann man <a href="http://cyberduck.ch/">Cyberduck</a> benutzen.</p>
<p>&#8220;Das&#8221; ist aber alles!<br />
Viel Erfolg!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.costel-marian.de/?feed=rss2&#038;p=328</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ein anderes Kontaktformular mit RW (Teil 2)</title>
		<link>http://www.costel-marian.de/?p=299</link>
		<comments>http://www.costel-marian.de/?p=299#comments</comments>
		<pubDate>Mon, 21 Nov 2011 23:41:41 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Allgemein]]></category>

		<guid isPermaLink="false">http://www.costel-marian.de/?p=299</guid>
		<description><![CDATA[1. Die Validierung des Formulars in Forms To Go Also das Formular aus dem ersten Teil kopieren und als einer Textdatei mit dem Namen formular.html in einem Ordner speichern. Dann auf der Seite http://www.google.com/recaptcha registrieren und eine Key für das Domain wo das Formular sich befinden wird erstellen. Die erhaltene &#8220;Private key&#8221; in dem Formular [...]]]></description>
			<content:encoded><![CDATA[<p><strong>1. Die Validierung des Formulars in Forms To Go</strong><br />
Also das Formular aus dem <a href="http://www.costel-marian.de/?p=282">ersten Teil</a> kopieren und als einer Textdatei mit dem Namen formular.html in einem Ordner speichern.</p>
<p>Dann auf der Seite http://www.google.com/recaptcha registrieren und eine Key für das Domain wo das Formular sich befinden wird <a href="https://www.google.com/recaptcha/admin/create">erstellen</a>.<span id="more-299"></span><br />
Die erhaltene &#8220;Private key&#8221; in dem Formular statt YOUR_PUBLIC_KEY in dem Teil austauschen:</p>
<pre class="brush: xml;">
&lt;?php
	require_once('recaptchalib.php');
	$publickey = &quot;YOUR_PUBLIC_KEY&quot;; // you got this from the signup page
	echo recaptcha_get_html($publickey);
?&gt;
</pre>
<p>und wieder die Datei formular.html speichern.</p>
<p>Die Datei <a href="http://www.bebosoft.com/downloads/formstogo/FormsToGoLite.dmg">FormsToGoLite.dmg</a> runterladen und installieren.<br />
Aus dem Ordner Forms To Go Lite das Programm Forms To Go Lite starten.</p>
<div style="width: 48%; float: left;">In das erschienene &#8220;Forms To Go Lite&#8221;_Fenster<br />
</p><div style="text-align:center; float: left"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss024.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss024.jpg" alt="Forms_To_Go_LiteSchnappschuss024.jpg" title="Forms_To_Go_LiteSchnappschuss024.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<div style="margin-left: 52%;">die Datei formular.html verschieben<br />
</p><div style="text-align:center; float: left"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss025.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss025.jpg" alt="Forms_To_Go_LiteSchnappschuss025.jpg" title="Forms_To_Go_LiteSchnappschuss025.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<div style="clear: both;"></div>
<p>Zuerst muss man die Pflichtfelder und deren Meldungen einstellen. Die Pflichtfelder sind in dem Formular mit der Klasse</p>

<div class="wp_syntax"><div class="code"><pre class="html" style="font-family:monospace;">class=&quot;fm-req&quot;</pre></div></div>

<p>erzeugt.<br />
Es gibt also die Felder &#8220;Vorname&#8221;, &#8220;Familienname&#8221;, &#8220;Ort&#8221;, die Frage nach Updates, &#8220;Betreff&#8221; und &#8220;Kommentar&#8221; als Pflichtfelder. Möchte man andere Felder auch als Pflichtfelder erzeugen (zum Beispiel &#8220;Handy&#8221;) dann wird der Code</p>
<pre class="brush: xml;">
&lt;li class=&quot;fm-opt&quot;&gt;
	&lt;label for=&quot;fm-handy&quot;&gt;
		Handy:
	&lt;/label&gt;
	&lt;input id=&quot;fm-handy&quot; name=&quot;handy&quot; placeholder=&quot;Ihre Handynummer&quot; type=&quot;text&quot; /&gt;
&lt;/li&gt;
</pre>
<p>geändert in dem Code:</p>
<pre class="brush: xml;">
&lt;li class=&quot;fm-req&quot;&gt;
	&lt;label for=&quot;fm-handy&quot;&gt;
		Handy:
		&lt;strong&gt;&lt;!--ERRORMSG:handy--&gt;&lt;/strong&gt;
	&lt;/label&gt;
	&lt;input id=&quot;fm-handy&quot; name=&quot;handy&quot; placeholder=&quot;Ihre Handynummer&quot; type=&quot;text&quot; /&gt;
&lt;/li&gt;
</pre>
<p>Wie man sieht, die Klasse der Listeneintrages wurde aus fm-opt in fm-req geändert und in dem label, hinter der Beschriftung des Feldes kommt eine &#8220;maskierte&#8221; Meldung ERRORMSG mit dem name des inputs. Die spätere CSS-Formatierung in</p>

<div class="wp_syntax"><div class="code"><pre class="html" style="font-family:monospace;">&lt;strong&gt;&lt;/strong&gt;</pre></div></div>

<p><strong>wird die Meldung (die gleich in Forms To Go erstellt wird) NUR erscheinen lassen wenn das Feld nicht ausgefült wird.</p>
<p>Zuerst die Spam-Roboter &#8220;Falle&#8221;:</p>
<div style="width: 48%; float: left;">dem Feld spam &#8220;Number of characters&#8221; als Validierung vergeben<br />
</p><div style="text-align:center; float: left"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss001.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss001.jpg" alt="Forms_To_Go_LiteSchnappschuss001.jpg" title="Forms_To_Go_LiteSchnappschuss001.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<div style="margin-left: 52%;">da für Länge die Null gewählt wurde, darf dieses Feld NICHTS enthalten.<br />
</p><div style="text-align:center; float: left"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss002.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss002.jpg" alt="Forms_To_Go_LiteSchnappschuss002.jpg" title="Forms_To_Go_LiteSchnappschuss002.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<div style="clear: both;">Als Fehlermeldung käme &#8220;Bitte ignorieren Sie das folgende Feld. Es wurde eingefügt, um Spam zu erkennen.&#8221; o.ä.</div>
<p>Dann das &#8220;Vorname&#8221; Feld:</p>
<div style="width: 48%; float: left;"></p><div style="text-align:center; float: left"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss003.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss003.jpg" alt="Forms_To_Go_LiteSchnappschuss003.jpg" title="Forms_To_Go_LiteSchnappschuss003.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<div style="margin-left: 52%;"></p><div style="text-align:center; float: left"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss004.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss004.jpg" alt="Forms_To_Go_LiteSchnappschuss004.jpg" title="Forms_To_Go_LiteSchnappschuss004.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<div style="clear: both;">Als Fehlermeldung käme &#8220;Bitte Ihren Vorname eingeben!&#8221; o.ä.</div>
<p>Das &#8220;Familienname&#8221; Feld:</p>
<div style="width: 48%; float: left;"></p><div style="text-align:center; float: left"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss005.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss005.jpg" alt="Forms_To_Go_LiteSchnappschuss005.jpg" title="Forms_To_Go_LiteSchnappschuss005.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<div style="margin-left: 52%;"></p><div style="text-align:center; float: left"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss006.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss006.jpg" alt="Forms_To_Go_LiteSchnappschuss006.jpg" title="Forms_To_Go_LiteSchnappschuss006.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<div style="clear: both;">Als Fehlermeldung käme &#8220;Bitte Ihren Familienname eingeben!&#8221; o.ä.</div>
<p>Das &#8220;Ort&#8221; Feld:</p>
<div style="width: 48%; float: left;"></p><div style="text-align:center; float: left"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss007.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss007.jpg" alt="Forms_To_Go_LiteSchnappschuss007.jpg" title="Forms_To_Go_LiteSchnappschuss007.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<div style="margin-left: 52%;"></p><div style="text-align:center; float: left"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss008.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss008.jpg" alt="Forms_To_Go_LiteSchnappschuss008.jpg" title="Forms_To_Go_LiteSchnappschuss008.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<div style="clear: both;">Als Fehlermeldung käme &#8220;Bitte Ihren Wohnort eingeben!&#8221; o.ä.</div>
<p>Das &#8220;Telefon&#8221; Feld:</p>
<div style="width: 48%; float: left;"></p><div style="text-align:center; float: left"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss009.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss009.jpg" alt="Forms_To_Go_LiteSchnappschuss009.jpg" title="Forms_To_Go_LiteSchnappschuss009.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<div style="margin-left: 52%;"></p><div style="text-align:center; float: left"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss010.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss010.jpg" alt="Forms_To_Go_LiteSchnappschuss010.jpg" title="Forms_To_Go_LiteSchnappschuss010.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<div style="clear: both;">Als Fehlermeldung käme &#8220;Bitte Ihre Telefonnummer eingeben!&#8221; o.ä.</div>
<p>Das &#8220;Email&#8221; Feld:</p>
<div style="width: 48%; float: left;"></p><div style="text-align:center; float: left"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss011.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss011.jpg" alt="Forms_To_Go_LiteSchnappschuss011.jpg" title="Forms_To_Go_LiteSchnappschuss011.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<div style="margin-left: 52%;"></p><div style="text-align:center; float: left"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss012.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss012.jpg" alt="Forms_To_Go_LiteSchnappschuss012.jpg" title="Forms_To_Go_LiteSchnappschuss012.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<div style="clear: both;">Als Fehlermeldung käme &#8220;Bitte eine gültige E-Mail Adresse eingeben!&#8221; o.ä.</div>
<p>Das &#8220;newsopt&#8221; Feld:</p>
<div style="width: 48%; float: left;"></p><div style="text-align:center; float: left"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss013.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss013.jpg" alt="Forms_To_Go_LiteSchnappschuss013.jpg" title="Forms_To_Go_LiteSchnappschuss013.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<div style="margin-left: 52%;"></p><div style="text-align:center; float: left"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss014.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss014.jpg" alt="Forms_To_Go_LiteSchnappschuss014.jpg" title="Forms_To_Go_LiteSchnappschuss014.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<div style="clear: both;"></div>
<p>Das &#8220;Betreff&#8221; Feld:</p>
<div style="width: 48%; float: left;"></p><div style="text-align:center; float: left"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss015.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss015.jpg" alt="Forms_To_Go_LiteSchnappschuss015.jpg" title="Forms_To_Go_LiteSchnappschuss015.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<div style="margin-left: 52%;"></p><div style="text-align:center; float: left"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss016.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss016.jpg" alt="Forms_To_Go_LiteSchnappschuss016.jpg" title="Forms_To_Go_LiteSchnappschuss016.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<div style="clear: both;">Als Fehlermeldung käme &#8220;Bitte einen Betreff eingeben!&#8221; o.ä.</div>
<p>Das &#8220;Betreff&#8221; Feld:</p>
<div style="width: 48%; float: left;"></p><div style="text-align:center; float: left"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss017.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss017.jpg" alt="Forms_To_Go_LiteSchnappschuss017.jpg" title="Forms_To_Go_LiteSchnappschuss017.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<div style="margin-left: 52%;"></p><div style="text-align:center; float: left"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss018.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss018.jpg" alt="Forms_To_Go_LiteSchnappschuss018.jpg" title="Forms_To_Go_LiteSchnappschuss018.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<div style="clear: both;">Als Fehlermeldung käme &#8220;Bitte die Anfrage eingeben!&#8221; o.ä.</div>
<p>Das &#8220;Betreff&#8221; Feld:</p>
<div style="width: 48%; float: left;"></p><div style="text-align:center; float: left"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss017.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss017.jpg" alt="Forms_To_Go_LiteSchnappschuss017.jpg" title="Forms_To_Go_LiteSchnappschuss017.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<div style="margin-left: 52%;"></p><div style="text-align:center; float: left"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss018.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss018.jpg" alt="Forms_To_Go_LiteSchnappschuss018.jpg" title="Forms_To_Go_LiteSchnappschuss018.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<div style="clear: both;">Als Fehlermeldung käme &#8220;Bitte die Anfrage eingeben!&#8221; o.ä.</div>
<p>Aus dem Menü Settings &#8220;Email to Form&#8217;s Owner&#8230;&#8221; anklicken:</p>
<div style="width: 48%; float: left;">Zuerst bei dem Icon Adresses bei dem Popup &#8220;From&#8221; email anklicken, dann eigenen Namen und die eigene E-Mail-Adresse einfügen<br />
</p><div style="text-align:center; float: left"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss019.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss019.jpg" alt="Forms_To_Go_LiteSchnappschuss019.jpg" title="Forms_To_Go_LiteSchnappschuss019.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<div style="margin-left: 52%;">Bei dem Icon &#8220;Email Body&#8221; #betreff# als Subject einstellen und am Ende der Felderliste die versendet werden soll könnte man noch eingeben:</p>
<pre class="brush: xml;">

-------------------
Datum: #FTG_E_DATE DD/MM/YYYY#
Zeit: #FTG_E_TIME HH:MM:SS 24HRS#
Browser: #FTG_S_HTTP_USER_AGENT#
IP-Adresse: #FTG_S_REMOTE_ADDRESS#
</pre>
<div style="text-align:center; float: left"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss020.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss020.jpg" alt="Forms_To_Go_LiteSchnappschuss020.jpg" title="Forms_To_Go_LiteSchnappschuss020.jpg"  class="cpg-image-thumb"/></a></div></div></div>
<div style="clear: both;"></div>
<p>Aus dem Menü Settings &#8220;Landing Pages&#8221; anklicken:<br />
</p><div style="text-align:center; display: block; margin: auto auto;"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss021.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss021.jpg" alt="Forms_To_Go_LiteSchnappschuss021.jpg" title="Forms_To_Go_LiteSchnappschuss021.jpg"  class="cpg-image-thumb"/></a></div></div><p><br />
Wenn eine Fehlermeldung erzeugt wird (Pflichtfeld nicht ausgefüllt) das Skript, das von Forms To Go erzeugt wird, soll den User auf die selbe Seite schicken allerdings jetzt sollen die Fehlermeldungen angezeigt.<br />
In RW, die Seite des Formulars muss einen Dateinamen in Pageinspector haben, so dass für Error muss in dem Embed-Feld der Dateiname der Seite aus dem Pageinspector von RW (hier ftglite.php &#8211; die .php Enddung MUSS auch genommen werden da in dem Formular PHP Code sich befindet).<br />
Wurde das Formular erfolgreich versendet, dann soll eine Seite angezeigt werden. Ich schlage vor in RW eine HTML Seite die IN DEM GLEICHEN ORDNER mit der Formular-Seite und die erfolg.html heisst zu erstellen und sie hier in dem Embed-Feld von Success einzugeben.<br />
Als Inhalt der Seite könnte man den Code eingeben:</p>
<pre class="brush: xml;">
&lt;p&gt;Ihre Anfrage wurde erfolgreich versandt.&lt;br /&gt;
Wir werden uns so schnell wie möglich bei Ihnen melden.&lt;/p&gt;
</pre>
<p>Aus dem Menü Settings &#8220;reCAPTCHA&#8230;&#8221; anklicken:<br />
</p><div style="text-align:center; display: block; margin: auto auto;"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/normal_Forms_To_Go_LiteSchnappschuss022.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss022.jpg" alt="Forms_To_Go_LiteSchnappschuss022.jpg" title="Forms_To_Go_LiteSchnappschuss022.jpg"  class="cpg-image-thumb"/></a></div></div><p><br />
Die Private Key und die Fehlermeldung &#8220;Der eingegebene Text stimmt nicht mit dem angezeigten überein.&#8221; o.ä. eingeben.</p>
<p>Diese Einstellungsdatei soll jetzt in dem gleichen Ordner mit dem formular.html gespeichert werden (z.B. als formular.ftg).</p>
<p>Es bleibt jetzt de PHP Skript-Datei zu erzeugen. Aus dem Menü Script &#8220;Create PHP Script&#8230;&#8221; anklicken:<br />
</p><div style="text-align:center; display: block; margin: auto auto;"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/Forms_To_Go_LiteSchnappschuss023.jpg" rel="lightbox[299]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-formstogo/thumb_Forms_To_Go_LiteSchnappschuss023.jpg" alt="Forms_To_Go_LiteSchnappschuss023.jpg" title="Forms_To_Go_LiteSchnappschuss023.jpg"  class="cpg-image-thumb"/></a></div></div><p><br />
Da das Formular durch action=&#8221;submit.php&#8221; in dem Code:</p>
<pre class="brush: xml;">
&lt;form id=&quot;fm-form&quot; method=&quot;post&quot; action=&quot;submit.php&quot; name=&quot;fm-form&quot;&gt;
</pre>
<p>eine Datei submit.php erwartet (wenn alles &#8220;glatt&#8221; geht), MUSS diese Skript-Datei die jetzt erzeugt wird auch <strong>submit.php</strong> heissen. Die Datei kann in dem gleichen Ordner mit der Datei formular.html und formular.ftg gespeichert werden.</p>
<p>Von <a href="http://code.google.com/p/recaptcha/downloads/list?q=label:phplib-Latest">reCAPTCHA Downloads</a> die letzte Version von recaptchalib.php runterladen und in dem gleichen Ordner mit den anderen Dateien (formular.html, formular.ftg, submit.php) entpacken.</p>
<p>In dem <a href="http://www.costel-marian.de/?p=328">letzten Teil</a> wird das Formular eingebunden.</p>
<div class="clearer">&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://www.costel-marian.de/?feed=rss2&#038;p=299</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ein anderes Kontaktformular mit RW (Teil 1)</title>
		<link>http://www.costel-marian.de/?p=282</link>
		<comments>http://www.costel-marian.de/?p=282#comments</comments>
		<pubDate>Mon, 21 Nov 2011 23:41:30 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Rapidweaver]]></category>

		<guid isPermaLink="false">http://www.costel-marian.de/?p=282</guid>
		<description><![CDATA[Das Kontaktformular von RW beinhaltet leider kein Captcha. Da nicht alle User das excellente FormLoom kaufen wollen, man könnte die freie Lite Version des Forms To Go-Programm benutzen die reCAPTCHA unterstützt. Sicherlich es ist eine ganz andere Arbeit so ein Formular zu erstellen als würde man das Kontaktformular-Plugin von RW benutzen. Das Plugin erzeugt automatisch [...]]]></description>
			<content:encoded><![CDATA[<p>Das Kontaktformular von RW beinhaltet leider kein Captcha. Da nicht alle User das excellente FormLoom kaufen wollen, man könnte die <a rel="external" href="http://www.bebosoft.com/products/formstogo/overview">freie Lite Version</a> des Forms To Go-Programm benutzen die reCAPTCHA unterstützt.<br />
Sicherlich es ist eine ganz andere Arbeit so ein Formular zu erstellen als würde man das Kontaktformular-Plugin von RW benutzen. Das Plugin erzeugt automatisch nicht nur die Felder und deren Namen auf der Seite sondern auch die mailer.php Datei die für das Versenden des Formular zuständig ist.</p>
<p>Forms To Go (die PHP-Version) erzeugt gerade diese PHP Datei die zuständig für die Validierung und das Versenden des Formulars. Das Formular selbst muss man selber erstellen.<span id="more-282"></span><br />
In diesen drei Artikel versuche ich ein <a rel="external" href="http://costel-marian.de/rw-seiten/ftglite/ftglite.php">&#8220;vollständigen&#8221; Kontaktformular</a> zu erstellen und mit Hilfe von Forms To Go in RW einzubinden.</p>
<p><strong>1. Formulare definieren</strong><br />
Zuerst ein Formular wird definiert durch:</p>
<pre class="brush: xml;">
&lt;form&gt;
&lt;!-- hier folgen die Formularelemente --&gt;
&lt;/form&gt;
</pre>
<p>Für das Absenden des Formulars ist die Datei zuständig die in dem Pflichtatribut action aus dem</p>
<form> aufgeführt wird:</p>
<pre class="brush: xml;">
&lt;form action=&quot;/cgi-bin/versenden.pl&quot;&gt;
&lt;form action=&quot;../../cgi-bin/senden.cgi&quot;&gt;
&lt;form action=&quot;kontakt.php&quot;&gt;
</pre>
<p>Eine der zwei möglichen Übertragungsmethoden (method=&#8221;get&#8221; oder method=&#8221;post&#8221;) muss sich in der<br />
befinden:</p>
<pre class="brush: xml;">
&lt;form action=&quot;/cgi-bin/versenden.pl&quot; method=&quot;post&quot;&gt;
&lt;!-- hier folgen die Formularelemente --&gt;
&lt;/form&gt;
</pre>
<p>Weitere Erklärungen: <a rel="external" href="http://de.selfhtml.org/html/formulare/definieren.htm">Formulare definieren</a></p>
<p><strong>2. Eingabefelder und Bereiche</strong><br />
Ein Feld wird durch einem</p>

<div class="wp_syntax"><div class="code"><pre class="html" style="font-family:monospace;">&lt;input /&gt;</pre></div></div>

<p> definiert:</p>
<pre class="brush: xml;">
&lt;input name=&quot;vorname&quot; type=&quot;text&quot;&gt;
</pre>
<p>Soll dieses Feld auch eine Beschriftung bekommen, dann wird diese Beschriftung durch das label-Tag erzeugt:</p>
<pre class="brush: xml;">
&lt;label&gt;Vorname: &lt;/label&gt;&lt;input name=&quot;vorname&quot; type=&quot;text&quot;&gt;
</pre>
<p>Mehrere Felder kann man mit</p>

<div class="wp_syntax"><div class="code"><pre class="html" style="font-family:monospace;">&lt;fieldset&gt;</pre></div></div>

<p> gruppieren:</p>
<pre class="brush: xml;">
&lt;fieldset&gt;
	&lt;legend&gt;Persönliche Daten&lt;/legend&gt;
	&lt;div
		&lt;label for=&quot;vorname&quot;&gt;
			Vorname:
		&lt;/label&gt;
		&lt;input name=&quot;vorname&quot; placeholder=&quot;Ihr Vorname&quot; type=&quot;text&quot; /&gt;
	&lt;/div&gt;
	&lt;div&gt;
		&lt;label for=&quot;familienname&quot;&gt;
			Familienname:
		&lt;/label&gt;
		&lt;input name=&quot;familienname&quot; placeholder=&quot;Ihr Nachname&quot; type=&quot;text&quot; /&gt;
	&lt;/div&gt;
&lt;/fieldset&gt;
&lt;fieldset&gt;
	&lt;legend&gt;Addresse&lt;/legend&gt;
	&lt;div&gt;
		&lt;label for=&quot;strasse&quot;&gt;
			Straße:
		&lt;/label&gt;
		&lt;input name=&quot;strasse&quot; placeholder=&quot;Ihre Straße&quot; type=&quot;text&quot; /&gt;
	&lt;/div&gt;
	&lt;li class=&quot;fm-opt&quot;&gt;
		&lt;label for=&quot;plz&quot;&gt;
			PLZ:
		&lt;/label&gt;
		&lt;input name=&quot;plz&quot; placeholder=&quot;12345&quot; type=&quot;text&quot; /&gt;
	&lt;/div&gt;
	&lt;div&gt;
		&lt;label for=&quot;ort&quot;&gt;Ort:
		&lt;/label&gt;
	&lt;input name=&quot;ort&quot; placeholder=&quot;Ihre Stadt&quot; type=&quot;text&quot; /&gt;
	&lt;/div&gt;
	&lt;div&gt;
		&lt;label for=&quot;land&quot;&gt;
			Land:
		&lt;/label&gt;
		&lt;input name=&quot;land&quot; placeholder=&quot;Ihr Land&quot; type=&quot;text&quot; /&gt;
	&lt;/div&gt;
&lt;/fieldset&gt;
</pre>
<p>Mit &#8220;etwas&#8221; CSS bekäme so ein Formular <a rel="external" href="http://costel-marian.de/rw-seiten/ftglite/ftglite.php">ein Aussehen</a> <img src='http://www.costel-marian.de/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p><a rel="external" href="http://de.selfhtml.org/html/formulare/index.htm">Hier</a> bekommt mehr Informationen über Formulare.</p>
<p><strong>3. Das Formular</strong><br />
Aus Seiten wie <a rel="external" href="http://www.alistapart.com/articles/prettyaccessibleforms">Prettier Accessible Forms</a> (<a rel="external" href="http://www.thestyleworks.de/tut-art/pretty_accessible_forms.shtml">hier</a> die deutsche Übersetzung) oder <a rel="external" href="http://www.sitepoint.com/fancy-form-design-css-2/">Fancy Form Design Using CSS Article</a> habe ich die Formatierung der Feldgruppen mit einer geordneten Liste übernommen.</p>
<p>Das Formular beinhaltet ein &#8220;Fake&#8221;-Feld für die Spam-Roboter. Das Feld wird später mit Forms To Go so validiert dass dadrin nichts zu befinden sein muss (der Roboter &#8220;weiss&#8221; davon nichts und wird versuchen etwas in dem Feld zu schreiben. Das wird aber von der Validierung nicht durchgelassen.)</p>
<p>Das Formular besitzt durch</p>
<pre class="brush: xml;">
&lt;strong&gt;&lt;!--ERRORMSG--&gt;&lt;/strong&gt;
</pre>
<p>auch Platzhalter für die Meldungen die erscheinen sollen wenn ein Feld nicht erwartungsgemäß ausgefüllt/nicht ausgefüllt wurde.</p>
<p>In Kombination mit dem Paragraph:</p>
<pre class="brush: xml;">
&lt;p id=&quot;fm-intro&quot;&gt;
	Die &lt;strong&gt;fett&lt;/strong&gt; markierten Felder sind Pflichtfelder.
&lt;/p&gt;
</pre>
<p>und ein JavaScript das später in der RW-Seite eingefügt wird kann man die optionalen Felder verbergen.</p>
<p>Das Formular besitzt mehrere Feldertypen und durch die zwei Klassen</p>

<div class="wp_syntax"><div class="code"><pre class="html" style="font-family:monospace;">class=&quot;fm-req&quot; und class=&quot;fm-opt&quot;</pre></div></div>

<p> kann man eigentlich ALLES erstellen was auch das Kontaktformular-Plugin erstellen kann. LEIDER aber die Lite-Version von Forms To Go KANN NICHT das Uploaden einer Datei validieren. Dafür müsste man doch die 30$ für die PHP-Version bezahlen.</p>
<p>Hier also ist das Formular:</p>
<pre class="brush: xml;">
&lt;h3&gt;
	Formular Layout
&lt;/h3&gt;
&lt;div id=&quot;formular&quot;&gt;
	&lt;!-- Um 'Optionale Felder verbergen' Function anzuzeigen muss ein Absatz p id=&quot;fm-intro&quot; eingefügt werden --&gt;
	&lt;p id=&quot;fm-intro&quot;&gt;
		Die &lt;strong&gt;fett&lt;/strong&gt; markierten Felder sind Pflichtfelder.
	&lt;/p&gt;
	&lt;form id=&quot;fm-form&quot; method=&quot;post&quot; action=&quot;submit.php&quot; name=&quot;fm-form&quot;&gt;
		&lt;div style=&quot;display:none;visibility:hidden;&quot;&gt;
			&lt;label&gt;
				Spam:
				&lt;strong&gt;&lt;!--ERRORMSG:spam--&gt;&lt;/strong&gt;
			&lt;/label&gt;
			&lt;input type=&quot;text&quot; name=&quot;spam&quot; size=&quot;1&quot; value=&quot;&quot; /&gt;
		&lt;/div&gt;
		&lt;fieldset&gt;
			&lt;legend&gt;Persönliche Daten&lt;/legend&gt;
			&lt;ol&gt;
				&lt;li class=&quot;fm-req&quot;&gt;
					&lt;label for=&quot;fm-vorname&quot;&gt;
						Vorname:
						&lt;strong class=&quot;required&quot;&gt;&lt;!--ERRORMSG:vorname--&gt;&lt;/strong&gt;
					&lt;/label&gt;
					&lt;input name=&quot;vorname&quot; id=&quot;fm-forname&quot; placeholder=&quot;Ihr Vorname&quot; type=&quot;text&quot; /&gt;
				&lt;/li&gt;
				&lt;li class=&quot;fm-req&quot;&gt;
					&lt;label for=&quot;fm-familienname&quot;&gt;
						Familienname:
						&lt;strong&gt;&lt;!--ERRORMSG:familienname--&gt;&lt;/strong&gt;
					&lt;/label&gt;
					&lt;input name=&quot;familienname&quot; id=&quot;fm-familienname&quot; placeholder=&quot;Ihr Nachname&quot; type=&quot;text&quot; /&gt;
				&lt;/li&gt;
			&lt;/ol&gt;
		&lt;/fieldset&gt;
		&lt;fieldset&gt;
			&lt;legend&gt;Addresse&lt;/legend&gt;
			&lt;ol&gt;
				&lt;li class=&quot;fm-opt&quot;&gt;
					&lt;label for=&quot;fm-strasse&quot;&gt;
						Straße:
					&lt;/label&gt;
					&lt;input id=&quot;fm-strasse&quot; name=&quot;strasse&quot; placeholder=&quot;Ihre Straße&quot; type=&quot;text&quot; /&gt;
				&lt;/li&gt;
				&lt;li class=&quot;fm-opt&quot;&gt;
					&lt;label for=&quot;fm-plz&quot;&gt;
						PLZ:
					&lt;/label&gt;
					&lt;input id=&quot;fm-plz&quot; name=&quot;plz&quot; placeholder=&quot;12345&quot; type=&quot;text&quot; /&gt;
				&lt;/li&gt;
				&lt;li class=&quot;fm-req&quot;&gt;
					&lt;label for=&quot;fm-ort&quot;&gt;
						Ort:
						&lt;strong&gt;&lt;!--ERRORMSG:ort--&gt;&lt;/strong&gt;
					&lt;/label&gt;
					&lt;input id=&quot;fm-ort&quot; name=&quot;ort&quot; placeholder=&quot;Ihre Stadt&quot; type=&quot;text&quot; /&gt;
				&lt;/li&gt;
				&lt;li class=&quot;fm-opt&quot;&gt;
					&lt;label for=&quot;fm-state&quot;&gt;
						Bundesland:
					&lt;/label&gt;
					&lt;select id=&quot;fm-state&quot; name=&quot;state&quot;&gt;
						&lt;option value=&quot;&quot; selected=&quot;selected&quot;&gt;
							Wählen Sie ein Bundesland
						&lt;/option&gt;
						&lt;option value=&quot;BW&quot;&gt;
							Baden-Würtemberg
						&lt;/option&gt;
						&lt;option value=&quot;BY&quot;&gt;
							Bayern
						&lt;/option&gt;
						&lt;option value=&quot;B&quot;&gt;
							Berlin
						&lt;/option&gt;
						&lt;option value=&quot;BB&quot;&gt;
							Brandenburg
						&lt;/option&gt;
						&lt;option value=&quot;HB&quot;&gt;
							Bremen
						&lt;/option&gt;
						&lt;option value=&quot;HH&quot;&gt;
							Hamburg
						&lt;/option&gt;
						&lt;option value=&quot;HS&quot;&gt;
							Hessen
						&lt;/option&gt;
						&lt;option value=&quot;MV&quot;&gt;
							Mecklenburg-Vorpommern
						&lt;/option&gt;
						&lt;option value=&quot;NS&quot;&gt;
							Niedersachsen
						&lt;/option&gt;
						&lt;option value=&quot;NRW&quot;&gt;
							Nordrhein-Westfalen
						&lt;/option&gt;
						&lt;option value=&quot;RLP&quot;&gt;
							Rheinland-Pfalz
						&lt;/option&gt;
						&lt;option value=&quot;SAR&quot;&gt;
							Saarland
						&lt;/option&gt;
						&lt;option value=&quot;SX&quot;&gt;
							Sachsen
						&lt;/option&gt;
						&lt;option value=&quot;SXA&quot;&gt;
							Sachsen-Anhalt
						&lt;/option&gt;
						&lt;option value=&quot;SH&quot;&gt;
							Schleswig-Holstein
						&lt;/option&gt;
						&lt;option value=&quot;TH&quot;&gt;
							Thüringen
						&lt;/option&gt;
					&lt;/select&gt;
				&lt;/li&gt;
				&lt;li class=&quot;fm-opt&quot;&gt;
					&lt;label for=&quot;fm-land&quot;&gt;
						Land:
					&lt;/label&gt;
					&lt;input id=&quot;fm-land&quot; name=&quot;land&quot; placeholder=&quot;Ihr Land&quot; type=&quot;text&quot; /&gt;
				&lt;/li&gt;
			&lt;/ol&gt;
		&lt;/fieldset&gt;
		&lt;fieldset&gt;
			&lt;legend&gt;Kontakt Informationen&lt;/legend&gt;
			&lt;ol&gt;
				&lt;li class=&quot;fm-req&quot;&gt;
					&lt;label for=&quot;fm-telefon&quot;&gt;
						Telefon:
						&lt;strong&gt;&lt;!--ERRORMSG:telefon--&gt;&lt;/strong&gt;
					&lt;/label&gt;
					&lt;input id=&quot;fm-telefon&quot; name=&quot;telefon&quot; placeholder=&quot;Ihre Telefonnummer&quot; type=&quot;text&quot; title=&quot;Geben Sie die Telefonnummer in xxx-xxx-xxxx-Format&quot; /&gt;
				&lt;/li&gt;
				&lt;li class=&quot;fm-opt&quot;&gt;
					&lt;label for=&quot;fm-fax&quot;&gt;
						Fax:
					&lt;/label&gt;
					&lt;input id=&quot;fm-fax&quot; name=&quot;fax&quot; placeholder=&quot;Ihre Faxnummer&quot; type=&quot;text&quot; title=&quot;Geben Sie die Faxnummer in xxx-xxx-xxxx-Format&quot; /&gt;
				&lt;/li&gt;
				&lt;li class=&quot;fm-opt&quot;&gt;
					&lt;label for=&quot;fm-handy&quot;&gt;
						Handy:
					&lt;/label&gt;
					&lt;input id=&quot;fm-handy&quot; name=&quot;handy&quot; placeholder=&quot;Ihre Handynummer&quot; type=&quot;text&quot; /&gt;
				&lt;/li&gt;
				&lt;li class=&quot;fm-req&quot;&gt;
					&lt;label for=&quot;fm-email&quot;&gt;
						E-Mail:
						&lt;strong&gt;&lt;!--ERRORMSG:email--&gt;&lt;/strong&gt;
					&lt;/label&gt;
					&lt;input id=&quot;fm-email&quot; name=&quot;email&quot; placeholder=&quot;Ihre E-Mail-Adresse&quot; type=&quot;text&quot; tabindex=&quot;&quot; /&gt;
				&lt;/li&gt;
				&lt;li class=&quot;fm-opt&quot;&gt;
					&lt;label for=&quot;fm-url&quot;&gt;
						Homepage:
					&lt;/label&gt;
					&lt;input id=&quot;fm-url&quot; name=&quot;url&quot; placeholder=&quot;Ihre Homepage&quot; type=&quot;text&quot; /&gt;
				&lt;/li&gt;
				&lt;li class=&quot;fm-multi&quot;&gt;
					&lt;div class=&quot;fm-opt&quot;&gt;
						&lt;p&gt;
							Möchten Sie über die zukünftige Updates informiert werden?
						&lt;/p&gt;
						&lt;label for=&quot;fm-newsopt-ja&quot;&gt;&lt;input name=&quot;newsopt&quot; type=&quot;radio&quot; id=&quot;fm-newsopt-ja&quot; value=&quot;ja&quot; checked=&quot;checked&quot;&gt; Ja&lt;/label&gt;
						&lt;label for=&quot;fm-newsopt-nein&quot;&gt;&lt;input id=&quot;fm-newsopt-nein&quot; name=&quot;newsopt&quot; type=&quot;radio&quot; value=&quot;nein&quot;&gt; Nein&lt;/label&gt;
					&lt;/div&gt;
				&lt;/li&gt;
			&lt;/ol&gt;
		&lt;/fieldset&gt;
		&lt;fieldset&gt;
			&lt;legend&gt;Kommentar&lt;/legend&gt;
			&lt;ol&gt;
				&lt;li class=&quot;fm-req&quot;&gt;
					&lt;label for=&quot;fm-betreff&quot;&gt;
						Betreff:
						&lt;strong&gt;&lt;!--ERRORMSG:betreff--&gt;&lt;/strong&gt;
					&lt;/label&gt;
					&lt;input id=&quot;fm-betreff&quot; name=&quot;betreff&quot; placeholder=&quot;Betreff&quot; type=&quot;text&quot; /&gt;
				&lt;/li&gt;
				&lt;li class=&quot;fm-req&quot;&gt;
					&lt;label for=&quot;fm-kommentar&quot;&gt;
						Kommentar:
						&lt;strong&gt;&lt;!--ERRORMSG:kommentar--&gt;&lt;/strong&gt;
					&lt;/label&gt;
					&lt;textarea name=&quot;kommentar&quot; cols=&quot;15&quot; rows=&quot;5&quot; id=&quot;fm-kommentar&quot; placeholder=&quot;Ihr Kommentar&quot;&gt;&lt;/textarea&gt;
				&lt;/li&gt;
			&lt;/ol&gt;
		&lt;/fieldset&gt;
		&lt;div class=&quot;fm-req&quot;&gt;
			&lt;strong&gt;&lt;!--ERRORMSG:reCAPTCHA--&gt;&lt;/strong&gt;
			&lt;?php
				require_once('recaptchalib.php');
				$publickey = &quot;YOUR_PUBLIC_KEY&quot;; // you got this from the signup page
				echo recaptcha_get_html($publickey);
			?&gt;
		&lt;/div&gt;
		&lt;div id=&quot;fm-submit&quot; class=&quot;fm-req&quot;&gt;
			&lt;input type=&quot;submit&quot; name=&quot;Submit&quot; id=&quot;submit&quot; value=&quot;Nachricht senden&quot; /&gt;
			&lt;input type=&quot;reset&quot; name=&quot;Clear&quot; id=&quot;clear&quot; value=&quot;Abbrechen&quot; /&gt;
		&lt;/div&gt;
	&lt;/form&gt;
&lt;/div&gt;
</pre>
<p>In dem <a href="http://www.costel-marian.de/?p=299">zweiten Teil</a> werde ich dieses Formular mit Forms To Go validieren und in einer RW-Homepage einbinden</p>
]]></content:encoded>
			<wfw:commentRss>http://www.costel-marian.de/?feed=rss2&#038;p=282</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Implementierung der PHP Applikationen in RW &#8211; phpBB Forum</title>
		<link>http://www.costel-marian.de/?p=72</link>
		<comments>http://www.costel-marian.de/?p=72#comments</comments>
		<pubDate>Tue, 30 Dec 2008 14:43:52 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[RW-Implementierung]]></category>
		<category><![CDATA[Rapidweaver]]></category>

		<guid isPermaLink="false">http://costel-marian.de/wordpress/?p=72</guid>
		<description><![CDATA[Ich wurde öfters nach einer Implementierung des phpBB Forums wie das Test-Forum auf meiner Seite. Ich möchte deswegen hier ein HowTo erstellen. Ich hoffe dass die Schritte in Bild und Schrift genug Informationen geben auch andere Vorlagen zu benutzen. Die schon bestehende Homepage hat erstmal drei Seiten (Home, Kontakt und Impressum): in RW: auf dem [...]]]></description>
			<content:encoded><![CDATA[<p>Ich wurde öfters nach einer Implementierung des phpBB Forums wie das <a rel="external" href="http://costel-marian.de/testforen/phpBB3/index.php">Test-Forum</a> auf meiner Seite.<br />
Ich möchte deswegen hier ein HowTo erstellen. Ich hoffe dass die Schritte in Bild und Schrift genug Informationen geben auch andere Vorlagen zu benutzen.</p>
<p>Die schon bestehende Homepage hat erstmal drei Seiten (Home, Kontakt und Impressum):<span id="more-72"></span></p>
<div style="width: 48%; float: left;">
in RW:<br />
<br />
</p><div style="text-align:center; display: block; margin: auto auto;"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/normal_WP-phpBB-02.jpg" rel="lightbox[72]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/thumb_WP-phpBB-02.jpg" alt="WP-phpBB-02.jpg" title="WP-phpBB-02.jpg"  class="cpg-image-thumb"/></a></div></div><p>
</div>
<div style="margin-left: 52%;">
auf dem Server:<br />
<br />
</p><div style="text-align:center; display: block; margin: auto auto;"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/normal_WP-phpBB-01.jpg" rel="lightbox[72]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/thumb_WP-phpBB-01.jpg" alt="WP-phpBB-01.jpg" title="WP-phpBB-01.jpg"  class="cpg-image-thumb"/></a></div></div><p>
</div>
<div style="clear: both;">und soll das phpBB Forum als Hauptseite.</div>
<p>Ich habe für die Homepage die RW-Vorlage Caribou mit der Vorgabe der Vorlage als Stil benutzt und das Forum soll die Vorlage <a rel="external" href="http://www.phpbb-styles.com/style-xabb-blue.html">xabb Blue</a> bekommen (allerdings ohne Header).</p>
<p><strong>1. Instalation des Forums</strong><br />
Das Komplettpaket der deutschen Version <a rel="external" href="http://www.phpbb.de/downloads/pakete.php?sid=db8cb14730da57f16d75bc63d16d7da0#DeutschePakete-Komplettpaket">runterladen</a> und installieren.<br />
Die Instalation des Forums wurde hier in dem Ordner <em>phpBB3</em> aber man kann den Ordner phpBB3 auch in forum umbenennen. Ob der Name des Ordners eines schon bestehendes Forums umbenannt werden darf weiss ich zur Zeit, aber ich vermute stark dass zumindest die Tabelle <em>phpbb_config</em> der Datenbank geändert werden muss.<br />
<a rel="external" href="http://www.phpbb-styles.com/style-xabb-blue.html">Die xabb Blue Vorlage</a> für phpBB3 runterladen. Die Vorlage benutzt die Farbe blau vorwiegend. Es gibt allerdings auch eine <a rel="external" href="http://www.phpbb-styles.com/style-xabb-green.html">grüne</a> und eine <a rel="external" href="http://www.phpbb-styles.com/style-xabb-red.html">rote</a> Variante.<br />
Und die Vorlage xabb Blue in dem Ordner <em>styles</em> des Forums kopieren:<br />
</p><div style="text-align:center; display: block; margin: auto auto;"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/normal_WP-phpBB-03.jpg" rel="lightbox[72]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/thumb_WP-phpBB-03.jpg" alt="WP-phpBB-03.jpg" title="WP-phpBB-03.jpg"  class="cpg-image-thumb"/></a></div></div>
<p><strong>2. Eine &#8220;leere&#8221; Seite in RW erstellen</strong><br />
Damit das Forum in einer Seite mit einer RW-Vorlage &#8220;einfliessen&#8221; kann, muss die Vorlage des Forums die Angaben über die Pfade der CSS Dateien dieser Vorlage und die HTML Bereiche dieser Vorlage beinhalten.<br />
Man kann dafür jetzt eine &#8220;leere&#8221; Seite erstellen und nachdem die Seite publiziert wird, die benötigte Teile des Codes kopieren und in der Vorlage des Forums einfügen.<br />
Eine RW-Seite stellt immer den Inhalt in dem Bereich:</p>
<pre class="brush: xml;">
&lt;div id=&quot;content&quot;&gt;
...
&lt;/div&gt;
</pre>
<p>Man kann dadurch (um gleich ein Orientierungspunkt zu erstellen) in dieser &#8220;leeren&#8221; Seite ein Wort schreiben der sicher nicht in dem Code der Seite oder des Forums auftaucht. Ob jetzt der Nachname einer Persönlichkeit oder ein Name eines Gegenstandes es ist egal. Ich werde hierfür das Wort Nikon nehmen.<br />
Eine HTML-Seite an dem Platz der Navigation einfügen wo später auch das Forum stehen wird:<br />
</p><div style="text-align:center; display: block; margin: auto auto;"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/normal_WP-phpBB-04.jpg" rel="lightbox[72]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/thumb_WP-phpBB-04.jpg" alt="WP-phpBB-04.jpg" title="WP-phpBB-04.jpg"  class="cpg-image-thumb"/></a></div></div><p><br />
Dieser Seite den Stil vergeben der später die Forum Seite auch haben wird.<br />
Da gar nicht ausgeschlossen ist dass die Seite des Forums nicht bestimmte CSS Bestimmungen haben muss, und es einfacher ist diese CSS Befehle gleich in einer separaten CSS Datei der Vorlage schreibt, würde ich vorschlagen eine CSS Variation der Vorlage einzufügen nach dem Muster der auf der Seite <a rel="external" href="http://www.costel-marian.de/?p=19">http://www.costel-marian.de/?p=19</a> sich befindet.<br />
Dafür den Punkt <strong>1. Neue Varianten dieser Vorlage einfügen</strong> mit seinen Unterpunkten befolgen.<br />
ALLERDINGS:<br />
Bei dem Punkt <strong><em>1.2 Eine Variante in dieser Gruppe erstellen</em></strong><br />
die CSS Datei die erstellt werden soll NICHT <strong>content-blocksatz.css</strong> benannt werden sondern <strong>fuer-phpbb.css</strong>.<br />
Diese Datei soll leer gespeichert werden:<br />
</p><div style="text-align:center; display: block; margin: auto auto;"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/normal_WP-phpBB-05.jpg" rel="lightbox[72]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/thumb_WP-phpBB-05.jpg" alt="WP-phpBB-05.jpg" title="WP-phpBB-05.jpg"  class="cpg-image-thumb"/></a></div></div><p><br />
Und als Code in theme.plist:</p>
<pre class="brush: xml;">
				&lt;key&gt;GroupName&lt;/key&gt;
				&lt;string&gt;Content Colour&lt;/string&gt;
			&lt;/dict&gt;
			&lt;dict&gt;
				&lt;key&gt;GroupMembers&lt;/key&gt;
				&lt;array&gt;
					&lt;dict&gt;
						&lt;key&gt;Enabled&lt;/key&gt;
						&lt;false/&gt;
						&lt;key&gt;Files&lt;/key&gt;
						&lt;array&gt;
							&lt;string&gt;css/zusatz/fuer-phpbb.css&lt;/string&gt;
						&lt;/array&gt;
						&lt;key&gt;Name&lt;/key&gt;
						&lt;string&gt;Zusatzcode für phpBB&lt;/string&gt;
						&lt;key&gt;Type&lt;/key&gt;
						&lt;string&gt;Stylesheet&lt;/string&gt;
					&lt;/dict&gt;
				&lt;/array&gt;
				&lt;key&gt;GroupName&lt;/key&gt;
				&lt;string&gt;[+] Zusatzeinstellungen&lt;/string&gt;
				&lt;key&gt;GroupSelectionLimit&lt;/key&gt;
				&lt;integer&gt;0&lt;/integer&gt;
			&lt;/dict&gt;
		&lt;/array&gt;
	&lt;/dict&gt;
	&lt;key&gt;RWTemplateHTML&lt;/key&gt;
	&lt;string&gt;index.html&lt;/string&gt;
</pre>
<p>eingeben. Damit wird eine neue CSS Datei bei der Publizierung in der Vorlage erstellt.<br />
Die Breite eines Forums wird bestimmt genauso groß wie die Seite selbst, so dass Sidebar Location auf None gestellt werden muss.<br />
Zusammen mit dem ausgewählten neue Zusatzeinstellung &#8220;Zusatzcode für phpBB&#8221; den erzeugten Stil</p>
<div style="width: 48%; float: left;">
<p>als zusatzcsscode-phpbb speichern:</p>
<div style="text-align:center; display: block; margin: auto auto;"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/normal_WP-phpBB-06.jpg" rel="lightbox[72]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/thumb_WP-phpBB-06.jpg" alt="WP-phpBB-06.jpg" title="WP-phpBB-06.jpg"  class="cpg-image-thumb"/></a></div></div>
</div>
<div style="margin-left: 52%;">
<p>und der Seite vergeben:</p>
<div style="text-align:center; display: block; margin: auto auto;"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/normal_WP-phpBB-07.jpg" rel="lightbox[72]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/thumb_WP-phpBB-07.jpg" alt="WP-phpBB-07.jpg" title="WP-phpBB-07.jpg"  class="cpg-image-thumb"/></a></div></div>
</div>
<div style="clear: both;">Jetzt die Seite publizieren.</div>
<p>RW wird die index.html Datei in dem Ordner phpBB3 erstellen die alle HTML Angaben hat die in der Vorlage des Forums eingefügt werden:<br />
</p><div style="text-align:center; display: block; margin: auto auto;"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/normal_WP-phpBB-08.jpg" rel="lightbox[72]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/thumb_WP-phpBB-08.jpg" alt="WP-phpBB-08.jpg" title="WP-phpBB-08.jpg"  class="cpg-image-thumb"/></a></div></div>
<p><strong>3. Anpassung der Forum Vorlage</strong><br />
<strong><em>3.1 Administration des Forums</em></strong><br />
Zuerst in der Administration des Forums die xabb Blue Vorlage installieren, aktivieren und als Standard-Style festlegen (STYLES/STYLE-VERWALTUNG/Styles):<br />
</p><div style="text-align:center; display: block; margin: auto auto;"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/normal_WP-phpBB-09.jpg" rel="lightbox[72]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/thumb_WP-phpBB-09.jpg" alt="WP-phpBB-09.jpg" title="WP-phpBB-09.jpg"  class="cpg-image-thumb"/></a></div></div><p><br />
Ob prosilver Vorlage deinstalliert werden soll oder nicht, kann jeder selber entscheiden.</p>
<p>In ALLGEMEIN/SERVER-KONFIGURATION/Serverlast Rekompilieren veralteter Style-Komponenten auf Ja stellen (um die Seiten nicht immer aus dem Cache aufgerufen zu werden):<br />
</p><div style="text-align:center; display: block; margin: auto auto;"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/normal_WP-phpBB-10.jpg" rel="lightbox[72]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/thumb_WP-phpBB-10.jpg" alt="WP-phpBB-10.jpg" title="WP-phpBB-10.jpg"  class="cpg-image-thumb"/></a></div></div><p><br />
Wenn die Implementierung abgeschlossen ist, man soll diese Einstellung wieder auf Nein stellen um die Seiten wieder aus dem Cache aufgerufen zu werden.</p>
<p><strong><em>3.2 Die Datei phpBB3/styles/xabbblue/template/overall_header.html</em></strong><br />
In dieser Datei werden die Pfade zu den CSS Dateien und der JavaScript der RW-Vorlage, die Weichen zu der Internet Explorer und die Bereiche des Layouts bis zu #content eingebracht. Die Datei beinhaltet auch die erste Hälfte des Forums und von da muss die Headergrafik rausgenommen. Unter Umständen müssen auch noch einige Elemente des Forums (wie der Text-Zoom) entfernt werden (wenn sie den Layout zerstören).<br />
(Am Ende des Beitrages werde ich den geenderte Code der Datei overall_header.html nochmal posten.)</p>
<p>Die Datei phpBB3/index.html und die Datei phpBB3/styles/xabbblue/template/overall_header.html in einem Texteditor öffnen. Gute Texteditoren wie <a rel="external" href="http://www.barebones.com/products/TextWrangler/">TextWrangler</a> oder <a rel="external" href="http://tuppis.com/smultron/">Smultron</a> benutzen.</p>
<p><strong><em>3.2.1 Die Pfade zu den CSS Dateien der RW-Vorlage anbringen</em></strong><br />
Aus der von RW erstellten index.html Datei den Code:</p>
<pre class="brush: xml;">
&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; media=&quot;screen&quot; href=&quot;../rw_common/themes/caribou/styles.css&quot; /&gt;
&lt;!--[if IE 6]&gt;&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; media=&quot;screen&quot; href=&quot;../rw_common/themes/caribou/css/ie6.css&quot; /&gt;&lt;![endif]--&gt;
&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; media=&quot;screen&quot; href=&quot;../rw_common/themes/caribou/colourtag-zusatzcsscode-phpbb.css&quot; /&gt;
&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; media=&quot;print&quot; href=&quot;../rw_common/themes/caribou/print.css&quot; /&gt;
&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; media=&quot;handheld&quot; href=&quot;../rw_common/themes/caribou/handheld.css&quot; /&gt;
&lt;!--[if IE 6]&gt;&lt;style type=&quot;text/css&quot; media=&quot;screen&quot;&gt;body {behavior: url(../rw_common/themes/caribou/csshover.htc);}&lt;/style&gt;&lt;![endif]--&gt;
&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; media=&quot;screen&quot; href=&quot;../rw_common/themes/caribou/css/banner/swirls.css&quot; /&gt;
&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; media=&quot;screen&quot; href=&quot;../rw_common/themes/caribou/css/logo_position/center.css&quot; /&gt;
&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; media=&quot;screen&quot; href=&quot;../rw_common/themes/caribou/css/sidebar/sidebar_none.css&quot; /&gt;
&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; media=&quot;screen&quot; href=&quot;../rw_common/themes/caribou/css/icons/black.css&quot; /&gt;
</pre>
<p>kopieren und in overall_header.html hinter dem Text:</p>
<pre class="brush: xml;">
&lt;!--
	phpBB style name: xabbBlue
	Based on style:   prosilver (this is the default phpBB3 style)
	Original author:  Tom Beddard ( http://www.subBlue.com/ )
	Modified by: www.phpbb-styles.com

	NOTE: This page was generated by phpBB, the free open-source bulletin board package.
	      The phpBB Group is not responsible for the content of this page and forum. For more information
	      about phpBB please visit http://www.phpbb.com
--&gt;
</pre>
<p>einfügen.<br />
<strong><em>3.2.2 Die Pfade zu der JavaScript Datei der RW-Vorlage und IE-Weichen anbringen</em></strong><br />
Dann aus index.html den Code:</p>
<pre class="brush: xml;">
		&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; media=&quot;screen&quot; href=&quot;../rw_common/themes/caribou/css/zusatz/fuer-phpbb.css&quot; /&gt;

		&lt;script type=&quot;text/javascript&quot; src=&quot;../rw_common/themes/caribou/javascript.js&quot;&gt;&lt;/script&gt;

		&lt;!--[if IE 6]&gt;&lt;script type=&quot;text/javascript&quot; charset=&quot;utf-8&quot;&gt;	var blankSrc = &quot;../rw_common/themes/caribou/png/blank.gif&quot;;&lt;/script&gt;
		&lt;style type=&quot;text/css&quot;&gt;	img { behavior:	url(&quot;../rw_common/themes/caribou/png/pngbehavior.htc&quot;); }&lt;/style&gt;&lt;![endif]--&gt;
</pre>
<p>kopieren und in overall_header.html VOR</p>
<p>&lt;/head&gt;</p>
<p>einsetzen.<br />
<strong><em>3.2.3 Die HTML Bereiche der Vorlage bis zu dem festgelegten Wort anbringen</em></strong><br />
Dann aus index.html den Code:</p>
<pre class="brush: xml;">
&lt;div id=&quot;bar&quot;&gt;&lt;/div&gt;
&lt;div id=&quot;container&quot;&gt;&lt;!-- Start container --&gt;
	&lt;div id=&quot;pageHeader&quot;&gt;&lt;!-- Start page header --&gt;
		&lt;div id=&quot;navcontainer&quot;&gt;&lt;!-- Start Navigation --&gt;
			&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;../index.html&quot; rel=&quot;self&quot;&gt;Home&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;index.html&quot; rel=&quot;self&quot; id=&quot;current&quot;&gt;Forum&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;../kontakt/kontakt.php&quot; rel=&quot;self&quot;&gt;Kontakt&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;../impressum/impressum.html&quot; rel=&quot;self&quot;&gt;Impressum&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
		&lt;/div&gt;&lt;!-- End navigation --&gt;
		&lt;div id=&quot;title&quot;&gt;
			&lt;div id=&quot;logo&quot;&gt;&lt;/div&gt;
			&lt;h1&gt;Meine Website&lt;/h1&gt;
			&lt;h2&gt;Changing the world, one site at a time…&lt;/h2&gt;
			&lt;div id=&quot;overlay_swirls&quot;&gt;&lt;img src=&quot;../rw_common/themes/caribou/images/header_swirls.png&quot; alt=&quot;&quot; style=&quot;width: 900px; height: 150px;&quot; /&gt;&lt;/div&gt;
			&lt;div id=&quot;overlay_stripes_glow&quot;&gt;&lt;img src=&quot;../rw_common/themes/caribou/images/header_stripes_glow.png&quot; alt=&quot;&quot; style=&quot;width: 900px; height: 150px;&quot; /&gt;&lt;/div&gt;
			&lt;div id=&quot;overlay_stripes_solid&quot;&gt;&lt;img src=&quot;../rw_common/themes/caribou/images/header_stripes_solid.png&quot; alt=&quot;&quot; style=&quot;width: 900px; height: 150px;&quot; /&gt;&lt;/div&gt;
			&lt;div id=&quot;overlay_curve_solid&quot;&gt;&lt;img src=&quot;../rw_common/themes/caribou/images/header_curve_solid.png&quot; alt=&quot;&quot; style=&quot;width: 900px; height: 150px;&quot; /&gt;&lt;/div&gt;
		&lt;/div&gt;
		&lt;div id=&quot;background&quot;&gt;&lt;img src=&quot;../rw_common/themes/caribou/images/header_bg.png&quot; alt=&quot;&quot; style=&quot;width: 914px; height: 197px;&quot; /&gt;&lt;/div&gt;
	&lt;/div&gt;&lt;!-- End page header --&gt;

	&lt;div id=&quot;contentContainer&quot;&gt;&lt;!-- Start main content wrapper --&gt;
		&lt;div id=&quot;content&quot;&gt;&lt;!-- Start content --&gt;
			&lt;div class=&quot;contentSpacer&quot;&gt;&lt;/div&gt;&lt;!-- this makes sure the content is long enough for the design --&gt;
</pre>
<p>kopieren (hier sind alle Bereiche VOR dem Wort Nikon das ich bei der Erstellung der HTML Seite in RW festgelegt habe)<br />
und in overall_header.html NACH</p>
<pre class="brush: xml;">
&lt;body id=&quot;phpbb&quot; class=&quot;section-{SCRIPT_NAME} {S_CONTENT_DIRECTION}&quot;&gt;

	&lt;a id=&quot;top&quot; name=&quot;top&quot; accesskey=&quot;t&quot;&gt;&lt;/a&gt;
</pre>
<p>einsetzen.</p>
<p><strong><em>3.2.4 In der Navigation index.html in index.php ersetzen</em></strong><br />
Die index.html Datei ist selbst in der Navigation mit index.html aufgeführt.<br />
Das Forum aber wird immer mit index.php aufgerufen. So dass in der Navigation muss das geändert werden.<br />
In overall_header.html nach</p>
<pre class="brush: xml;">
&lt;li&gt;&lt;a href=&quot;index.html&quot; rel=&quot;self&quot; id=&quot;current&quot;&gt;Forum&lt;/a&gt;&lt;/li&gt;</pre>
<p>suchen und mit</p>
<pre class="brush: xml;">
&lt;li&gt;&lt;a href=&quot;index.php&quot; rel=&quot;self&quot; id=&quot;current&quot;&gt;Forum&lt;/a&gt;&lt;/li&gt;
</pre>
<p>ersetzen.</p>
<p><strong><em>3.2.5 Alle Pfade zu den Dateien der Homepage mit phpBB Funktion ersetzen</em></strong><br />
Die Vorlage hat mit Funktion</p>
<pre class="brush: xml;">
	var base_url = '{A_BASE_URL}';
</pre>
<p>die Möglichkeit auf root zu gelangen. Und da der Ordner rw_common (die RW-Vorlage) oder die Ordner zu den anderen Seiten der Homepage sich da befinden kann man jetzt nach</p>
<p>	../</p>
<p>suchen und mit</p>
<pre class="brush: xml;">
{A_BASE_URL}/
</pre>
<p>ersetzen.<br />
Befindet sich die Homepage NICHT im root sondern in einem anderen Ordner auf dem Server (Testordner etc), dann muss mit</p>
<pre class="brush: xml;">
{A_BASE_URL}/pfad-zu-homepage/
</pre>
<p>ersetzt werden.</p>
<p>Jetzt kann man die Datei overall_header.html speichern.</p>
<p><strong><em>3.3 Die Datei phpBB3/styles/xabbblue/template/overall_footer.html</em></strong><br />
In dieser Datei wird nur der Code Bereich aus index.html HINTER dem festgelegten Wort kopiert und eingesetzt.<br />
(Am Ende des Beitrages werde ich den geenderte Code der Datei overall_footer.html nochmal posten.)</p>
<p>Die Datei phpBB3/index.html und die Datei phpBB3/styles/xabbblue/template/overall_header.html in einem Texteditor öffnen.<br />
Den ganzen Code der hinter dem festgelegtem Wort sich befindet kopieren und in overall_footer.html STATT</p>
<pre class="brush: xml;">
&lt;/body&gt;
&lt;/html&gt;
</pre>
<p>einsetzen und die Datei overall_footer.html speichern.</p>
<p><strong>4. Die Weiterleitung Seite zu dem Forum in RW erstellen</strong><br />
Alle Seiten in dem RW-Projekt haben in deren Navigation Pfade zu der Datei index.html aus dem Ordner phpBB:<br />
</p><div style="text-align:center; display: block; margin: auto auto;"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/normal_WP-phpBB-04.jpg" rel="lightbox[72]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/thumb_WP-phpBB-04.jpg" alt="WP-phpBB-04.jpg" title="WP-phpBB-04.jpg"  class="cpg-image-thumb"/></a></div></div><p><br />
Diese Seite muss zuerst mit einer Weiterleitungsseite ersetzt werden (in der Navigation des RW-Projekts die Forum-Seite mit der rechten Maustaste klicken und aus dep Popup-Fenster Forum ersetzen&#8230; anklicken).<br />
Dann in Page Inspector das Icon Seite anklicken und in dem URL Feld den absoluten Pfad zu phpBB3/index.php eingeben (http://deine-homepage.de/phpBB3/index.php oder wenn die Homepage in einem Unterordner sich befindet http://deine-homepage.de/pfad-zu dem-ordner/phpBB3/index.php):<br />
</p><div style="text-align:center; display: block; margin: auto auto;"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/normal_WP-phpBB-11.jpg" rel="lightbox[72]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/thumb_WP-phpBB-11.jpg" alt="WP-phpBB-11.jpg" title="WP-phpBB-11.jpg"  class="cpg-image-thumb"/></a></div></div><p><br />
Dann bei den allgemeinen Einstellungen dieser Seite<br />
in dem Feld Ordner: phpBB3<br />
und in dem Feld Dateiname: index.php<br />
eingeben.<br />
</p><div style="text-align:center; display: block; margin: auto auto;"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/normal_WP-phpBB-12.jpg" rel="lightbox[72]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/thumb_WP-phpBB-12.jpg" alt="WP-phpBB-12.jpg" title="WP-phpBB-12.jpg"  class="cpg-image-thumb"/></a></div></div><p><br />
Das Projekt speichern und publizieren.</p>
<p>&#8220;Technisch und theoretisch&#8221; ist das Forum eingebunden. Das Ergebnis kann bestaunt werden, allerdings gibt es noch einige Einstellungen zu erledigen.<br />
<strong>5. Anpassungen</strong><br />
<strong>5.1 Titel und Slogan RW &#8211; Forum</strong><br />
Wenn der Titel under der Slogan von RW-Projekt in der Forum-Administration bei ALLGEMEIN/BOARD-KONFIGURATION/Board-Einstellungen eingefügt wurde dann muss man nichts mehr tun.<br />
Hat man aber in dem Forum andere Angaben und möchte man sie auch in dem Hintergrund des Headers haben dann muss man den Code aus overall_header.html:</p>
<pre class="brush: xml;">
				&lt;h1&gt;Meine Website&lt;/h1&gt;
				&lt;h2&gt;Changing the world, one site at a time…&lt;/h2&gt;</pre>
<p>mit</p>
<pre class="brush: xml;">
				&lt;h1&gt;{SITENAME}&lt;/h1&gt;
				&lt;h2&gt;{SITE_DESCRIPTION}&lt;/h2&gt;
</pre>
<p>ändern.<br />
<strong>5.2 Header des Forums löschen</strong><br />
In overall_header.html den Code:</p>
<pre class="brush: xml;">
		&lt;div class=&quot;headerbar&quot;&gt;
		 &lt;div id=&quot;wrap&quot;&gt;
			&lt;div class=&quot;inner&quot;&gt;

			&lt;div id=&quot;site-description&quot;&gt;
				&lt;a href=&quot;{U_INDEX}&quot; title=&quot;{L_INDEX}&quot; id=&quot;logo&quot;&gt;{SITE_LOGO_IMG}&lt;/a&gt;
				&lt;h1&gt;{SITENAME}&lt;/h1&gt;
				&lt;p&gt;{SITE_DESCRIPTION}&lt;/p&gt;
				&lt;p style=&quot;display: none;&quot;&gt;&lt;a href=&quot;#start_here&quot;&gt;{L_SKIP}&lt;/a&gt;&lt;/p&gt;
			&lt;/div&gt;

			&lt;/div&gt;
		 &lt;/div&gt;
		&lt;/div&gt;</pre>
<p>löschen.</p>
<p><strong>5.3 CSS Anpassung</strong><br />
phpBB hat ein komplizierten System für das Management der CSS Dateien und der CSS Angaben.<br />
Der Code aus der Datei overall_header.html</p>
<pre class="brush: xml;">
&lt;link href=&quot;{T_STYLESHEET_LINK}&quot; rel=&quot;stylesheet&quot; type=&quot;text/css&quot; media=&quot;screen, projection&quot; /&gt;</pre>
<p>ruft auf eine Zusammensetzung der CSS Befehlen aus der MySQL Datenbank.<br />
Diese Zusammensetzung der CSS Befehle befindet sich in der Tabelle <strong>phpbb_styles_theme</strong> und wird bei der Instalation des Styles (Forum-Vorlage) in der Datenbank eingefügt, nachdem die Datei <em>stylesheet.css</em> (aus dem Ordner styles/name-des-styles-/theme) mehrere CSS Dateien zusammengefügt hat.<br />
Diese Dateien sind ersichtlich in dem Code dieser stylesheet.css Datei:</p>
<pre class="brush: xml;">@import url(&quot;common.css&quot;);
@import url(&quot;links.css&quot;);
@import url(&quot;content.css&quot;);
@import url(&quot;buttons.css&quot;);
@import url(&quot;cp.css&quot;);
@import url(&quot;forms.css&quot;);
@import url(&quot;tweaks.css&quot;);
@import url(&quot;colours.css&quot;);</pre>
<p>Alle Styles die auf der Basis von dem Originalstyle prosilver arbeiten nach dem gleichen System.</p>
<p><strong><em>5.3.0 Aktualisierung der CSS Angaben in der Datenbank</em></strong><br />
Deswegen, entweder nach einer Änderung oder nach mehreren Änderungen der CSS Befehlen in den entsprechenden Dateien man muss diese Datenbanktabelle aktualisieren.<br />
Sie wird in STYLES/STYLE-KOMPONENTEN/Themes durchgeführt wenn den Link Aktualisieren des entsprechendes Style angeklickt wird:</p>
<div style="width: 48%; float: left;"></p><div style="text-align:center; display: block; margin: auto auto;"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/normal_WP-phpBB-13.jpg" rel="lightbox[72]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/thumb_WP-phpBB-13.jpg" alt="WP-phpBB-13.jpg" title="WP-phpBB-13.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<div style="margin-left: 52%;"></p><div style="text-align:center; display: block; margin: auto auto;"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/normal_WP-phpBB-14.jpg" rel="lightbox[72]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-phpbb/thumb_WP-phpBB-14.jpg" alt="WP-phpBB-14.jpg" title="WP-phpBB-14.jpg"  class="cpg-image-thumb"/></a></div></div><p></div>
<p>Aber nach der Änderung einigen Befehle und das Durchführen dieses Schrittes wird das Ganze einfach zu verstehen.</p>
<p><strong><em>5.3.1 Die Breite des Forums</em></strong><br />
In der Datei styles/xabbblue/theme/common.css wird unter</p>
<pre class="brush: css;">
#wrap {
	padding: 0px 20px;
	min-width: 650px;
	width: 860px;
	margin: 0 auto;
}</pre>
<p>die Breite des Forums mit 860px angegeben und dadurch zu breit.<br />
Einfach die</p>
<pre class="brush: css;">
	width: 860px;
</pre>
<p>Angabe löschen, die Datei abspeichern und dann den Schritt <strong><em>5.3.0</em></strong> durchführen.<br />
Schon besser!</p>
<p><strong><em>5.3.2 Der leere Platz unter der Forum-Navigation entfernen</em></strong><br />
Für diesen Platz sind einige <strong>clear</strong>-Befehle verantwortlich die auf both gesetzt sind. Warum auch immer, viele RW-Vorlagen haben ein Problem damit.<br />
Die Bereiche die diese Befehle benutzen befinden sich auch in der Datei styles/xabbblue/theme/common.css:</p>
<pre class="brush: css;">
#page-body {
	margin: 4px 0;
	clear: both;
}

.forabg {
	background: #b1b1b1 none repeat-x 0 0;
	margin-bottom: 4px;
	padding: 0 5px;
	clear: both;
}

.forumbg {
	background: #ebebeb none repeat-x 0 0;
	margin-bottom: 4px;
	padding: 0 5px;
	clear: both;
}

span.corners-bottom {
	background-image: none;
	background-position: 0 100%;
	margin: 0 -5px;
	clear: both;
}</pre>
<p>Bis auf #page-body wo</p>
<pre class="brush: css;">
	clear: left;
</pre>
<p>sein muss, alle andere bekommen</p>
<pre class="brush: css;">
	clear: none;
</pre>
<p>Die Datei speichern und dann den Schritt <strong><em>5.3.0</em></strong> durchführen.<br />
Noch besser!</p>
<p><strong><em>5.3.3 Der leere Platz vor dem Anfang eines Threads entfernen</em></strong><br />
Für diesen Platz sind wieder zwei <strong>clear</strong>-Befehle verantwortlich die auf both gesetzt sind.<br />
In der Datei styles/xabbblue/theme/common.css:</p>
<pre class="brush: css;">
.clear {
	display: block;
	clear: both;
	font-size: 1px;
	line-height: 1px;
	background: transparent;
}</pre>
<p>und in der Datei styles/xabbblue/theme/content.css:</p>
<pre class="brush: css;">
.postbody {
	padding: 0;
	line-height: 1.48em;
	color: #333333;
	width: 76%;
	float: left;
	clear: both;
}</pre>
<p>Beide bekommen</p>
<pre class="brush: css;">
	clear: none;
</pre>
<p>dann die Dateien speichern und den Schritt <strong><em>5.3.0</em></strong> durchführen.<br />
Bestens!</p>
<p><strong><em>5.3.4 &#8220;Aktuelle Zeit: &#8230;&#8221; als nichtangemeldete User</em></strong><br />
Als nichtangemeldete User bekommt man die Eintragung &#8220;Aktuelle Zeit: &#8230;&#8221; sehr nah an der FAQ-Suche-Registrieren-Anmelden Linie. Die Eintragung aus der Datei styles/xabbblue/theme/content.css:</p>
<pre class="brush: css;">
p.right {
	text-align: right;
}</pre>
<p>muss in</p>
<pre class="brush: css;">
p.right {
	text-align: right;
	display: inline;
}</pre>
<p>geändert werden, dann die Datei speichern und den Schritt <strong><em>5.3.0</em></strong> durchführen.</p>
<p><strong><em>5.3.5 FAQ-Seite</em></strong><br />
Dieser Mischmasch auf der FAQ-Seite kommt aus&#8230; Richtig, wieder <strong>clear</strong>-Geschichten <img src='http://www.costel-marian.de/wordpress/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /><br />
(Ich hoffe nicht dass ich alle clear-Befehle aus dem Forum streiche!)<br />
In styles/xabbblue/theme/common.css gibt es:</p>
<pre class="brush: css;">
span.corners-top, span.corners-bottom, span.corners-top span, span.corners-bottom span {
	font-size: 1px;
	line-height: 1px;
	display: block;
	height: 5px;
	background-repeat: no-repeat;
}

.column2 {
	float: right;
	clear: right;
	width: 49%;
}</pre>
<p>und in Zusammenarbeit mit dieser RW-Vorlage müsste stehen:</p>
<pre class="brush: css;">
span.corners-top, span.corners-bottom, span.corners-top span, span.corners-bottom span {
	font-size: 1px;
	line-height: 1px;
	display: block;
	height: 5px;
	background-repeat: no-repeat;
	clear: left;
}

.column2 {
	float: right;
	width: 49%;
}</pre>
<p>Die Datei speichern und und den Schritt <strong><em>5.3.0</em></strong> durchführen.</p>
<p>Ich glaube jetzt sieht das Forum Bereich schon ganz passabel.<br />
Für andere Arbeiten (Hintergrunde, Farben etc) müssen aus den anderen CSS Dateien des Styles geändert (und immer wieder den Schritt <strong><em>5.3.0</em></strong> durchführen).</p>
<p><strong><em>5.3.6 Navigation, PageHeader und Footer anpassen</em></strong><br />
Was noch zu erledigen ist sind die Größen der Buchstaben aus der Navigation, PageHeader und Footer. Sie wurden von den CSS Einstellungen des Styles umgewandelt und dazu in dem Schritt <strong>2. Eine “leere” Seite in RW erstellen</strong> wurde eine Variante in der RW-Vorlage Caribou erstellt (mit der Hilfe der Anleitung von der Seite <a rel="external" href="http://costel-marian.de/wordpress/?p=19">http://costel-marian.de/wordpress/?p=19</a>) und die Datei rw-common/themes/caribou/css/zusatz/fuer-phpbb.css ist leer auf dem Server.<br />
Man muss diese Datei in der RW-Vorlage in einem Texteditor laden und diesen CSS Code einfügen:</p>
<pre class="brush: css;">
#navcontainer a {
	font: bold 1.3em Arial, &quot;Lucida Grande&quot;, Lucida, Verdana, sans-serif !important;
}

#footer p {
	font: 1.4em/1.6 Arial, &quot;Lucida Grande&quot;, Lucida, Verdana, sans-serif !important;
}

#pageHeader h1 {
	font: 3.3em Arial, &quot;Lucida Grande&quot;, Lucida, Verdana, sans-serif !important;
}

#pageHeader h2 {
	font: 2.5em Arial, &quot;Lucida Grande&quot;, Lucida, Verdana, sans-serif !important;
}</pre>
<p>Die Datei speichern und bei dem nächsten Publizieren wird diese Datei auf dem Server aktualisiert.</p>
<p>Das ist schon eine ganze Menge Arbeit. Aber im Endeffekt auch wieder nicht. Der jenige der es braucht wird wohl mit studieren und kopieren/einsetzen einen Nachmittag (oder noch weniger) verbringen.<br />
Die Schritte wurden diesmal immer nachgemacht und dann hier aufgeschrieben, so dass ich glaube dass wenige Fehler sind <img src='http://www.costel-marian.de/wordpress/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>Und hier das ferige Ergebnis: <a href="http://costel-marian.de/phpBB-implementierung/phpBB3/index.php">http://costel-marian.de/phpBB-implementierung/phpBB3/index.php</a></p>
<p>Der Anlass allerdings wurde eine Anfrage aus Italien (Ciao Italia!), auch wenn ich die <a href="http://costel-marian.de/testforen/phpBB3/index.php">Implementierung</a> schon hatte, habe ich nicht die Zeit gefunden alle Schritte nach und nach zu erstellen und sie gleich zu dokumentieren.</p>
<div class="clearer">&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://www.costel-marian.de/?feed=rss2&#038;p=72</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Variationen der RW-Vorlagen erstellen/ändern</title>
		<link>http://www.costel-marian.de/?p=19</link>
		<comments>http://www.costel-marian.de/?p=19#comments</comments>
		<pubDate>Mon, 29 Dec 2008 12:55:29 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Rapidweaver]]></category>

		<guid isPermaLink="false">http://costel-marian.de/wordpress/?p=19</guid>
		<description><![CDATA[Die lange Pause in diesem Weblog soll jetzt beendet sein. Für die Behandlung einigen gefragten Projekte (Implementierung eines Forums &#8211; phpBB, vBulletin, Shop &#8211; GambioGX, Update der WebYep-Accordion Zusammensetzung) müsste ich immer wieder einen wichtigen Punkt (meiner Meinung nach) erklären. Damit ich diesen Punkt nicht jedesmal in den Erklärungen behandele, würde ich hier über die [...]]]></description>
			<content:encoded><![CDATA[<p>Die lange Pause in diesem Weblog soll jetzt beendet sein.<br />
Für die Behandlung einigen gefragten Projekte (Implementierung eines Forums &#8211; phpBB, vBulletin, Shop &#8211; GambioGX, Update der WebYep-Accordion Zusammensetzung) müsste ich immer wieder einen wichtigen Punkt (meiner Meinung nach) erklären. Damit ich diesen Punkt nicht jedesmal in den Erklärungen behandele, würde ich hier über die Variationen der RW-Vorlagen schreiben. Wo sie sich befinden, welche Dateien beteiligen sich, wie sie verändert werden können, wie kann man neue einfügen.<br />
Ich werde das alles mit der Hilfe der Caribou Vorlage versuchen.<span id="more-19"></span><br />
Zuerst aber eine Kopie der Vorlage erstellen.<br />
Die Stile dieser Vorlage in Page Inspector würden etwa so aussehen:<br />
</p><div style="text-align:center; display: block; margin: auto auto;"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-vorlage/normal_WP-Caribou-01.jpg" rel="lightbox[19]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-vorlage/thumb_WP-Caribou-01.jpg" alt="WP-Caribou-01.jpg" title="WP-Caribou-01.jpg"  class="cpg-image-thumb"/></a></div></div><p><br />
<strong>1. Neue Varianten dieser Vorlage einfügen</strong><br />
<strong><em>1.1 Eine Gruppe für die Varianten erstellen</em></strong><br />
Die Datei theme.plist der Vorlage mit einem <a href="http://smultron.sourceforge.net/">Texteditor</a> und an dem Ende des Content Colour Bereich scrollen:</p>
<pre class="brush: xml;">
				&lt;key&gt;GroupName&lt;/key&gt;
				&lt;string&gt;Content Colour&lt;/string&gt;
			&lt;/dict&gt;
		&lt;/array&gt;
	&lt;/dict&gt;
	&lt;key&gt;RWTemplateHTML&lt;/key&gt;
	&lt;string&gt;index.html&lt;/string&gt;</pre>
<p>Dieser Bereich endet mit dem Tag</p>
<pre class="brush: xml;">
&lt;/dict&gt;
</pre>
<p>Nach diesem Endtag den Code für eine neue Variantengruppe der Vorlage einfügen:</p>
<pre class="brush: xml;">
				&lt;key&gt;GroupName&lt;/key&gt;
				&lt;string&gt;Content Colour&lt;/string&gt;
			&lt;/dict&gt;
			&lt;dict&gt;
				&lt;key&gt;GroupMembers&lt;/key&gt;
				&lt;array&gt;

				&lt;/array&gt;
				&lt;key&gt;GroupName&lt;/key&gt;
				&lt;string&gt;[+] Zusatzeinstellungen&lt;/string&gt;
				&lt;key&gt;GroupSelectionLimit&lt;/key&gt;
				&lt;integer&gt;0&lt;/integer&gt;
			&lt;/dict&gt;
		&lt;/array&gt;
	&lt;/dict&gt;
	&lt;key&gt;RWTemplateHTML&lt;/key&gt;
	&lt;string&gt;index.html&lt;/string&gt;</pre>
<p>Dadurch wird in das Fenster Stile der Vorlage erstmal eine neue Gruppe eingefügt:<br />
</p><div style="text-align:center; display: block; margin: auto auto;"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-vorlage/normal_WP-Caribou-02.jpg" rel="lightbox[19]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-vorlage/thumb_WP-Caribou-02.jpg" alt="WP-Caribou-02.jpg" title="WP-Caribou-02.jpg"  class="cpg-image-thumb"/></a></div></div><p><br />
Bitte aus dem Vergleich des Codes und des Bildes die Zusammenhänge erstellen: Der Name dieser Gruppe steht in</p>
<pre class="brush: xml;">
&lt;string&gt;[+] Zusatzeinstellungen&lt;/string&gt;
</pre>
<p><strong><em>1.2 Eine Variante in dieser Gruppe erstellen</em></strong><br />
Die Varianten der Vorlage benutzen immer eine CSS Datei die meistens in dem Ordner css der Vorlage sich befindet. Dieser Ordner beinhaltet auch andere Ordner wo die CSS Dateien gruppiert sich befinden, aber das System dieser Gruppierung legt der fest.<br />
Das Programm kennt den Pfad diesen Dateien, und benutzt ihn, weil diese Dateien in der theme.plist Datei angegeben sind.<br />
Die Vorlage soll also eine Variante die den Text in dem Content in Blocksatz darstellt.<br />
Zuerst in dem Ordner css der Vorlage einen Ordner zusatz erstellen. Dann mit einem Texteditor eine Datei mit diesem Code erstellen:</p>
<pre class="brush: css;">
#contentContainer #content {
	text-align: justify;
}</pre>
<p>und als content-blocksatz.css in dem Ordner zusatz speichern:<br />
</p><div style="text-align:center; display: block; margin: auto auto;"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-vorlage/normal_WP-Caribou-03.jpg" rel="lightbox[19]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-vorlage/thumb_WP-Caribou-03.jpg" alt="WP-Caribou-03.jpg" title="WP-Caribou-03.jpg"  class="cpg-image-thumb"/></a></div></div><p><br />
Jetzt muss diese CSS Datei in der theme.plist Datei angemeldet werden:</p>
<pre class="brush: xml;">
				&lt;key&gt;GroupName&lt;/key&gt;
				&lt;string&gt;Content Colour&lt;/string&gt;
			&lt;/dict&gt;
			&lt;dict&gt;
				&lt;key&gt;GroupMembers&lt;/key&gt;
				&lt;array&gt;
					&lt;dict&gt;
						&lt;key&gt;Enabled&lt;/key&gt;
						&lt;false/&gt;
						&lt;key&gt;Files&lt;/key&gt;
						&lt;array&gt;
							&lt;string&gt;css/zusatz/content-blocksatz.css&lt;/string&gt;
						&lt;/array&gt;
						&lt;key&gt;Name&lt;/key&gt;
						&lt;string&gt;Inhalt aus dem Content als Blocksatz&lt;/string&gt;
						&lt;key&gt;Type&lt;/key&gt;
						&lt;string&gt;Stylesheet&lt;/string&gt;
					&lt;/dict&gt;
				&lt;/array&gt;
				&lt;key&gt;GroupName&lt;/key&gt;
				&lt;string&gt;[+] Zusatzeinstellungen&lt;/string&gt;
				&lt;key&gt;GroupSelectionLimit&lt;/key&gt;
				&lt;integer&gt;0&lt;/integer&gt;
			&lt;/dict&gt;
		&lt;/array&gt;
	&lt;/dict&gt;
	&lt;key&gt;RWTemplateHTML&lt;/key&gt;
	&lt;string&gt;index.html&lt;/string&gt;</pre>
<p>mit dem Ergebnis:<br />
</p><div style="text-align:center; display: block; margin: auto auto;"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-vorlage/normal_WP-Caribou-04.jpg" rel="lightbox[19]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-vorlage/thumb_WP-Caribou-04.jpg" alt="WP-Caribou-04.jpg" title="WP-Caribou-04.jpg"  class="cpg-image-thumb"/></a></div></div><p><br />
Wenn so eine Variante standardmäßig aktiviert werden soll, muss man den Code ändern in:</p>
<pre class="brush: xml;">
						&lt;key&gt;Enabled&lt;/key&gt;
						&lt;true/&gt;</pre>
<p>Ich habe diese Variante als <a rel="external" href="http://de.wikipedia.org/wiki/Checkbox">Auswahlbox</a> und nicht als <a rel="external" href="http://de.wikipedia.org/wiki/Radiobutton">Radiobutton</a> erstellt weil die Radiobuttons als &#8220;entweder &#8230; oder&#8221; funktionieren während die Auswahlbox Möglichkeiten dem Muster &#8220;sowohl &#8230; als auch&#8221; anbieten.</p>
<p>Eine Gruppe mit Radiobutton-Varianten muss den Code:</p>
<pre class="brush: xml;">
				&lt;key&gt;GroupSelectionLimit&lt;/key&gt;
				&lt;integer&gt;1&lt;/integer&gt;</pre>
<p>haben wie z.B. die Banner Design Gruppe.</p>
<p><strong>2. Farbe bestimmten Elementen zuweisen</strong><br />
Bestimmte Bereiche kann man durch einem Farbwähler die Standardfarbe ändern.<br />
Diese Bereiche müssen ein Tag-Wort bekommen damit die Farbe in der Variante der Datei colourtag.css (die für jede Seite oder für jeden gespeicherten Stil erstellt wird) geändert wird.<br />
Die Caribou Vorlage benutzt für den Hintergrund des Footers schon ein Farbwähler aber nicht für den Text des Footers. Dieser Text hat zwar einen Schatten, aber er ist immer weiss. Würde man den Hintergrund auch weiss stellen, sieht man in diesem Bereich nur den Schatten.<br />
Deswegen soll dieser Bereich auch einen Farbwähler bekommen, so wie Main Text, Sidebar Headings, Sidebar Text etc.<br />
Dem Tag-Wort für solche Bereiche muss ein % Zeichen davor und danach eingefügt, und natürlich muss dieses Tag-Wort nicht identisch mit einem das für andere Bereiche auch benutzt wird.<br />
Die Vorlage Caribou benutzt für den Hintergrund des Footers das Tag-Wort:</p>
<pre class="brush: xml;">
%colour_footer_bg%
</pre>
<p>Es würde sich anbieten für den Text dieses Bereiches das Tag-Wort:</p>
<pre class="brush: xml;">
%colour_footer%
</pre>
<p>zu benutzen.<br />
<strong><em>2.1 Einen neuen Farbwähler für ein Element einfügen</em></strong><br />
Zuerst, in der theme.plist Datei hinter dem Farbwähler für die Links aus der Content Colour Gruppe</p>
<pre class="brush: xml;">
					&lt;dict&gt;
						&lt;key&gt;DefaultColour&lt;/key&gt;
						&lt;string&gt;#656565&lt;/string&gt;
						&lt;key&gt;DisplayName&lt;/key&gt;
						&lt;dict&gt;
							&lt;key&gt;de&lt;/key&gt;
							&lt;string&gt;Links&lt;/string&gt;
							&lt;key&gt;en&lt;/key&gt;
							&lt;string&gt;Links&lt;/string&gt;
							&lt;key&gt;fr&lt;/key&gt;
							&lt;string&gt;Links&lt;/string&gt;
							&lt;key&gt;it&lt;/key&gt;
							&lt;string&gt;Links&lt;/string&gt;
							&lt;key&gt;ja&lt;/key&gt;
							&lt;string&gt;Links&lt;/string&gt;
						&lt;/dict&gt;
						&lt;key&gt;Name&lt;/key&gt;
						&lt;string&gt;Links&lt;/string&gt;
						&lt;key&gt;Tag&lt;/key&gt;
						&lt;string&gt;%colour_tags_links%&lt;/string&gt;
						&lt;key&gt;Type&lt;/key&gt;
						&lt;string&gt;Colour&lt;/string&gt;
					&lt;/dict&gt;</pre>
<p>den Code für den Farbwähler des Textes im Footer eingeben (hier zusammen mit dem für Links und mit dem Ende der Farbgruppe):</p>
<pre class="brush: xml;">
					&lt;dict&gt;
						&lt;key&gt;DefaultColour&lt;/key&gt;
						&lt;string&gt;#656565&lt;/string&gt;
						&lt;key&gt;DisplayName&lt;/key&gt;
						&lt;dict&gt;
							&lt;key&gt;de&lt;/key&gt;
							&lt;string&gt;Links&lt;/string&gt;
							&lt;key&gt;en&lt;/key&gt;
							&lt;string&gt;Links&lt;/string&gt;
							&lt;key&gt;fr&lt;/key&gt;
							&lt;string&gt;Links&lt;/string&gt;
							&lt;key&gt;it&lt;/key&gt;
							&lt;string&gt;Links&lt;/string&gt;
							&lt;key&gt;ja&lt;/key&gt;
							&lt;string&gt;Links&lt;/string&gt;
						&lt;/dict&gt;
						&lt;key&gt;Name&lt;/key&gt;
						&lt;string&gt;Links&lt;/string&gt;
						&lt;key&gt;Tag&lt;/key&gt;
						&lt;string&gt;%colour_tags_links%&lt;/string&gt;
						&lt;key&gt;Type&lt;/key&gt;
						&lt;string&gt;Colour&lt;/string&gt;
					&lt;/dict&gt;
					&lt;dict&gt;
						&lt;key&gt;DefaultColour&lt;/key&gt;
						&lt;string&gt;#FFFFFF&lt;/string&gt;
						&lt;key&gt;DisplayName&lt;/key&gt;
						&lt;dict&gt;
							&lt;key&gt;de&lt;/key&gt;
							&lt;string&gt;Footer Text&lt;/string&gt;
							&lt;key&gt;en&lt;/key&gt;
							&lt;string&gt;Footer Text&lt;/string&gt;
							&lt;key&gt;fr&lt;/key&gt;
							&lt;string&gt;Footer Text&lt;/string&gt;
							&lt;key&gt;it&lt;/key&gt;
							&lt;string&gt;Footer Text&lt;/string&gt;
							&lt;key&gt;ja&lt;/key&gt;
							&lt;string&gt;Footer Text&lt;/string&gt;
						&lt;/dict&gt;
						&lt;key&gt;Name&lt;/key&gt;
						&lt;string&gt;Links&lt;/string&gt;
						&lt;key&gt;Tag&lt;/key&gt;
						&lt;string&gt;%colour_footer%&lt;/string&gt;
						&lt;key&gt;Type&lt;/key&gt;
						&lt;string&gt;Colour&lt;/string&gt;
					&lt;/dict&gt;
				&lt;/array&gt;
				&lt;key&gt;GroupName&lt;/key&gt;
				&lt;string&gt;Content Colour&lt;/string&gt;
			&lt;/dict&gt;</pre>
<p>Nach dem Speichern der theme.plist Datei der Page Inspector würde diesen Inhalt zeigen:<br />
</p><div style="text-align:center; display: block; margin: auto auto;"><div><a style="background: transparent;" class="cpg-link" rel="lightbox[my]" href="http://www.costel-marian.de/galerien/coppermine/albums/rw-vorlage/normal_WP-Caribou-05.jpg" rel="lightbox[19]"><img src="http://www.costel-marian.de/galerien/coppermine/albums/rw-vorlage/thumb_WP-Caribou-05.jpg" alt="WP-Caribou-05.jpg" title="WP-Caribou-05.jpg"  class="cpg-image-thumb"/></a></div></div>
<p><strong><em>2.2 Die Verbindung mit der colourtag.css Datei</em></strong><br />
Für den Bereich #footer, die Datei colourtag.css legt nur die Farbe des Hintergrundes fest:</p>
<pre class="brush: css;">
#footer {
	background-color: %colour_footer_bg%;
}</pre>
<p>Einfach an diesem Code auch die Bestimmung für die Farbe des Textes einfügen:</p>
<pre class="brush: css;">
#footer {
	color: %colour_footer%;
	background-color: %colour_footer_bg%;
}</pre>
<p>Die Datei colourtag.css speichern und damit auch dem Text im Footer die Möglichkeit haben eine andere Farbe zu geben.</p>
<p>Ich hoffe dass ich keine gravierende Fehler gemacht habe und dass der Beitrag jemandem nützlich wird.</p>
<div class="clearer">&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://www.costel-marian.de/?feed=rss2&#038;p=19</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Implementierung der PHP Applikationen in RW &#8211; osCommerce</title>
		<link>http://www.costel-marian.de/?p=12</link>
		<comments>http://www.costel-marian.de/?p=12#comments</comments>
		<pubDate>Mon, 25 Feb 2008 01:59:07 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[RW-Implementierung]]></category>
		<category><![CDATA[Rapidweaver]]></category>

		<guid isPermaLink="false">http://costel-marian.de/wordpress/?p=12</guid>
		<description><![CDATA[Von den zwei PHP Applikationen die ich in der letzten Zeit in eriner mit RW gebauten Homepage implementiert habe, hat mir oscommerce am wenigsten Probleme bereitet. Vielleicht auch dass ich zufällig auf dem &#8220;richtigen&#8221; Wie gestossen bin. Ich hatte nach Templates in deren Datenbank gesucht und bin auf Simple Template System so dass von hier [...]]]></description>
			<content:encoded><![CDATA[<p>Von den zwei PHP Applikationen die ich in der letzten Zeit in eriner mit RW gebauten Homepage implementiert habe, hat mir <a href="http://www.oscommerce.com/">oscommerce</a> am wenigsten Probleme bereitet. Vielleicht auch dass ich zufällig auf dem &#8220;richtigen&#8221; Wie gestossen bin. Ich hatte nach Templates in deren Datenbank gesucht und bin auf <a href="http://www.oscommerce.com/community/contributions,1524">Simple Template System</a> so dass von hier an nicht mehr schwer gewesen ist. Nachdem ich mir den Code angeschaut habe was dieses STS bereitstellt dann war es einfach.<br />
Ich muss aber davor auf etwas aufmerksam machen:<br />
Ich kenne so gesehen oscommerce gar nicht. Ich weiss nicht welche Plugins, Addons etc. es gibt und weiss auch nicht in wie weit sie untereinander kompatibel sind. Ich habe oscommerce in der Version <a href="http://www.oscommerce.com/solutions/downloads">osCommerce Online Merchant v2.2 Release Candidate 2a</a> und <a href="http://www.oscommerce.com/community/contributions,1524">STSv4.5.8 for all osC 2.2 versions</a> installiert und das ist alles. Ob diese Zusammensetzung weiter verfolgt und weiterentwickelt wird, weiss ich nicht. An der Nummer der STS Version scheint es dass die Entwickler immer noch aktiv sind und sogar uptodate.<span id="more-12"></span><br />
Da ich einiges über die Problematik der Implementierung von PHP Applikationen schon in dem Beitrag davor gesschrieben habe <a href="http://costel-marian.de/wordpress/?p=11">http://costel-marian.de/wordpress/?p=11</a> würde ich jetzt anfangen.</p>
<p><strong>1. Zuerst in RW erledigen:</strong><br />
In einer Projektdatei in der Stelle der Navigation wo später der Shop kommen soll eine HTML Seite erstellen.<br />
Einen Namen für die Navigation geben (bei mir ist einfach Testshop, da ich nichts zu verkaufen habe) einen Ordername zuweisen. Der Shop von osCommerce ist in dem Ordner catalog (der später bei der Installation auf dem Server kommen wird). Ob dieser Name auch weiterhin bleiben soll oder vielleicht shop oder anderswie heissen soll bleibt euch überlassen. Allerdings dieser Ordnername muss sowohl hier festgelegt werden als auch später bei der Installation von osCommerce dem Ordner catalog gegeben werden!<br />
Als Dateiname bekommt diese Seite index.php.</p>
<p>Die Seite soll alle Merkmale (Farben, Aussehen etc) bekommen die später die Shopseite auch haben soll. Man kann sicherlich die Sidebars der Shop in der Sidebar der Seite später tun, man kann nur eine Sidebar des Shops in die Sidebar der Seite tun und dann auf der Seite den content und noch eine Sidebar. Die Screenshots von <a href="http://www.oscommerce.com/solutions/oscommerce">http://www.oscommerce.com/solutions/oscommerce</a> zeigen in etwa welche Teile und wo sie auf der Seite kommen. Entprechend muss die Breite der Seite gewählt werden, mit oder ohne Sidebar etc.<br />
Als Text in der Seite einfach das Wort Test schreiben.</p>
<p>Nach diesen Vorbereitungen, muss publiziert werden.</p>
<p>Nach dem Publizieren, die Datei index.php aus dem Ordner (Name wisst ihr besser) downloaden.</p>
<p>In RW diese Seite jetzt deaktivieren und nicht mehr in dem Menü zeigen lassen.</p>
<p>Den Ordner vom Server kann man jetzt löschen.</p>
<p><strong>2. Die Installation von osCommerce</strong><br />
<strong>1.</strong> die Applikation (hier in der Version osCommerce Online Merchant v2.2 Release Candidate 2a) von <a href="http://www.oscommerce.com/solutions/downloads">http://www.oscommerce.com/solutions/downloads</a> runterladen.<br />
Nach dem Entpacken den Ordner catalog auf dem Server uploaden.<br />
Wie oben erwähnt, u. U. den Ordner umbenennen!<br />
Es gibt einige Sachen bei der Installation zu beachten (Ordner die bestimmte Rechte bekommen sollen etc). Bitte dazu die Dokumetiation lesen.</p>
<p>Für die Installation habe ich eine Anmerkung:<br />
Die Installation ist einfach aber leider fehlt der Installation die Möglichkeit einen Prefix für die Datenbanktabellen. Diesen Prefix wäre enorm wichtig wenn man mit der gleichen Datenbank zwei Shops betreiben würde. Und für die Ordnung allgemein in der Datenbank es ist gut dass die Tabellen jeder Applikation einen Prefix bekommen.<br />
Es gibt allerdings als Tipp einen <a href="http://de.oscommerce.info/kb/133">Beitrag</a> in dieser Richtung.<br />
Es funktioniert zwar aber bei mir funktionierte STS (das ist ein Modul für osCommerce das auch installiert werden muss um das Aussehen des Shops an die Homepage zu erstellen) NICHT.<br />
Ich habe nach den Gründen nicht gesucht sondern habe eine frisch Datenbank genommen und die Installation wie normal durchgeführt. Leider hatte ich keine Zeit in dem Code mich durchzuwühlen. Vielleicht geht es bei jemand anderen oder in einer neuen Version von osCommerce und STS.<br />
<strong>2.</strong> das Modul STS von <a href="http://www.oscommerce.com/community/contributions,1524">http://www.oscommerce.com/community/contributions,1524</a> runterladen und installieren. Die Installation ist eigentlich das manuelle Uploaden von bestimmten Dateien in bestimmten Stellen des Ordners catalog.</p>
<p><strong>3. Das Einrichtenn von osCommerce</strong><br />
Hier weisst jeder am besten wie er heisst, wo er woht, was er zu verkaufen hat, mit wieviel etc, etc, etc.<br />
Bei der Einrichting muss jetzt aber STS &#8220;eingeschaltet&#8221; werden (nur durch das Kopieren davor greift er noch nicht und tut was er tun muss). Dafür sind die Bilder in der Dokumentation die zeigen wie und welche Schalter zu stellen sind aufschlussreich.<br />
Auch nach dem Einschalten des STS hat sich fast nicht getan auf der Seite des Shops bis auf einem neuen Text in dem oberen Teil: This is the default template.</p>
<p><strong>4. Wie STS den Quellcode umformatiert</strong><br />
STS greift auf eine HTML Seite die in einem der Ordner die in catalog/includes/sts_templates sich befindet. Diese Datei und der Ordner wurde bei der Einrichtung von STS festgelegt.<br />
Ich würde vorschlagen den Ordner catalog/includes/sts_template/test umzubenennen und als Name der Name euerer RW-Vorlage zu geben (sticht besser ins Auge wenn man auf dem Server danach sucht <img src='http://www.costel-marian.de/wordpress/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  )<br />
Der Name der Datei kann man so lassen (jetzt weiss man schon wo man ist und was dadrin sich befindet). Allerdings diesen Ordnername muss in STS eingegeben!</p>
<p>Öffnet man die Datei aus diesem Ordenr (ich nehme die Datei sts_template.html) ist man überrascht wie einfach aufgebaut ist und was man alles dadrin findet:<br />
Ein &lt;head&gt; Teil und in &lt;body&gt; einige Tabellen.<br />
Der Quellcode der der Browser von der Seite zeit ist aber voll von anderen Daten.<br />
STS &#8220;bindet&#8221; mit dem Dollarzeichen und das Wort danach die bestimmten Bereiche der Seite:<br />
$catmenu z.B ist der Auswahlpopup von der rechten Seite. Dadrunter die Kategorien sind mit $categorybox, die Hersteller mit $manufacturerbox bezeichnet. Etc, etc, etc. Wohl die Tabelle wo diese drei (und andere dannach) ist die linke Sidebar der Seite. Diese Tabelle ist in eine übergeordnete Tabelle die drei Zeilen hat: linke Sidbar, Content und rechte Sidebar. Das schöne ist der Content: $content <img src='http://www.costel-marian.de/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  (das Paragraph This is the default template kann man natürlich löschen).</p>
<p>Dann nichts wie hin in eine RW Seite bringen.</p>
<p><strong>5. Die Daten einer RW-Seite ins Spiel bringen</strong><br />
<strong>1.</strong> Gleich unter der deaktivierten HTML Seite in RW jetzt eine Weiterleitungsseite erstellen.<br />
Die gleiche Angaben für den Seitentitel, Ordnername und Dateiname die einmal die HTML Seite hatte bei dieser Seite eingeben.<br />
Und in der Seiteneinstellungen/Plugin-Parameter (der letzten Icon in diesem Seiteneinstellungen-Fenster) wird muss der vollen Pfad zu dem Shop eingegeben (etwas in der Richtung http://www.deine_seite.de/shop/index.php)</p>
<p>Publizieren.</p>
<p><strong>2.</strong> Öffnet man die index.php die man vom Server runtergeladen hat, muss man hier nur die Worte mit dem Dollarzeichen aus der Datei verteilen.</p>
<p>Aber zuerst etwas über den !DOCTYPE<br />
Meistens ist so dass die Vorlagen von RW einen</p>
<pre class="brush: xml;">&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;</pre>
<p> haben.<br />
Der von osCommerce ist</p>
<pre class="brush: xml;">&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.01 Transitional//EN&quot;&gt;</pre>
<p>Ich habe nicht gecheckt aber ich habe den </p>
<pre class="brush: xml;">&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;&gt;</pre>
<p> benutzt. Ich bin noch nicht dazugekommen zu sehen ob der Code valid ist.</p>
<p>Zwei Sachen aus dem
<pre class="brush: xml;">&lt;head&gt;</pre>
<p> müssen rein.<br />
Einmal &lt;head&gt; selber muss mit &lt;html $htmlparams> geändert werden. Und in dem head der Datei muss auch noch</p>
<pre class="brush: xml;">&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;stylesheet.css&quot;&gt;</pre>
<p> eingefügt werden.</p>
<p>Um mal schnell ein Erfolgserlebnis zu haben, zumindest bis zu einer späteren Entschlackung oder Umverteilung, würde ich in der Sidebar der Datei eine Tabelle erstellen und dadrin alle Boxes aus dem Shop die links und rechts sind reinwerfen:</p>
<pre class="brush: xml;">
&lt;table border=&quot;0&quot; cellspacing=&quot;0&quot; cellpadding=&quot;1&quot;&gt;
	&lt;tr&gt;&lt;td&gt;$cartbox&lt;/td&gt;&lt;/tr&gt;
	&lt;tr&gt;&lt;td&gt;$maninfobox&lt;/td&gt;&lt;/tr&gt;
	&lt;tr&gt;&lt;td&gt;$orderhistorybox&lt;/td&gt;&lt;/tr&gt;
	&lt;tr&gt;&lt;td&gt;$bestsellersbox&lt;/td&gt;&lt;/tr&gt;
	&lt;tr&gt;&lt;td&gt;$reviewsbox&lt;/td&gt;&lt;/tr&gt;
	&lt;tr&gt;&lt;td&gt;$tellafriendbox&lt;/td&gt;&lt;/tr&gt;
	&lt;tr&gt;&lt;td&gt;$languagebox&lt;/td&gt;&lt;/tr&gt;
	&lt;tr&gt;&lt;td&gt;$currenciesbox&lt;/td&gt;&lt;/tr&gt;
	&lt;tr&gt;&lt;td&gt;$catmenu&lt;/td&gt;&lt;/tr&gt;
	&lt;tr&gt;&lt;td&gt;$categorybox&lt;/td&gt;&lt;/tr&gt;
	&lt;tr&gt;&lt;td&gt;$manufacturerbox&lt;/td&gt;&lt;/tr&gt;
	&lt;tr&gt;&lt;td&gt;$whatsnewbox&lt;/td&gt;&lt;/tr&gt;
	&lt;tr&gt;&lt;td&gt;$specialbox&lt;/td&gt;&lt;/tr&gt;
	&lt;tr&gt;&lt;td&gt;$searchbox&lt;/td&gt;&lt;/tr&gt;
	&lt;tr&gt;&lt;td&gt;$informationbox&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</pre>
<p>Diesen Text einfach hinter
<pre class="brush: xml;">&lt;div id=&quot;sidebarContent&quot;&gt;</pre>
<p> kopieren.</p>
<p>Das Wort Test aus dem content mit den fünf Tabellen ändern:</p>
<pre class="brush: xml;">
&lt;table border=&quot;0&quot; width=&quot;100%&quot; cellspacing=&quot;0&quot; cellpadding=&quot;1&quot;&gt;
    &lt;tr class=&quot;headerNavigation&quot;&gt;
        &lt;td class=&quot;headerNavigation&quot;&gt;
            $breadcrumbs
        &lt;/td&gt;
        &lt;td align=&quot;right&quot; class=&quot;headerNavigation&quot;&gt;
            $myaccountlogoff | $cartcontents | $checkout

        &lt;/td&gt;
    &lt;/tr&gt;
&lt;/table&gt;

&lt;table border=&quot;0&quot; width=&quot;100%&quot; cellspacing=&quot;3&quot; cellpadding=&quot;3&quot;&gt;
  &lt;tr&gt;
    &lt;td valign=&quot;top&quot;&gt;
      &lt;p&gt;$content&lt;/p&gt;
      &lt;p&gt; &lt;/p&gt;
    &lt;/td&gt;
  &lt;/tr&gt;
&lt;/table&gt;

&lt;table border=&quot;0&quot; width=&quot;100%&quot; cellspacing=&quot;0&quot; cellpadding=&quot;1&quot;&gt;
  &lt;tr class=&quot;footer&quot;&gt;
    &lt;td class=&quot;footer&quot;&gt;  $date  &lt;/td&gt;
    &lt;td align=&quot;right&quot; class=&quot;footer&quot;&gt;  $numrequests  &lt;/td&gt;
  &lt;/tr&gt;
&lt;/table&gt;

&lt;br&gt;
&lt;table border=&quot;0&quot; width=&quot;100%&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;
  &lt;tr&gt;
    &lt;td align=&quot;center&quot; class=&quot;smallText&quot;&gt;
      $footer_text
    &lt;/td&gt;
  &lt;/tr&gt;
&lt;/table&gt;

&lt;br&gt;

  &lt;table border=&quot;0&quot; cellpadding=&quot;3&quot; cellspacing=&quot;0&quot; width=&quot;100%&quot;&gt;
      &lt;tr&gt;
        &lt;td align=&quot;center&quot; class=&quot;smallText&quot;&gt;
          Simple Template System by &lt;a href=&quot;http://www.diamondsea.com/&quot;&gt;DiamondSea.com&lt;/a&gt;&lt;br&gt;
          STS v4.5.3 by &lt;a href=&quot;http://soundsgoodpro.com&quot;&gt;
			SoundsGoodProductions.com&lt;/a&gt;&lt;br&gt;
        &lt;/td&gt;
      &lt;/tr&gt;
  &lt;/table&gt;
</pre>
<p>Die Datei speichern und auf dem Server bringen<br />
ABER NICHT MEHR DA WO SIE EINMAL WAR sondern in dem Ordner catalog/includes/sts_template/name_der_vorlage und wenn sie da ist auch umbenennen in sts_template.html (die alte sts_template.html von da kann man davor löschen).</p>
<p>Damit wäre die Einbindunng des Shops an der Homepage die mit RW gebaut wurde de facto zu Ende. Man müsste jetzt ein bißchen an den Farben rummurksen.</p>
<p><strong>6. Einige Änderungen an dem Shop</strong><br />
<strong>1.</strong> Zuerst der breadcrumb des Shops soll geändert werden. Die Startseite befindet sich in der Navigation der Seite, also muss da nicht mehr sein. In Shop selber der breadcrumb soll ab Katalog anfangen.<br />
Dazu in der Datei catalog/includes/application_top.php (vielleicht diese Datei application_top.php zuerst duplizieren und dem Namen application_top original.php damit man weisst das hier eine Änderung gibt) nach</p>
<pre class="brush: php;">$breadcrumb-&gt;add(HEADER_TITLE_TOP, HTTP_SERVER);</pre>
<p> suchen und mit</p>
<pre class="brush: php;">//  $breadcrumb-&gt;add(HEADER_TITLE_TOP, HTTP_SERVER);</pre>
<p> ändern.<br />
Speichern. Fertig.</p>
<p><strong>2.</strong> Änderungen in stylesheet.css<br />
Diese Datei ist zuständig mit den Formatierungen und Farben im Shop.<br />
Am besten benutzt man CSSEdit da mit dem Programm kann man die Seite vom Server laden und dann die Änderungen in einer Art Cache halten (dadurch sieht man auch gleich was man macht. Plus in dem breadcrumb des Programms sieht man in welchem Bereich das Element sich befindet. Man kann dann auch die Änderungen direkt auf dem Server speichern. Auf jeden Fall die Datei stylesheet.css dupliziern und die Änderungen müssen hier gemacht werden. Es gibt Elemente die auch in der gelinkten CSS Dateien der Vorlage (wie Linkfarben). Sie können natürlich zu Rate gezogen werden so nah wie möglich das Aussehen zu bringen.</p>
<p>Eine Änderung müsste wahrscheinlich in BODY vorgenommen werden: es geht um margin: 0px. Wahrscheinlich müsste das weg sein (aber es hängt sicherlich ob das mit den Daten aus der Vorlage kolidiert). Wenn die margin gelöscht wird und keine Änderung passiert dann kann man sie auch lassen.</p>
<p><strong>-</strong> Apropos breadcrumb. In der Datei ist</p>
<pre class="brush: css;">TR.headerNavigation {
  background: #bbc3d3;
}</pre>
<p>Ich habe die Angabe des backgrounds gelöscht und habe mit</p>
<pre class="brush: css;">TR.headerNavigation {
  font-size: 11px;
}</pre>
<p> geändert. Die Angabe</p>
<pre class="brush: css;">A.headerNavigation {
  color: #FFFFFF;
}</pre>
<p> habe ich ganz gelöscht. Das gleiche auch mit:</p>
<pre class="brush: css;">A.headerNavigation:hover {
  color: #ffffff;
}</pre>
<p> Und die auch:</p>
<pre class="brush: css;">TD.headerNavigation {
  font-family: Verdana, Arial, sans-serif;
  font-size: 10px;
  background: #bbc3d3;
  color: #ffffff;
  font-weight : bold;
}</pre>
<p> habe ich ganz gelöscht.</p>
<p><strong>-</strong> Aus </p>
<pre class="brush: css;">TD.footer {
  font-family: Verdana, Arial, sans-serif;
  font-size: 10px;
  background: #bbc3d3;
  color: #ffffff;
  font-weight: bold;
}</pre>
<p> des Footers habe ich nur font-size: 10px gelassen und</p>
<pre class="brush: css;">TR.footer {
  background: #bbc3d3;
}</pre>
<p> gelöscht.</p>
<p><strong>-</strong> Der Infoboxes habe ich die Hintergrundfarbe gelöscht, dafür Ränder gegeben:<br />
Aus
<pre class="brush: css;">.infoBox {
  background: #b6b7cb;
}</pre>
<p>wurde</p>
<pre class="brush: css;">.infoBox {
	border: 1px solid #286fa6;
	border-spacing: 1px;
}</pre>
<p>Für deren Contents habe ich die Hintergrundfarbe gelöscht und nur die Größe der Schrift gelassen:<br />
Aus
<pre class="brush: css;">.infoBoxContents {
  background: #f8f8f9;
  font-family: Verdana, Arial, sans-serif;
  font-size: 10px;
}</pre>
<p>wurde
<pre class="brush: css;">.infoBoxContents {
  font-size: 10px;
}</pre>
<p><strong>-</strong> Bei deren Überschriften bante es sich ein Problem. Zwar CSS codemässig habe ich aus</p>
<pre class="brush: css;">TD.infoBoxHeading {
  font-family: Verdana, Arial, sans-serif;
  font-size: 10px;
  font-weight: bold;
  background: #bbc3d3;
  color: #ffffff;
}</pre>
<p> nur das gelassen:</p>
<pre class="brush: css;">TD.infoBoxHeading {
  font-size: 10px;
  background: #286FA6;
  color: #ffffff;
}</pre>
<p> aber ich konnte die Ecken nicht finden.<br />
Sie sind in der php Code versteckt:<br />
In der Datei catalog/includes/classes/boxes.php gibt es ein Bereich dafür:</p>
<pre class="brush: php;">
    function infoBoxHeading($contents, $left_corner = true, $right_corner = true, $right_arrow = false) {
      $this-&gt;table_cellpadding = '0';

      if ($left_corner == true) {
        $left_corner = tep_image(DIR_WS_IMAGES . 'infobox/corner_left.gif');
      } else {
        $left_corner = tep_image(DIR_WS_IMAGES . 'infobox/corner_right_left.gif');
      }
      if ($right_arrow == true) {
        $right_arrow = '&lt;a href=&quot;' . $right_arrow . '&quot;&gt;' . tep_image(DIR_WS_IMAGES . 'infobox/arrow_right.gif', ICON_ARROW_RIGHT) . '&lt;/a&gt;';
      } else {
        $right_arrow = '';
      }
      if ($right_corner == true) {
        $right_corner = $right_arrow . tep_image(DIR_WS_IMAGES . 'infobox/corner_right.gif');
      } else {
        $right_corner = $right_arrow . tep_draw_separator('pixel_trans.gif', '11', '14');
      }
</pre>
<p>Den habe ich mit dem geändert:</p>
<pre class="brush: php;">
    function infoBoxHeading($contents, $left_corner = true, $right_corner = true, $right_arrow = false) {
      $this-&gt;table_cellpadding = '0';

      if ($left_corner == true) {
        $left_corner = '';
      } else {
        $left_corner = '';
      }
      if ($right_arrow == true) {
        $right_arrow = '&lt;a href=&quot;' . $right_arrow . '&quot;&gt;' . tep_image(DIR_WS_IMAGES . 'infobox/arrow_right.gif', ICON_ARROW_RIGHT) . '&lt;/a&gt;';
      } else {
        $right_arrow = '';
      }
      if ($right_corner == true) {
        $right_corner = '';
      } else {
        $right_corner = '';
      }
</pre>
<p>Noch einige Ändereungen die ich gemacht habe (sicherlich sind sie nicht die einzigen möglichen aber sie waren genug das Ergebnis zu haben):<br />
<strong>-</strong> Die Backgroundfarbe gelöscht in:</p>
<pre class="brush: css;">TR.accountHistory-odd, TR.addressBook-odd, TR.alsoPurchased-odd, TR.payment-odd, TR.productListing-odd, TR.productReviews-odd, TR.upcomingProducts-odd, TR.shippingOptions-odd {
  background: #f8f8f9;
}</pre>
<p><strong>-</strong> Eine andere Farbe der border gegeben. Aus:</p>
<pre class="brush: css;">TABLE.productListing {
  border: 1px;
  border-style: solid;
  border-color: #b6b7cb;
  border-spacing: 1px;
}</pre>
<p>habe ich das:</p>
<pre class="brush: css;">TABLE.productListing {
	border: 1px solid #286fa6;
	border-spacing: 1px;
}</pre>
<p>Aus:</p>
<pre class="brush: css;">.productListing-heading {
  font-family: Verdana, Arial, sans-serif;
  font-size: 10px;
  background: #b6b7cb;
  color: #FFFFFF;
  font-weight: bold;
}</pre>
<p>habe ich zwei Angaben gemacht:</p>
<pre class="brush: css;">.productListing-heading {
  font-size: 10px;
  background: #286FA6;
  color: #ffffff;
}

a.productListing-heading {
	color: #ffffff;
}</pre>
<p><strong>-</strong> Die Header der Seite habe geändert. Aus:</p>
<pre class="brush: css;">TD.pageHeading, DIV.pageHeading {
  font-family: Verdana, Arial, sans-serif;
  font-size: 20px;
  font-weight: bold;
  color: #9a9a9a;
}</pre>
<p>wurde:</p>
<pre class="brush: css;">TD.pageHeading, DIV.pageHeading {
	font-size: 20px;
	color: #286FA6;
}</pre>
<p><strong>-</strong> Auch bei den Schriften habe ich etwas geändert:</p>
<pre class="brush: css;">TD.main, P.main {
  font-family: Verdana, Arial, sans-serif;
  font-size: 11px;
  line-height: 1.5;
}</pre>
<p>blieb nur:</p>
<pre class="brush: css;">TD.main, P.main {
	line-height: 1.4;
}</pre>
<p><strong>-</strong> Der Besucher selbst:</p>
<pre class="brush: css;">SPAN.greetUser {
  font-family: Verdana, Arial, sans-serif;
  font-size: 12px;
  color: #f0a480;
  font-weight: bold;
}</pre>
<p>wurde ein bißchen geändert:</p>
<pre class="brush: css;">SPAN.greetUser {
	color: #286FA6;
	font-size: 13px;
}</pre>
<p>1px zw. den Buchstaben habe ich für den Fettdruck:</p>
<pre class="brush: css;">b, strong {
	font-weight: bold;
	letter-spacing: 1px;
}</pre>
<p><strong>-</strong> Und der Text der auf der ersten Seite grün unterlegt war:</p>
<pre class="brush: css;">.messageStackSuccess { font-family: Verdana, Arial, sans-serif; font-size: 10px; background-color: #99ff00; }</pre>
<p>habe ihn blau unterlegt, etwas größer gemacht und in weissen Grossbuchstaben erscheinen lassen:</p>
<pre class="brush: css;">.messageStackSuccess {
	background-color: #286FA6;
	text-transform: uppercase;
	color: white;
	font-size: 11px;
}</pre>
<p>Wie man sieht der CSS Code ist vol vonn TRs und TDs. Das weil die Seite auch in Tabellen gebaut ist. Meine Meinung ist (im Nachhinein wohl gemerkt) das so eine Aufteilung gar nicht schlecht für die Seite ist. Die Produkte (deren Header, Erklärungen, Icons etc) sind auch fast tabelarisch gebaut. Deswegen jetzt ein Umstrukturierung in divs müsste eine ganz andere stylessheet.css haben.</p>
<p>Aber ich bin mir sicher dass andere User ein Schmuckstück davon machen werden.<br />
Es sind Pictograme die geändert werden müssen und das ist wahrscheinlich die schwerere Aufgabe.</p>
<p>Auf jeden Fall man kann in Schnellverfahren einen Shop in einer RW Homepage einbinden.</p>
<p>Ich bitte um Verständnis wenn ich vielleicht irgendwo ein Fehler gemacht habe. Bitte natürlich auch eine Mitteilung wenn das sein sollte.<br />
Die Einbindung ist nicht schwer und wahrscheinlich kommt man auch selber zurecht wenn das Prinzip verstanden wurde.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.costel-marian.de/?feed=rss2&#038;p=12</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Implementierung der PHP Applikationen in RW &#8211; allgemeine Betrachtung</title>
		<link>http://www.costel-marian.de/?p=11</link>
		<comments>http://www.costel-marian.de/?p=11#comments</comments>
		<pubDate>Sun, 24 Feb 2008 12:43:33 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[RW-Implementierung]]></category>
		<category><![CDATA[Rapidweaver]]></category>

		<guid isPermaLink="false">http://costel-marian.de/wordpress/?p=11</guid>
		<description><![CDATA[Ich möchte in diesem Beitrag allgemein über eine Implementierung einer PHP Applikation in einer von RW gebauten Hompage schreiben. Dadurch soll noch einmal geklärt werden wie RW, die Homepage die mit ihm erstellt worden ist und die PHP Applikation &#8220;zusammenarbeiten&#8221;. 1. Wenn man eine Seite in RW erstellt sind der Titel der Seite, ihr Ordnername [...]]]></description>
			<content:encoded><![CDATA[<p>Ich möchte in diesem Beitrag allgemein über eine Implementierung einer PHP Applikation in einer von RW gebauten Hompage schreiben.<br />
Dadurch soll noch einmal geklärt werden wie RW, die Homepage die mit ihm erstellt worden ist und die PHP Applikation &#8220;zusammenarbeiten&#8221;.<span id="more-11"></span></p>
<p>1. Wenn man eine Seite in RW erstellt sind der Titel der Seite, ihr Ordnername und ihr Dateiname für RW sehr wichtig (natürlich) weil davon leitet RW bei dem Export und bei der Publizierung den Pfad für die Navigation. RW benutzt den normalen HTML URL System wo hinter dem href=&#8221; wenn einen Schritt weiter in der Ordnerstruktur gehen soll wird der Ordnername geschrieben und dann die Dateiname: href=&#8221;ordner/dateiname.endung und für einen Schritt zurück in der Ordnerstruktur zuerst ../ vorkommt und dann der Ordnername und die Dateiname: href=&#8221;../ordner/dateiname.endung</p>
<p>2. Diese Elemente der Navigation sind wichtig um die andere Seiten die in der Homepage sind zu &#8220;wissen&#8221; wo die eine Seite sich befindet. So eine Aussage ist wohl selbstverständlich aber ich schreibe sie trotzdem weil sie aber die Grundlage der Weiterleitung ist. Und mit dieser Weiterleitung funktioniert so eine PHP Implementierung:<br />
Man muss den Seiten aus der bestehenden Homepage &#8220;sagen&#8221; dass eine neue Seite hinzugekommen ist und wie sie heisst. Deswegen wird in der Seiteneinstellungen/Allgemeine Einstellungen (der ersten Icon in diesem Fenster) für die Startseite der PHP Applikation eine Weiterleitungseite gebaut wo als Seitentitel der Name der Seite wie in der Navigation erscheinen soll, für den Ordnername der Ordner wo auf dem Server sich die PHP Applikation befindet und für den Dateinamen der Name der Datei wo die PHP Applikation startet.<br />
RW braucht auch den vollen Pfad zu der Applikation. In der Seiteneinstellungen/Plugin-Parameter (der letzten Icon in diesem Fenster) wird also den vollen Pfad eingegeben so dass wenn man hier Enter drückt in dem Fenster die Applikation erscheint. (Dafür müsste allerdings die Applikation installiert worden sein.)</p>
<p>Wir sind immernoch bei den Grundlagen der &#8220;Zusammenarbeit&#8221; also noch nichts tun und weiter lesen:<br />
3. So gesehen, wäre die Implementierung jetzt schon fertig, allerdings sehen die Seiten der Homepage ganz anders aus als die PHP Applikation.<br />
Das ist nur weil die PHP Applikation noch nichts von der RW-Vorlage &#8220;weisst&#8221;. All den Code der bei dem Export und Publizierung der von RW erzeugt und in dem Quellcode der Seiten sich befindet wird NICHT auch in der Datei der PHP Applikation geschrieben. RW erzeugt bei dem oberen Schritt nur Navigationspfade für die Seiten die das Programm erstellt, nicht in den Dateien aus der Weiterleitung.<br />
Diesen Code muss manuell in der Datei geschrieben.<br />
Dadurch stellen sich zwei Problematiken:<br />
A. die Navigation in der PHP Applikation upzudaten wenn neue Seiten in Projekt neu kommen<br />
B. die Implementierung der RW-Vorlage in der Applikation.</p>
<p>Für das Updaten der Navigation in der Applikation muss gesorgt werden wenn neue Seiten in Projet kommen. Und das MANUELL.</p>
<p>Die Implementierung der RW-Vorlage muss natürlich auch manuell geschehen (RW schreibt nichts in den Dateien). Dafür bräuchten wir eine Mustervorlage (woher wir den Code kopieren und in der Datei der Applikation einsetzen sollen).<br />
Und für diesen Schritt, BEVOR die Weiterleitungseite erstellt wird, muss eine normle Seite erstmal erstellt. Ich nehme dazu eine HTML Seite wo ich in dem Content nur ein Wort schreibe: Test<br />
Diese Seite bekommt alle andere Merkmale der Homepage: Vorlagenstil, Farben, Sidebar Position, etc, etc, etc. Das damit später alles schon im Code ist.<br />
UND NATÜRLICH DIE ANGABEN AUS DEM PUNKT 2. BEZÜGLICH NAVIGATION &#8211; apropos, die Dateinamen der PHP Applikationen haben immer .php Endung!<br />
Als würde diese Seite die PHP Applikation sein nur sie hat nur ein Wort dadrin.<br />
Man lässt sie einmal exportieren und dannach deaktiviert sie und lässt sie auch nicht mehr in Menü angezeigt werden.<br />
Man lädt die entstandene Datei von Server runter um die Vorlage zu haben und<br />
NACH DIESEM SCHRITT WIRD ERST DIE PHP APPLIKATION INSTALLIERT.<br />
Das heisst man muss schon wissen wie der Name des Ordners und der Name der Datei der PHP Applikation heissen wird.<br />
Und das macht man jetzt damit bei der Publizierung diese HTML Seite nicht eine, durch die Installierung der PHP Applikation, schon bestehende Datei überschrieben wird!</p>
<p>Jetzt käme der Schritt 2. eine Weiterleitungseite in RW bauen und die Daten aus der runtergezogene Seite (die als Vorlage gillt) zu übertragen.</p>
<p>Das alles ist Idealfall. Können Fehler entstehen. Meistens hat man was vergessen (Farbe, Aussehen).<br />
Als Faustregel: die von der PHP Applikation installierte Startdatei (meistens index.php) auf dem Server duplizieren um eine Sicherung zu haben (index Kopie.php als Beispiel), dann die idex.php selbst umbenennen in index_.php (als Beispiel), die Weiterleitungseite deaktivieren und nicht mehr in dem Menü erscheinen lassen, die alte HTML Seite wieder aktivieren und im Menü erscheinen lassen, Enderungen machen und publizieren.<br />
Die Seite vom Server runterladen und das Spielchen wider zurück: HTML Seite deaktivieren, die Weiterleitungsseite aktivieren, publizieren und die Daten aus der runtergezogene Datei in den entsprechenden Datei/Dateien schreiben.</p>
<p>Kompliziert? Eigentlich nicht (würde ich sagen), aber es ist der einzige Weg (den ich bestreite und der mir logisch erscheint) um eine PHP Applikation in einer von RW gebauten Homepage zu integrieren.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.costel-marian.de/?feed=rss2&#038;p=11</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Implementierung der PHP Applikationen in RW &#8211; Gästebuch</title>
		<link>http://www.costel-marian.de/?p=9</link>
		<comments>http://www.costel-marian.de/?p=9#comments</comments>
		<pubDate>Sat, 08 Dec 2007 10:02:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[RW-Implementierung]]></category>
		<category><![CDATA[Rapidweaver]]></category>

		<guid isPermaLink="false">http://costel-marian.de/wordpress/?p=9</guid>
		<description><![CDATA[Es gibt inzwischen schon ein Gästebuch-Plugin für RapidWeaver. Dass diese Erweiterung noch sehr spartanisch ist, verstehe ich. Die Entwicklung ist gerade am Anfang. Allerdings gibt es, aus meiner Sicht, sehr viele Sicherheitslücken, so dass ich immernoch für eine Implementierung einer schon ausgereiften PHP Applikation plädiere. Das Gästebuch das ich hier vorstelle ist auch das gleiche [...]]]></description>
			<content:encoded><![CDATA[<p>Es gibt inzwischen schon ein Gästebuch-Plugin für RapidWeaver. Dass diese Erweiterung noch sehr spartanisch ist, verstehe ich. Die Entwicklung ist gerade am Anfang. Allerdings gibt es, aus meiner Sicht, sehr viele Sicherheitslücken, so dass ich immernoch für eine Implementierung einer schon ausgereiften PHP Applikation plädiere.<br />
Das Gästebuch das ich hier vorstelle ist auch das gleiche das in der Homepage eingebunden ist.<span id="more-9"></span></p>
<p><strong>Teil 1 &#8211;  Download und Installation des Gästebuches</strong></p>
<p>Gästebuch von <a href="http://www.stadtaus.com/php_scripts/guestbook_script/">STADTAUS.com</a> downloaden und installieren:<br />
1. Nach dem Entpacken der Ordner (z.Z. gbs1.9.2) in guestbook umbenennen.</p>
<p>2. in der Datei <strong>config.php</strong> die Änderungen vornehmen (siehe auch Erklärungen in der Datei guestbook_script_german.html aus dem Ordner docu Abschnitt Installation):<br />
- in dem Bereich:</p>
<pre class="brush: php;">
         $database['host']       = 'localhost';    // Database hostname
         $database['name']       = '';             // Database name
         $database['user']       = '';             // Database username
         $database['pass']       = '';             // Database password
         $database['prefix']     = 'gbs17_';</pre>
<p>ändern in:</p>
<pre class="brush: php;">
         $database['host']       = 'host_adresse_der_datenbank';
         $database['name']       = 'name_der_datenbank';
         $database['user']       = 'user';
         $database['pass']       = 'passwort';
         $database['prefix']     = 'gbs19_';</pre>
<p>- die Sparache ändern:</p>
<pre class="brush: php;">          $language               = 'en';</pre>
<p>in</p>
<pre class="brush: php;">          $language               = 'de';</pre>
<p>3. erwartet man Besucher die u.U. andere Sprachen mit Unicode Buchstaben benutzen dann in der Datei <strong>language.de.inc.php</strong> aus dem Ordner languages den Characterset ändern:</p>
<pre class="brush: php;">'txt_charset'                      =&gt; 'iso-8859-1',</pre>
<p>in</p>
<pre class="brush: php;">'txt_charset'                      =&gt; 'utf-8',</pre>
<p>4. den Ordner guestbook auf dem Server laden</p>
<p>5. wie in der Datei guestbook_script_german.html aus dem Ordner docu bei Installation beschrieben wird, muss jetzt das Gästebuch installiert werden.</p>
<p>6. Bei einer Kaffeepause würde ich einige Eintargungen machen um einfach zu sehen wie es funktioniert.<br />
Die User die sich mit phpMyAdmin auskennen und möchten Eintragungen aus anderen Gästebücher übernehmen würde ich die Seite <a href="http://php.svenheidrich.de/timestamp.html">Timestamp lesbar umwandeln</a> empfehlen für die timestamps:<br />
Es gibt leider keine Imprtmöglichkeit, also die Eintragungen werden per Copy &#038; Paste aus den anderen Gästebücher übernommen. Allerdings dieses Einfügen erzeugt die Eintragungen an der jetztige Zeit, so dass timestamps der Eintragungen geändert werden können (mit der Hilfe des oberen Link). Die timestamps sind in Datenbank bei gbs19_data.</p>
<p><strong>Teil 2 &#8211; Vorbereitung für die Anbindung in der Homepage</strong></p>
<p>Aber zuerst etwas zum Verstehen der Problematik:</p>
<p>Der Hauptbereich einer von RW erzeugten html Datei befindet sich in dem</p>
<pre class="brush: xml;">&lt;div id=&quot;content&quot;&gt;
	etc, etc, etc
&lt;/div&gt;</pre>
<p>In diesem &lt;div id=&quot;content&quot;&gt; muss auch der Hauptbereich des Gästebuches kommen. Alles andere: Sidebar, Navigation (Subnavigation), Footer, &lt;head&gt; etc kann man von einer anderer Datei übernehmen. Allerdings damit die Pfade richtig stimmen muss eine Datei genommen werden die auf der gleiche Stufe in der Homepage ist wo man das Gästebuch einsetzen möchte. Es ist meistens so, dass das Gästebuch eine der Hauptseiten ist. Auf der gleiche Stufe mit Kontakt, Impressum, index.html etc. Da index.html eine besondere Stellung nimmt (im Bezug auf Pfaden) würde ich nicht empfehlen diese Datei für die Übernahme der &#8220;Umgebung&#8221;.<br />
Ich würde eigentlich eine neue Seite erstellen ALS WÜRDE DIESE SEITE DAS GÄSTEBUCH SEIN.</p>
<p>Die zweite Problematik ist dass RW wird später diese Seite nicht &#8220;kontrolieren&#8221; können. Erzeugt man eine neue Seite später, wird diese Seite nicht in der Navigation des Gästebuches auftauchen. Sie muss per Hand (wenn sie in der Navigation des Gästebuches auftauchen muss) eingegeben werden.<br />
Diese Problematik entsteht weil das Gästebuch von der Datei index.php (aus dem umbenannten Ordner guestbook) angetrieben wird aber die Umgebung der Seite (Navigation, Sidebar, Vorlage, Footer etc, etc) aus einer html Datei, Template genannt, kommt. Und diese Datei ist main_layout.tpl.html aus dem Ordner /templates/default/<br />
Also es hilft nicht dem RW &#8220;zu sagen&#8221;:<br />
Die Seite die erzeugt wird soll main_layout.tpl.html heissen (Pfad siehe oben) weil das Gästebuch nicht damit angetrieben wird und die Links die man damit erzeugt zu &#8220;nichts&#8221; ankommen.<br />
Aber auch nicht die Seite die erzeugt wird soll index.php (aus dem Ordner guestbook) weil diese Datei eine php Datei ist und sie wird keine Links bekommen.<br />
Die einzige Möglichkeit ist eine Weiterleitungsseite zu index.php (aus dem Ordner guestbook). Dadurch &#8220;verstehen&#8221; die andere Seiten der Homepage wo das Gästebuch sich befindet. Nicht aber das Gästebuch selbst. So dass neue Seiten, oder Umgestaltung der Homepage muss immer in dieser Datei main_layout.tpl.html per Hand geschrieben werden.</p>
<p>Mit diesem Prinzip kann man eine PHP Applikation in RW anbinden. Ob Gästebücher, WordPress, Fotogalerien, andere Mail-Skripte, genealogischen Datenbanken, FTP-Server, Foren etc, es ist so gesehen egal. RW muss wissen wo die &#8220;Start&#8221;seite der Applikation ist. Der Rest ist die Handarbeit bei der Vorlage der Applikation um ein möglichst angepassten Aussehen mit der anderen Seiten der Homepage. Es gibt Applikationen die etwa leicht (wie hier) anzupassen sind, andere wie vielleicht WordPress etwas schwerer.</p>
<p>Und jetzt zu den Vorbereitungen:</p>
<p>1. eine HTML Seite erzeugen und sie in der Navigation da anbringen wo später das Gästebuch stehen wird.</p>
<p>2. Dieser Seite folgenden Änderungen vornehmen:<br />
- als Seitentitel und Browser-Titel den Namen Gästebuch geben (oder was auch immer)<br />
- als Ordnername guestbook_testordner<br />
- als Dateiname index.php<br />
- als Codierung was in der Datei language.de.inc.php festgelegt wurde<br />
- Ausgabe Standard<br />
- die Seite muss aktiviert und im Menü erscheinen<br />
- die Farb-, Sidebar- (etc) Änderungen die in Seitenspezifischen Vorlage-Teil nötig sind. Zu bedenken ist es hier dass u.U. (je nachdem wie breit die Vorlage ist die man benutzt) eine Einstellung ohne Sidebar (zusätlich) von Vorteil ist. Auch andere Einstellungen die einige Vorlagen habe wie Änderungsdatum z.B. (Vorlagen aus dem Hause multithemes.com) nichts bewirken. So ein Änderungsdatum wird von RW &#8220;kontrolliert&#8221;. Das Gästebuch hat kein Einfluss drauf. Sicherlich von Vorteil ist es die Benutzung von den eingebauten oder individuell erstellten Stile der Vorlage!<br />
- andere Einstellungen vornehmen wie Meta-Tags oder die RW-Unterstützung ein-, abschalten</p>
<p>3. Als Inhalt braucht man (kann man) einfach nur ein Wort zu schreiben. Ob der eigener Name oder etwas anderes ist es absolut egal.</p>
<p>4. Publizieren (ggf. exportieren)</p>
<p>5. Nach dem Publizieren diese Seite deaktivieren und im Menü nicht mehr anzeigen lassen.</p>
<p>6. Eine Weiterleitungsseite genau an der Stelle wo die gerade deaktivierten Seite sich befindet.</p>
<p>7. Dieser Weiterleitungsseite bekommt:<br />
- als Seitentitel und Browser-Titel Gästebuch (oder was auch immer die deaktivierte Seite bekommen hat)<br />
- als Ordnername jetzt der richtigen Ordnername der Gästebuch in diesem Fall guestbook<br />
- als Dateiname index.php<br />
- und in dem letzten Reiter des Fensters Seiteneinstellungen (Plugin-Parameter) in dem Feld URL den Pfad zu der index.php aus dem Ordner guestbook. Befindet sich dieser Ordner auf der gleiche Ebene mit Startdatei der Homepage (index.html) dann müsste in diesem Feld etwa: http://www.domainname.de/guestbook/index.php stehen</p>
<p>8. Speichern und publizieren.</p>
<p>Die Punkte 1, 2 und 3 werden benutzt bei der Anpassung des Teplates des Gästebuches und die Punkte 6, 7 und 8 teilen allen Seiten der Homepage mit wo jetzt das Gästebuch sich befindet.</p>
<p><strong>Teil 3 &#8211; Anpassung der Datei main_layout.tpl.html aus dem Ordner /templates/default/</strong></p>
<p>Diese Datei beinhaltet die 3 Bereiche die auch die zum Test erstellten, publizierten und dann deaktivierten HTML Seite beinhaltet.<br />
In diesen Bereichen Tauchen allerdings einige Variablen der Gästebuch-Applikation die immer zwischen { und } geschrieben werden. Die wichtigste ist natürlich {main_content} aus dem <body> die das Wort, das bei dem vorherrigen Punkt 3 im Inhalt festgelegt worden ist, ersetzen wird.<br />
Aber der Reihe nach:</p>
<p>Als Vorbereitung müssen die Dateien main_layout.tpl.html aus dem Ordner /templates/default/ und die Datei index.php aus dem Ordner guestbook_testordner in einem Texteditor wie TextWrangler geöffnet werden. Und wir erstellen einen neuen Textdokument (wahrscheinlich das Programm wird es untitled text benennen) umd dadrin die Codeteile einzufügen die wir brauchen.</p>
<p>Wir haben in main_layout.tpl.html drei Bereiche:<br />
<strong>1.</strong> !doctype<br />
<strong>2.</strong> &lt;head&gt; und<br />
<strong>3.</strong> &lt;body&gt;</p>
<p><strong>1.</strong> !doctype &#8211; Das Gästebuch benutzt XHTML 1.0 Transitional. Es kann sein dass die RW Vorlage ein strikten doctyp in der Datei index.php erstellt hat.<br />
So dass in der main_layout.tpl.html den Code:</p>
<pre class="brush: xml;">&lt;!doctype html public &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot;
    &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;&gt;
&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot; dir=&quot;{txt_content_direction}&quot;&gt;</pre>
<p>kopiert und in dem untitled text eingesetzt wird.</p>
<p><strong>2.</strong> &lt;head&gt; &#8211; In diesem Bereich der Datei main_layout.tpl.html hat das Gästebuch nur drei Unterbereiche:</p>
<pre class="brush: php;">&lt;title&gt;{txt_script_name} {txt_script_version} {txt_title}&lt;/title&gt;</pre>
<pre class="brush: xml;">&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=iso-8859-1&quot; /&gt;</pre>
<p>und eine ganze Latte von CSS Angaben unter
<pre class="brush: xml;">&lt;style type=&quot;text/css&quot;&gt;</pre>
<p>Aus der von RW publizierten (exportierten) index.php Datei (aus dem Ordner guestbook_testordner) kopieren wir den ganzen
<pre class="brush: xml;">&lt;head&gt;...&lt;/head&gt;</pre>
<p> Bereich und setzen in der untitled text Datei ein (hinter dem Code der schon da steht).<br />
Dadurch werden:<br />
- den richtigen Pfad zu dem Gästebuch,<br />
- alle Pfad-Angaben,<br />
- Einbindung der JavaScripts etc<br />
erstellt, die die RW Vorlage braucht, und dem Gästebuch zur Verfügung gestellt.</p>
<p>Aus der Datei main_layout.tpl.html kopieren wir die lange CSS Angaben Liste und setzen wir sie und VOR dem &lt;/head&gt; in dem untitled text ein.<br />
Dadurch werden auch die CSS Angaben die das Gästebuch selbst benötigt eingebunden.</p>
<p><strong>3.</strong> &lt;body&gt; &#8211; In diesem Bereich der Datei main_layout.tpl.html hat das Gästebuch nur ein Unterbereich: {main_content}. Das muss das Textwort ersetzen. Dafür:<br />
Aus index.php den ganzen Bereich von &lt;body&gt; bis zu Ende der Datei kopieren und in untitled text einsetzen (nach dem schon befindlichen Code).</p>
<p>Dann das Testwort suchen (muss sich in dem &lt;div id=&quot;content&quot;&gt; befinden) und da es mit {main_content} ersetzen.</p>
<p><strong>4.</strong> Am Schluss den ganzen Inhalt der in main_layout.tpl.html löschen und mit dem ganzen Inhalt der sich in untitled text sich befindet ersetzen.<br />
Speichern (ggf. auf dem Server laden).</p>
<p><strong>Gästebuch eingebunden!</strong></p>
<p><strong>Teil 4 &#8211; Einige Anpassungen für das Gästebuch</strong></p>
<p>1. Das Gästebuch soll eine Email Schicken bei einem Neueintrag:<br />
Die 1.9.2er Version ist in dieser Richtung noch nicht so eingestellt. Aber mit zwei Zusatzcodes kann es aber auch.<br />
Dazu muss die Datei sign.php so geändert werden:<br />
In der Datei diesen Code:</p>
<pre class="brush: php;">]/*****************************************************
  ** Settings
  *****************************************************/
          $script_root  = './';
          $script_title = '';
          $query_string = '?';
          $show_form    = 'true';
          $captcha_content = '';
          $captcha_note    = '';</pre>
<p>ersetzen mit:</p>
<pre class="brush: php;">/*****************************************************
  ** Settings
  *****************************************************/

          $script_root  = './';
          $script_title = '';
          $query_string = '?';
          $show_form    = 'true';
          $captcha_content = '';
          $captcha_note    = '';

          $empfaenger = 'deine@emailadresse.de';
          $betreff = 'Neuer Gästebucheintrag';
          $nachricht = 'Neuer Gästebucheintrag';
          $header = 'From: guestbook@domain_des_gaestebuches.de' . &quot;\r\n&quot; .
          'Reply-To: guestbook@domain_des_gaestebuches.de' . &quot;\r\n&quot; .
          'X-Mailer: PHP/' . phpversion();</pre>
<p>die Email Adressen müssen natürlich angepasst werden.</p>
<p>und dieser Code:</p>
<pre class="brush: php;">/*****************************************************
  ** Write data to database
  *****************************************************/
          while (list($key, $val) = each($new_form_fields))
          {
              $field_list[] = $val['name'];
          }

          $field_list = array_merge($field_list, array('timestamp', 'ip_address', 'hostname', 'user_agent'));

          if ($db-&gt;add_details($field_list, $form_data, $full_text)) {
              $message[]           = array('message' =&gt; $txt['txt_entry_added'], 'addition' =&gt; '');
              $guestbook_entries[] = $html_form_data;

              unset($show_form);
          } else {
              $message[] = array('message' =&gt; $txt['txt_add_entry_failed'], 'addition' =&gt; '');
          }</pre>
<p>muss mit diesem Code ersetzt werden:</p>
<pre class="brush: php;">/*****************************************************
 ** Write data to database
 *****************************************************/
        while (list($key, $val) = each($new_form_fields))
        {
            $field_list[] = $val['name'];
        }

        $field_list = array_merge($field_list, array('timestamp', 'ip_address', 'hostname', 'user_agent'));

        if ($db-&gt;add_details($field_list, $form_data, $full_text)) {
            mail($empfaenger, $betreff, $nachricht, $header);
            $message[]           = array('message' =&gt; $txt['txt_entry_added'], 'addition' =&gt; '');
            $guestbook_entries[] = $html_form_data;

            unset($show_form);
        } else {
            $message[] = array('message' =&gt; $txt['txt_add_entry_failed'], 'addition' =&gt; '');
        }</pre>
<p>2. Der Zeichensatz des Gästebuch und die Größe des Zeichensatzes soll gleich mit dem von der Homepage:<br />
Die Liste der CSS Anpassungen die in der Datei main_layout.tpl.html eingefügt worden ist beinhaltet in:</p>
<pre class="brush: css;">body, p, td, br, form, div, span {
      font-family:Tahoma,Helvetica,Geneva,Sans-serif,sans-serif;
      font-size:9pt;
      }</pre>
<p>die Zeichensätze des Gästebuches. Die überschreiben die Angaben aus der RW-Vorlage in einigen Punkten wie body oder p etc.<br />
Einfach ist es den ganzen oberen Code zu löschen. Möchte man etwas anderes, hier sind die Änderungen zu machen.</p>
<p>3. Die Farben der Einträge:<br />
Das Gästebuch stellt abwechselnd die Einträge in einer dunklen und einer helleren Farbe. Diese Farben sind auch in dieser Liste unter</p>
<pre class="brush: css;">.darkrow {
      background-color:#D2DBFF;
  }

  .lightrow {
      background-color:#ECF0FF;
  }</pre>
<p>4. Die Breite der Einträge:<br />
Die Breite der Tabelle aus der Datei entry_detail.tpl.html ist mit 500px angegeben:</p>
<pre class="brush: xml;">&lt;table border=&quot;0&quot; cellpadding=&quot;4&quot; cellspacing=&quot;1&quot; width=&quot;500&quot;&gt;</pre>
<p>Einfach diese Größe an der Breite des Contents der Homepage ändern</p>
<p>5. Die Größe von &#8220;Gästebucheinträge anzeigen&#8221; und &#8220;xx Einträge · Seite x von xx&#8221;:<br />
in der Datei entries.tpl.html &#8220;Gästebucheinträge anzeigen&#8221; befindet sich unter:</p>
<pre class="brush: xml;">&lt;h3&gt;{txt_display_entries}&lt;/h3&gt;</pre>
<p>Einfach eine andere Überschriftgröße angeben.<br />
Für &#8220;xx Einträge · Seite x von xx&#8221; ist der Code:</p>
<pre class="brush: xml;">&lt;h4 style=&quot;margin-top:30px;&quot;&gt;{entries} {txt_entries} · {txt_page} {currentpage} {txt_page_of} {allpages}&lt;/h4&gt;</pre>
<p>Man kann also eine andere Überschriftgröße nehmen und die Entfernung zu &#8220;Ins Gästebuch eintragen&#8221; ändern.</p>
<p>6. Änderungen für das Eingabe-Layout:<br />
- Die Größe von &#8220;Ins Gästebuch eintragen&#8221;: in der Datei sign.tpl.html die Überschriftgröße anpassen in dem Code</p>
<pre class="brush: xml;">&lt;h3&gt;{txt_sign_guestbook}&lt;/h3&gt;</pre>
<p>- Smileys von der rechten Seite unter den Angabenfelder positionieren:<br />
Die Tabele aus der Datei form_detail.tpl.html hat 3 Spalten und die Smileys werden neben dem Kommentar-Feld gesetzt. Die 30 Gesichter werden u.U. eine viel zu lange Zelle in Anspruch nehmen. Deswegen habe ich in dem unteren Code die Tabelle nur mit zwei Spalten gesetzt und die Smileys kommen damit unter dem Kommentar-Feld. Den ganzen Code aus form_detail.tpl.html ersetzen mit:</p>
<pre class="brush: xml;">&lt;table border=&quot;0&quot;&gt;
	&lt;tbody&gt;
		&lt;tr&gt;
			&lt;td&gt;{label:%name%}*&lt;/td&gt;
			&lt;td&gt;{field:%name%}&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr&gt;
			&lt;td&gt;{label:%location%}&lt;/td&gt;
			&lt;td&gt;{field:%location%}&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr&gt;
			&lt;td&gt;{label:%homepage%}&lt;/td&gt;
			&lt;td&gt;{field:%homepage%}&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr&gt;
			&lt;td&gt;{label:%email%}&lt;/td&gt;
			&lt;td&gt;{field:%email%}&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr valign=&quot;top&quot;&gt;
			&lt;td&gt;{label:%comment%}*    &lt;/td&gt;
			&lt;td&gt;{field:%comment%}&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr valign=&quot;top&quot;&gt;
			&lt;td&gt;&lt;/td&gt;
			&lt;td&gt;
				&lt;script language=&quot;JavaScript&quot; type=&quot;text/javascript&quot;&gt;
				&lt;!--
				function emoticons(sign)
				{
					var text_area = document.guestbookform.comment;

					text_area.value += sign;
					text_area.focus();
				}
				//--&gt;
				&lt;/script&gt;
				{emoticon_matrix}
			&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr valign=&quot;top&quot;&gt;
			&lt;td&gt;&lt;/td&gt;
			&lt;td&gt;
				&lt;p style=&quot;width: 350px;&quot;&gt;{captcha_note}&lt;/p&gt;
				&lt;p&gt;{captcha_content}&lt;br /&gt; &lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr valign=&quot;top&quot;&gt;
			&lt;td&gt;&lt;/td&gt;
			&lt;td&gt;
				{field:%preview%}
				{field:%send%}
			&lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;

&lt;p&gt;
* = {txt_mandatory_fields}
&lt;/p&gt;</pre>
<p>7. Der Text vor CAPTCHA: in der Datei language.de.inc.php ist die deutsche Übersetzung der Applikation. Einfach den Text für txt_captcha_note auswechseln mit was Ihr meint dass es besser mit Eueren Homepage-Styl passt. Natürlich die anderen Texte konnt ihr auch ändern.</p>
<p>Ich hoffe dass Ihr genug Anhaltspunkte habt das Gästebuch so anzupassen wie Ihr es wünscht.<br />
Ich wünsche Euch viele schöne Einträge und wenig Spammer. (Die werden Euch aber finden wenn Ihr
<pre class="brush: xml;">&lt;meta name=&quot;robots&quot; content=&quot;all&quot; /&gt;</pre>
<p> in dem &lt;header&gt; von main_layout.tpl.html habt weil Google dann das Gästebuch indexiert. Also besser wäre natürlich:
<pre class="brush: xml;">&lt;meta name=&quot;robots&quot; content=&quot;none&quot; /&gt;</pre>
<p> )</p>
]]></content:encoded>
			<wfw:commentRss>http://www.costel-marian.de/?feed=rss2&#038;p=9</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WebYep Variationen &#8211; mit Accordion</title>
		<link>http://www.costel-marian.de/?p=10</link>
		<comments>http://www.costel-marian.de/?p=10#comments</comments>
		<pubDate>Wed, 05 Dec 2007 08:18:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Plugin Zusammensetzungen]]></category>
		<category><![CDATA[Rapidweaver]]></category>

		<guid isPermaLink="false">http://costel-marian.de/wordpress/?p=10</guid>
		<description><![CDATA[Ich muss von Anfang an sagen dass diese Kombination vollständig machbar ist (siehe meine Implementierung) aber nur mit der Accordion Version 1.0. Ab der Version 1.1, Accordion wechselt die JavaScript Dateien (von scriptaculous auf mootools gewechselt) und dadurch auch den Code. Normalerweise müssen die WebYep Elemente aus dem zugewiesenen Bereich im Code einen eindeutigen Namen [...]]]></description>
			<content:encoded><![CDATA[<p>Ich muss von Anfang an sagen dass diese Kombination vollständig machbar ist (siehe <a href="http://costel-marian.de/rw-seiten/webyep_variationen/mit_accordion/mit_accordion.php">meine Implementierung</a>) aber nur mit der Accordion Version 1.0. Ab der Version 1.1, Accordion wechselt die JavaScript Dateien (von scriptaculous auf mootools gewechselt) und dadurch auch den Code.</p>
<p>Normalerweise müssen die WebYep Elemente aus dem zugewiesenen Bereich im Code einen eindeutigen Namen haben (so z. B. wie FotoLinks und FotoRechts). In der Blocks Implementierung wurde das mit BlockSchleifeLinks und BlockSchleifeRechts, BlocktitelLinks und BlocktitelRechts, TextLinks und TextRechts etc. realisiert. Da war es einfach weil es zwei Bereiche auf der Seite waren und somit einfach zu disponieren.<br />
Bei Accordion müsste eigentlich viel einfacher gehen weil die WebYep Blöcke sich in Accordion Bereiche befinden müssen.<span id="more-10"></span><br />
Es ist im Grunde auch so nur das Problem ist dass Accordion ab der Version 1.1 diese Bereiche bei der Erstellung in RW nummeriert und sie im Code schreibt. Eine WebYep Implementierung kann nicht mit vorgefertigte Nummerierungen arbeiten weil diese Nummerierung von dem WebYep-System vergeben wird. Dieses Verhalten von Accordion ist anders bei der Version 1.0. Die Nummerierung von Bereiche fand nicht statt so dass leider nur diese Version kann man benutzen wenn man WebYep und Accordion zusammenmischen möchte.</p>
<p>Das Verfahren dafür beinhaltet drei Seiten Erstellungen und eine Zusammensetzung der Codes aus zwei Seiten davon:<br />
1. Die Erstellung der Accordion Seite (mit der Accordion Einstellungen). Diese Seite muss zuerst publiziert werden um den Code zu haben aber auch damit die JavaScript Dateien auf dem Server auch beschrieben werden.<br />
2. Die Erstellung der WebYep Seite (mit der Festlegung der Bereiche die auf der Seite auftauchen sollen) und ihrer Publizierung in dem gleichen Ordner der Accordion Seite<br />
Diese zwei Seite stören sich namentlich nicht weil die Accordion Seite die html Endung hat und die WebYep Seite php Endeung hat.<br />
3. Die Codes zusammenbauen<br />
4. Am Schluss die Erstellung einer Weiterleitung Seite die auf der &#8220;zusammengesetzte&#8221; Seite hinweist.</p>
<p><strong>1. Die Erstellung der Accordion Seite</strong><br />
<strong>1.1.</strong> Dafür muss Accordion 1.0 installiert werden (die aktuellere Version entfernt und die &#8220;alte&#8221; rein). Über dieses Zusammenspiel WebYep-Accordion habe ich einmal yourhead.com berichtet und nach einer Möglichkeit gefragt die 1.0er Version weiter zur Verfügung zu stellen. Eine Begeisterung habe ich nicht gespürt aber ich kann auch nicht sagen dass es unmöglich ist von yourhead.com so eine Version zu bekommen. Wege und Möglichkeiten gibt es natürlich viele.<br />
<strong>1.2.</strong> Eine Accordion Seite erstellen und die Einstellungen vornehmen die man für Accordion haben möchte. Der Seite einen Namen für die Navigation geben, einen Ordnername und einen Dateiname vergeben. Als Ausgabe &#8211; Standard<br />
<strong>1.3.</strong> Publizieren.<br />
<strong>1.4.</strong> Diese Seite jetzt deaktivierem und nicht mehr in Menü erscheinen lassen.</p>
<p>In etwa der betreffene Code aus der publizierten Accordion Datei sieht so aus:</p>
<pre class="brush: xml;">
&lt;style type='text/css'&gt;
.acToggle {
	width:555px;
	height:15px;
	padding-top:5px;
	padding-bottom:5px;
	padding-right:5px;
	padding-left:5px;
	margin-top:0px;
	margin-bottom:0px;
	margin-left:0px;
	margin-right:0px;
	cursor:pointer;
}
.acToggle a {
	cursor:pointer;
}
.acCurrent {

}
.acCurrent a {

}
.acStretch {
	width:530px;
	margin-top:0px;
	margin-bottom:0px;
	margin-left:50px;
	margin-right:0px;
	padding-top:10px;
	padding-bottom:10px;
	padding-right:0px;
	padding-left:0px;
}
&lt;/style&gt;

&lt;div id=&quot;accordion_wrapper&quot; style=&quot;position:relative; width:97%; border:0px; margin:0px; padding:0px; overflow:hidden;&quot;&gt;
	&lt;div id=&quot;acAlignment&quot; style=&quot;position:relative; border:0px; padding:0px; margin-bottom:0px; margin-top:0px; margin-right:auto; margin-left:0px; width:580px;&quot;&gt;

		&lt;DIV class=&quot;acToggle&quot; onClick=&quot;accordion.showThisHideOpen();&quot; &gt;
			&lt;a style=&quot;text-decoration:none;&quot;&gt;Titel 1&lt;/a&gt;
		&lt;/DIV&gt;
		&lt;div class=&quot;acStretchOut&quot;&gt;
			&lt;div class=&quot;acStretch&quot;&gt;
				Text1 etc.
				&lt;div style=&quot;width:99%; clear:both;&quot;&gt;

				&lt;/div&gt;
			&lt;/div&gt;
		&lt;/div&gt;

		&lt;DIV class=&quot;acToggle&quot; onClick=&quot;accordion.showThisHideOpen();&quot; &gt;
			&lt;a style=&quot;text-decoration:none;&quot;&gt;Titel 2&lt;/a&gt;
		&lt;/DIV&gt;
		&lt;div class=&quot;acStretchOut&quot;&gt;
			&lt;div class=&quot;acStretch&quot;&gt;
				Text2 etc.
				&lt;div style=&quot;width:99%; clear:both;&quot;&gt;

				&lt;/div&gt;
			&lt;/div&gt;
		&lt;/div&gt;

		&lt;div style=&quot;width:99%; clear:both;&quot;&gt;

		&lt;/div&gt;
	&lt;/div&gt;
&lt;/div&gt;

&lt;script type=&quot;text/javascript&quot; src=&quot;files/prototype.lite.js&quot;&gt;&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;files/moo.fx.js&quot;&gt;&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;files/moo.fx.pack.js&quot;&gt;&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;&gt;
	var acStretchers = document.getElementsByClassName('acStretchOut');
	var acTogglers = document.getElementsByClassName('acToggle');
	var accordion = new fx.Accordion(acTogglers, acStretchers, {opacity: false, duration: 300});
&lt;/script&gt;
</pre>
<p>Ich habe mich entschlossen den Code der in einer Zeile augegeben wird zu strukturien um die drei Bereiche von einem Accordion Code zu veranschauen. In allen drei Bereiche befinden sich die Accordion Einstellungen.</p>
<p><strong>2. Die Erstellung der WebYep Seite</strong><br />
<strong>2.1.</strong> Bei der Erstellung der WebYep Seite muss man darauf achten dass die Seite auf der gleiche Ebene mit der Accordion Seite ist, den gleichen Ordnername und Dateiname wie der Accordion Seite vergibt ALLERDINGS diese Seite bekommt die Endung .php und nicht .html wie die Accordion Seite. Damit wird gewährleistet dass später die WebYepAccordion Seite auch die schon publizierten prototype.lite.js, moo.fx.js und moo.fx.pack.js Dateien aus dem Ordner files benutzen wird.<br />
<strong>2.2.</strong> Bei der Erstellung der WebYep Seite muss man auch nicht vergessen dass die Seite einmal im Vorschau angezeigt werden muss. Dadurch übernimmt die Seite den WebYep Code in dem Präfix.<br />
<strong>2.3.</strong> Genauso wie die Accordion Seite davor, Ausgabe Standard und die WebYep Bereiche auswählen die später in den wiederholbaren Blöcke erscheinen sollen. Allerdings für die Exemplifizierung habe ich die Standardeinstellung mit allen WebYep Elementen hier ausgehählt.<br />
<strong>2.4.</strong> Publizieren.<br />
<strong>2.5.</strong> Genauso wie die Accordion Seite davor, diese Seite deaktivieren und nicht mehr in Menü erscheinen lassen.</p>
<p>In etwa der betreffene Code aus der publizierten WebYep Datei sieht so aus:</p>
<pre class="brush: php;">
&lt;!-- Mode: publish --&gt;
&lt;?php
	$iLeftPhotoPadding = 10;
	$iRightPhotoPadding = 10;
	$iLeftPhotoWidth = true ? 150:0;
	$iRightPhotoWidth = true ? 150:0;
	$iCenterPhotoPadding = 10;
	$iCenterPhotoWidth = true ? 300:0;
	$iBlockPadding = 20;

    if (!function_exists(&quot;webyep_bCheckImage&quot;)) {
        function webyep_bCheckImage($sN, $iFixedW, &amp;$sWCSS)
        {
            $bRet = false;

            $sWCSS = &quot;&quot;;
            $oElement = new WYImageElement($sN, $false, $iFixedW ? &quot;width=\&quot;$iFixedW\&quot;&quot;:&quot;&quot;, &quot;&quot;, &quot;&quot;);
            $sContent = $oElement-&gt;sDisplay();
            if ($sContent) {
                if ($iFixedW) $iW = $iFixedW;
                else {
                    $oImg = $oElement-&gt;oImage();
                    $iW = $oImg ? $oImg-&gt;iWidth():0;
                }
                $sWCSS = $iW ? (&quot; width: &quot; . $iW . &quot;px;&quot;):&quot;&quot;;
                $bRet = true;
            }
            return $bRet;
        }
    }

	$sWidthCSS = &quot;&quot;;
?&gt;
&lt;h1 class=&quot;WebYepSeitenTitel&quot;&gt;&lt;?php webyep_shortText(&quot;Seitentitel&quot;, false); ?&gt;&lt;/h1&gt;
&lt;!-- Loop Start: ======================================== --&gt;
&lt;?php foreach (WYLoopElement::aLoopIDs(&quot;BlockSchleife&quot;) as $webyep_oCurrentLoop-&gt;iLoopID) { $webyep_oCurrentLoop-&gt;loopStart(true); ?&gt;
&lt;!-- Float Container Start: ======================================== --&gt;
&lt;?php
    if(preg_match('/MSIE +6/', $_SERVER['HTTP_USER_AGENT'])) echo &quot;&lt;div style=\&quot;overflow: hidden; zoom: 1.0\&quot;&gt;\n&quot;;
    else echo &quot;&lt;div style=\&quot;overflow: hidden;\&quot;&gt;\n&quot;;
?&gt;
&lt;?php if (webyep_sShortTextContent(&quot;Blocktitel&quot;, false) || webyep_bIsEditMode()) { ?&gt;
&lt;h2 class=&quot;WebYepBlockTitel&quot;&gt;&lt;?php webyep_shortText(&quot;Blocktitel&quot;, false); ?&gt;&lt;/h2&gt;
&lt;?php } ?&gt;&lt;?php
	if (webyep_bCheckImage(&quot;FotoLinks&quot;, $iLeftPhotoWidth, $sWidthCSS) || webyep_bIsEditMode()) {
?&gt;
&lt;!-- Left Photo: ======================================== --&gt;
&lt;?php
   printf('&lt;div style=&quot;float: left; margin-right: %dpx; margin-bottom: %dpx;%s&quot; class=&quot;WebYepFotoLinks&quot;&gt;&lt;div&gt;', $iLeftPhotoPadding, $iLeftPhotoPadding, $sWidthCSS);
   webyep_image(&quot;FotoLinks&quot;, false, &quot;&quot;, &quot;&quot;, &quot;&quot;, $iLeftPhotoWidth, 0, true);
   echo &quot;&lt;/div&gt;&quot;;
	if (webyep_sShortTextContent(&quot;FotoLinksBildtext&quot;, false) || webyep_bIsEditMode()) {
?&gt;&lt;div style=&quot;padding-top: 4px; text-align: center;&quot;&gt;&lt;?php webyep_shortText(&quot;FotoLinksBildtext&quot;, false); ?&gt;&lt;/div&gt;&lt;?php } echo &quot;&lt;/div&gt;&quot;; } ?&gt;
&lt;?php
	if (webyep_bCheckImage(&quot;FotoRechts&quot;, $iRightPhotoWidth, $sWidthCSS) || webyep_bIsEditMode()) {
?&gt;
&lt;!-- Right Photo: ======================================= --&gt;
&lt;?php
   printf('&lt;div style=&quot;float: right; margin-left: %dpx; margin-bottom: %dpx;%s&quot; class=&quot;WebYepFotoRechts&quot;&gt;&lt;div&gt;', $iRightPhotoPadding, $iRightPhotoPadding, $sWidthCSS);
   webyep_image(&quot;FotoRechts&quot;, false, &quot;&quot;, &quot;&quot;, &quot;&quot;, $iRightPhotoWidth, 0, true);
   echo &quot;&lt;/div&gt;&quot;;
	if (webyep_sShortTextContent(&quot;FotoRechtsBildtext&quot;, false) || webyep_bIsEditMode()) {
?&gt;&lt;div style=&quot;padding-top: 4px; text-align: center;&quot;&gt;&lt;?php webyep_shortText(&quot;FotoRechtsBildtext&quot;, false); ?&gt;&lt;/div&gt;&lt;?php } echo &quot;&lt;/div&gt;&quot;; } ?&gt;
&lt;!-- Text: =============================================== --&gt;
&lt;div class=&quot;WebYepText&quot;&gt;&lt;?php
   // check for installed WYSIWYG HTML editor
   if (file_exists(&quot;$webyep_sIncludePath/opt/rte&quot;) || file_exists(&quot;$webyep_sIncludePath/opt/tinymce&quot;) || file_exists(&quot;$webyep_sIncludePath/opt/fckeditor&quot;)) {
	   webyep_richText(&quot;Text&quot;, false, &quot;/webyep_text.css&quot;);
   }
   else {
	   webyep_longText(&quot;Text&quot;, false, &quot;&quot;, true);
   }
?&gt;&lt;/div&gt;
&lt;!-- Float Container End: =============================================== --&gt;
&lt;?php echo &quot;&lt;/div&gt;\n&quot;; ?&gt;
&lt;!-- Attachment: ========================================= --&gt;
&lt;?php	if (webyep_sShortTextContent(&quot;DateianhangBeschreibung&quot;, false) || webyep_bIsEditMode()) { ?&gt;
&lt;p class=&quot;WebYepDateianhang&quot;&gt;&lt;span class=&quot;WebYepDateianhangBeschreibung&quot;&gt;&lt;?php webyep_shortText(&quot;DateianhangBeschreibung&quot;, false); ?&gt; &lt;/span&gt;&lt;span class=&quot;WebYepDateianhangDateiname&quot;&gt;&lt;?php webyep_attachment(&quot;Dateianhang&quot;); ?&gt;&lt;/span&gt;&lt;/p&gt;
&lt;?php } ?&gt;&lt;?php
	if (webyep_bCheckImage(&quot;FotoZentriert&quot;, $iCenterPhotoWidth, $sWidthCSS) || webyep_bIsEditMode()) {
?&gt;
&lt;!-- Center Photo: ======================================= --&gt;
&lt;?php
   printf('&lt;div style=&quot;text-align: center;&quot; class=&quot;WebYepFotoZentriert&quot;&gt;&lt;div style=&quot;margin-left: auto; margin-right: auto; padding-top: %dpx; %s&quot;&gt;&lt;div&gt;', $iCenterPhotoPadding, $sWidthCSS);
   webyep_image(&quot;FotoZentriert&quot;, false, &quot;&quot;, &quot;&quot;, &quot;&quot;, $iCenterPhotoWidth, 0, true);
   echo &quot;&lt;/div&gt;&quot;;
	if (webyep_sShortTextContent(&quot;FotoZentriertBildtext&quot;, false) || webyep_bIsEditMode()) {
?&gt;&lt;div style=&quot;padding-top: 4px; text-align: center;&quot;&gt;&lt;?php webyep_shortText(&quot;FotoZentriertBildtext&quot;, false); ?&gt;&lt;/div&gt;&lt;?php } echo &quot;&lt;/div&gt;&lt;/div&gt;&quot;; } ?&gt;
&lt;!-- Block Padding: ====================================== --&gt;
&lt;?php if ($iBlockPadding) printf('&lt;div style=&quot;font-size: 0px; line-height: 0px; height: %spx;&quot; class=&quot;WebYepBlockAbstand&quot;&gt;&lt;/div&gt;', $iBlockPadding); ?&gt;
&lt;!-- Loop End: =========================================== --&gt;
&lt;?php $webyep_oCurrentLoop-&gt;loopEnd(); } ?&gt;
&lt;div&gt;&lt;?php webyep_logonButton(true); ?&gt;&lt;/div&gt;
</pre>
<p><strong>3. Die Codes zusammenbauen</strong><br />
<strong>3.1.</strong> Die WebYep Plugin publizierte PHP Seite muss jetzt in bestimmten Stellen Code-Teile aus der Accordion Seite bekommen. Man kann sicherlich direkt in dem Dokument arbeiten aber man kann auch einen neuen Dokument erstellen wo man den Code zusammenbaut und dann alles kopiert und den original Code ersetzt. Auf jeden Fall würde ich diesen oberen Code erstmal abgrenzen. Vor dem Code würde ich eine Anfangsbemerkung schreiben wie: <!-- Start Accordion &#038; WebYep --> und am Ende des Codes eine Schlussbemerkung wie: <!-- End Accordion &#038; WebYep --><br />
<strong>3.2.</strong> Der Code mit allen WebYep Elementen, mit dem Anmeldeknopf unter dem Seitentitel gesetzt und mit einem Header-Text und einem Footer-Text befindet sich hier unten. Zwischen den Elementen habe ich zwei leere Zeilen dazugegeben um das Entfernen von nicht gebrauchten Elementen zu vereinfachen.</p>
<pre class="brush: php;">
&lt;!-- Start Accordion &amp; WebYep --&gt;
&lt;!-- Mode: publish --&gt;
&lt;?php
	$iLeftPhotoPadding = 10;
	$iRightPhotoPadding = 10;
	$iLeftPhotoWidth = true ? 150:0;
	$iRightPhotoWidth = true ? 150:0;
	$iCenterPhotoPadding = 10;
	$iCenterPhotoWidth = true ? 300:0;
	$iBlockPadding = 20;

    if (!function_exists(&quot;webyep_bCheckImage&quot;)) {
        function webyep_bCheckImage($sN, $iFixedW, &amp;$sWCSS)
        {
            $bRet = false;

            $sWCSS = &quot;&quot;;
            $oElement = new WYImageElement($sN, $false, $iFixedW ? &quot;width=\&quot;$iFixedW\&quot;&quot;:&quot;&quot;, &quot;&quot;, &quot;&quot;);
            $sContent = $oElement-&gt;sDisplay();
            if ($sContent) {
                if ($iFixedW) $iW = $iFixedW;
                else {
                    $oImg = $oElement-&gt;oImage();
                    $iW = $oImg ? $oImg-&gt;iWidth():0;
                }
                $sWCSS = $iW ? (&quot; width: &quot; . $iW . &quot;px;&quot;):&quot;&quot;;
                $bRet = true;
            }
            return $bRet;
        }
    }

	$sWidthCSS = &quot;&quot;;
?&gt;
&lt;h1 class=&quot;WebYepSeitenTitel&quot;&gt;&lt;?php webyep_shortText(&quot;Seitentitel&quot;, false); ?&gt;&lt;/h1&gt;

&lt;div&gt;&lt;?php webyep_logonButton(true); ?&gt;&lt;/div&gt;&lt;br /&gt;

&lt;div class=&quot;WebYepText&quot;&gt;&lt;?php
   // check for installed WYSIWYG HTML editor
   if (file_exists(&quot;$webyep_sIncludePath/opt/rte&quot;) || file_exists(&quot;$webyep_sIncludePath/opt/tinymce&quot;)) {
	   webyep_richText(&quot;HeaderText&quot;, false, &quot;/webyep_text.css&quot;);
   }
   else {
	   webyep_longText(&quot;HeaderText&quot;, false, &quot;&quot;, true);
   }
?&gt;&lt;/div&gt;

&lt;div class=&quot;contentSpacer&quot;&gt;
&lt;/div&gt;&lt;!-- this makes sure the content is long enough for the design --&gt;
&lt;div id=&quot;accordion_wrapper&quot; style=&quot;position:relative; width:97%; border:0px; margin:0px; padding:0px; overflow:hidden;&quot;&gt;
	&lt;div id=&quot;acAlignment&quot; style=&quot;position:relative; border:0px; padding:0px; margin-bottom:0px; margin-top:0px; margin-right:auto; margin-left:0px;&quot;&gt;
		&lt;!-- Loop Start: ======================================== --&gt;
		&lt;?php foreach (WYLoopElement::aLoopIDs(&quot;BlockSchleife&quot;) as $webyep_oCurrentLoop-&gt;iLoopID) { $webyep_oCurrentLoop-&gt;loopStart(true); ?&gt;

			&lt;div class=&quot;acToggle&quot; onclick=&quot;accordion.showThisHideOpen();&quot;&gt;
				&lt;!-- Float Container Start: ======================================== --&gt;
				&lt;?php
				    if(preg_match('/MSIE +6/', $_SERVER['HTTP_USER_AGENT'])) echo &quot;&lt;div style=\&quot;overflow: hidden; zoom: 1.0\&quot;&gt;\n&quot;;
				    else echo &quot;&lt;div style=\&quot;overflow: hidden;\&quot;&gt;\n&quot;;
				?&gt;
				&lt;?php if (webyep_sShortTextContent(&quot;Blocktitel&quot;, false) || webyep_bIsEditMode()) { ?&gt;
				&lt;span class=&quot;WebYepBlockTitel&quot;&gt;&lt;?php webyep_shortText(&quot;Blocktitel&quot;, false); ?&gt;&lt;/span&gt;
				&lt;?php } ?&gt;
			&lt;/div&gt;
			&lt;div class=&quot;acStretchOut&quot;&gt;
				&lt;div class=&quot;acStretch&quot;&gt;

					&lt;?php
						if (webyep_bCheckImage(&quot;FotoLinks&quot;, $iLeftPhotoWidth, $sWidthCSS) || webyep_bIsEditMode()) {
					?&gt;
					&lt;!-- Left Photo: ======================================== --&gt;
					&lt;?php
					   printf('&lt;div style=&quot;float: left; margin-right: %dpx; margin-bottom: %dpx;%s&quot; class=&quot;WebYepFotoLinks&quot;&gt;&lt;div&gt;', $iLeftPhotoPadding, $iLeftPhotoPadding, $sWidthCSS);
					   webyep_image(&quot;FotoLinks&quot;, false, &quot;&quot;, &quot;&quot;, &quot;&quot;, $iLeftPhotoWidth, 0, true);
					   echo &quot;&lt;/div&gt;&quot;;
						if (webyep_sShortTextContent(&quot;FotoLinksBildtext&quot;, false) || webyep_bIsEditMode()) {
					?&gt;&lt;div style=&quot;padding-top: 4px; text-align: center;&quot;&gt;&lt;?php webyep_shortText(&quot;FotoLinksBildtext&quot;, false); ?&gt;&lt;/div&gt;&lt;?php } echo &quot;&lt;/div&gt;&quot;; } ?&gt;

					&lt;?php
						if (webyep_bCheckImage(&quot;FotoRechts&quot;, $iRightPhotoWidth, $sWidthCSS) || webyep_bIsEditMode()) {
					?&gt;
					&lt;!-- Right Photo: ======================================= --&gt;
					&lt;?php
					   printf('&lt;div style=&quot;float: right; margin-left: %dpx; margin-bottom: %dpx;%s&quot; class=&quot;WebYepFotoRechts&quot;&gt;&lt;div&gt;', $iRightPhotoPadding, $iRightPhotoPadding, $sWidthCSS);
					   webyep_image(&quot;FotoRechts&quot;, false, &quot;&quot;, &quot;&quot;, &quot;&quot;, $iRightPhotoWidth, 0, true);
					   echo &quot;&lt;/div&gt;&quot;;
						if (webyep_sShortTextContent(&quot;FotoRechtsBildtext&quot;, false) || webyep_bIsEditMode()) {
					?&gt;&lt;div style=&quot;padding-top: 4px; text-align: center;&quot;&gt;&lt;?php webyep_shortText(&quot;FotoRechtsBildtext&quot;, false); ?&gt;&lt;/div&gt;&lt;?php } echo &quot;&lt;/div&gt;&quot;; } ?&gt;

					&lt;!-- Text: =============================================== --&gt;
					&lt;div class=&quot;WebYepText&quot;&gt;&lt;?php
					   // check for installed WYSIWYG HTML editor
					   if (file_exists(&quot;$webyep_sIncludePath/opt/rte&quot;) || file_exists(&quot;$webyep_sIncludePath/opt/tinymce&quot;) || file_exists(&quot;$webyep_sIncludePath/opt/fckeditor&quot;)) {
						   webyep_richText(&quot;Text&quot;, false, &quot;/webyep_text.css&quot;);
					   }
					   else {
						   webyep_longText(&quot;Text&quot;, false, &quot;&quot;, true);
					   }
					?&gt;&lt;/div&gt;
					&lt;!-- Float Container End: =============================================== --&gt;
					&lt;?php echo &quot;&lt;/div&gt;\n&quot;; ?&gt;

					&lt;!-- Attachment: ========================================= --&gt;
					&lt;?php	if (webyep_sShortTextContent(&quot;DateianhangBeschreibung&quot;, false) || webyep_bIsEditMode()) { ?&gt;
					&lt;p class=&quot;WebYepDateianhang&quot;&gt;&lt;span class=&quot;WebYepDateianhangBeschreibung&quot;&gt;&lt;?php webyep_shortText(&quot;DateianhangBeschreibung&quot;, false); ?&gt; &lt;/span&gt;&lt;span class=&quot;WebYepDateianhangDateiname&quot;&gt;&lt;?php webyep_attachment(&quot;Dateianhang&quot;); ?&gt;&lt;/span&gt;&lt;/p&gt;
					&lt;?php } ?&gt;

					&lt;?php
						if (webyep_bCheckImage(&quot;FotoZentriert&quot;, $iCenterPhotoWidth, $sWidthCSS) || webyep_bIsEditMode()) {
					?&gt;
					&lt;!-- Center Photo: ======================================= --&gt;
					&lt;?php
					   printf('&lt;div style=&quot;text-align: center;&quot; class=&quot;WebYepFotoZentriert&quot;&gt;&lt;div style=&quot;margin-left: auto; margin-right: auto; padding-top: %dpx; %s&quot;&gt;&lt;div&gt;', $iCenterPhotoPadding, $sWidthCSS);
					   webyep_image(&quot;FotoZentriert&quot;, false, &quot;&quot;, &quot;&quot;, &quot;&quot;, $iCenterPhotoWidth, 0, true);
					   echo &quot;&lt;/div&gt;&quot;;
						if (webyep_sShortTextContent(&quot;FotoZentriertBildtext&quot;, false) || webyep_bIsEditMode()) {
					?&gt;&lt;div style=&quot;padding-top: 4px; text-align: center;&quot;&gt;&lt;?php webyep_shortText(&quot;FotoZentriertBildtext&quot;, false); ?&gt;&lt;/div&gt;&lt;?php } echo &quot;&lt;/div&gt;&lt;/div&gt;&quot;; } ?&gt;

					&lt;!-- Block Padding: ====================================== --&gt;
					&lt;?php if ($iBlockPadding) printf('&lt;div style=&quot;font-size: 0px; line-height: 0px; height: %spx;&quot; class=&quot;WebYepBlockAbstand&quot;&gt;&lt;/div&gt;', $iBlockPadding); ?&gt;

				&lt;/div&gt;
				&lt;div style=&quot;width:99%; clear:both;&quot;&gt;
				&lt;/div&gt;
			&lt;/div&gt;
		&lt;!-- Loop End: =========================================== --&gt;
		&lt;?php $webyep_oCurrentLoop-&gt;loopEnd(); } ?&gt;

	&lt;/div&gt;
	&lt;div style=&quot;width:99%; clear:both;&quot;&gt;
	&lt;/div&gt;
&lt;/div&gt;
&lt;br /&gt;

&lt;div class=&quot;WebYepText&quot;&gt;&lt;?php
   // check for installed WYSIWYG HTML editor
   if (file_exists(&quot;$webyep_sIncludePath/opt/rte&quot;) || file_exists(&quot;$webyep_sIncludePath/opt/tinymce&quot;)) {
	   webyep_richText(&quot;FooterText&quot;, false, &quot;/webyep_text.css&quot;);
   }
   else {
	   webyep_longText(&quot;FooterText&quot;, false, &quot;&quot;, true);
   }
?&gt;&lt;/div&gt;

&lt;script type=&quot;text/javascript&quot; src=&quot;files/prototype.lite.js&quot;&gt;
&lt;/script&gt; &lt;script type=&quot;text/javascript&quot; src=&quot;files/moo.fx.js&quot;&gt;
&lt;/script&gt; &lt;script type=&quot;text/javascript&quot; src=&quot;files/moo.fx.pack.js&quot;&gt;
&lt;/script&gt; &lt;script type=&quot;text/javascript&quot;&gt;
//&lt;![CDATA[
  var acStretchers = document.getElementsByClassName('acStretchOut');  var acTogglers = document.getElementsByClassName('acToggle');  var accordion = new fx.Accordion(acTogglers, acStretchers, {opacity: false, duration: 300});
//]]&gt;
&lt;/script&gt;
&lt;div class=&quot;clear&quot;&gt;&lt;/div&gt;
&lt;div class=&quot;clearer&quot;&gt;&lt;/div&gt;
&lt;!-- End Accordion &amp; WebYep --&gt;
</pre>
<p><strong>4. Die Erstellung einer Weiterleitung Seite</strong><br />
Man muss jetzt eine Weiterleitungsseite erstellen die den gleichen Name, Ordnername und Dateiname bekommt die WebYep Seite hatte (hat, aber sie ist jetzt in RW nicht mehr aktiv).<br />
Diese Weiterleitung Seite muss auch den Pfad zu der WebYep Seite zeigen. Dazu in der Seiteneinstellungen in dem Feld URL aus dem Plugin-Parameter Tab den absoluten Pfad schreiben.</p>
<p>Das müsste aber alles sein.<br />
Hoffe wieder dass ich nicht Fehler gemacht habe und dass jemandem diese Codes nützlich sind.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.costel-marian.de/?feed=rss2&#038;p=10</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WebYep Variationen &#8211; mit Columns</title>
		<link>http://www.costel-marian.de/?p=8</link>
		<comments>http://www.costel-marian.de/?p=8#comments</comments>
		<pubDate>Wed, 14 Nov 2007 13:51:07 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Plugin Zusammensetzungen]]></category>
		<category><![CDATA[Rapidweaver]]></category>

		<guid isPermaLink="false">http://costel-marian.de/wordpress/?p=8</guid>
		<description><![CDATA[Auch wenn Columns durch die Handhabung viel einfacher als Blocks ist hatte ich etwas mehr Problemen die 1.2er Version von WebYep in Columns zu integrieren. Um was geht es: Auf einer Seite Columns stellt den ganzen content in einer einzigen Zeile und auf der anderen Seite in WebYep ab der 1.2er Version gibt es die [...]]]></description>
			<content:encoded><![CDATA[<p>Auch wenn Columns durch die Handhabung viel einfacher als Blocks ist hatte ich etwas mehr Problemen die 1.2er Version von WebYep in Columns zu integrieren.<br />
Um was geht es:<br />
Auf einer Seite Columns stellt den ganzen content in einer einzigen Zeile und auf der anderen Seite in WebYep ab der 1.2er Version gibt es die Möglichkeit auch andere WYSIWYG HTML-Editoren einzubinden. Zur Zeit funktioniern <a href="http://tinymce.moxiecode.com/">TinyMCE</a> und <a href="http://www.kevinroth.com/rte/">RTE</a> plus natürlich das eingebaute Texteditor. Diese Möglichkeit entweder den eingebauten Editor oder einen der anderen Editoren zu benutzen ist programmierungstechnisch mit einer &#8220;wenn&#8221;-Schleife gelöst. In dem Code von WebYep gibt es auch einige Erklärungen eingebaut (um dem User zu verständlich zu machen welchen Bereich gerade der Code behandelt). Und diese &#8220;wenn&#8221;-Schleife kommt gerade nach so einer Erklärung. Die Syntax der Erklärung zwingt normallerweise dass vor dem Befehl &#8220;wenn&#8221; ein Zeilenwechsel stattfinden muss. Da aber Columns alles in einer Zeile schreibt verschwindet dieser Zeilenwechsel und dadurch das &#8220;wenn&#8221; Befehl wird von PHP gar nicht mehr beachtet. So hatte ich alle anderen Blöcke aus WebYep aber den Text nicht.<span id="more-8"></span></p>
<p>Im Grunde wird die Einbindung von WebYep in Columns genauso behandelt wie bei Blocks. Die linke und rechte Spalte ist bei Columns schon aus dem Start schon da.<br />
Wenn man von diesem Remark vor dem &#8220;if&#8221; aus dem Textbereich von WebYep weisst, dann ist für die Implementierung den gleichen Fahrplan bei Columns wie bei Blocks zu nehmen. Hier sogar mit einer Vereinfachung. Der Code Bereich:</p>
<pre class="brush: php;">&lt;?php
	$iLeftPhotoPadding = 10;
	$iRightPhotoPadding = 10;
	$iLeftPhotoWidth = true ? 100:0;
	$iRightPhotoWidth = true ? 100:0;
	$iCenterPhotoPadding = 10;
	$iCenterPhotoWidth = true ? 200:0;
	$iBlockPadding = 20;

    if (!function_exists(&quot;webyep_bCheckImage&quot;)) {
        function webyep_bCheckImage($sN, $iFixedW, &amp;$sWCSS)
        {
            $bRet = false;

            $sWCSS = &quot;&quot;;
            $oElement = new WYImageElement($sN, $false, $iFixedW ? &quot;width=\&quot;$iFixedW\&quot;&quot;:&quot;&quot;, &quot;&quot;, &quot;&quot;);
            $sContent = $oElement-&gt;sDisplay();
            if ($sContent) {
                if ($iFixedW) $iW = $iFixedW;
                else {
                    $oImg = $oElement-&gt;oImage();
                    $iW = $oImg ? $oImg-&gt;iWidth():0;
                }
                $sWCSS = $iW ? (&quot; width: &quot; . $iW . &quot;px;&quot;):&quot;&quot;;
                $bRet = true;
            }
            return $bRet;
        }
    }

	$sWidthCSS = &quot;&quot;;
?&gt;</pre>
<p> braucht man nicht sowohl in der linken als auch der rechten Spalte übernehmen zu werden sondern einfach nur einmal im Header von Columns kopiert zu werden. Für die Spalten reicht es aus den Code ab</p>
<pre class="brush: xml;">&lt;!-- Loop Start: ======================================== --&gt;</pre>
<p> kopiert zu werden.</p>
<p>Man muss hier bei Columns nicht vergessen dass überall der Code ausgewählt muss und mit Formatierung ignorieren aus dem Menü Format verseht. Wenn man auch die Reihe des Codes</p>
<pre class="brush: php;">   // check for installed WYSIWYG HTML editor</pre>
<p> nicht vergisst dass sie gelöscht werden muss dann steht es nichts mehr in Wege WebYep auch in Columns zu benutzen.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.costel-marian.de/?feed=rss2&#038;p=8</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

