Änderungen in IhrTemplate, das Template zum Buch „Templates für Joomla! 1.6“
Das Template zum Buch Templates für Joomla! 1.6 ist in der Version 1.0.1 erschienen. Insgesamt gab es sieben Änderungen. Fünf davon betreffen die CSS-Selektoren, eine Sprachvariable und die Funktion zum Herausnehmen von Mootools wurden geändert. Das aktuelle Template zum Buch kann herunterladen werden unter http://ihrtemplate.blank.vc. Vielen Dank an die Leser des Buches,
die uns auf die Fehler aufmerksam gemacht haben.
template.css.php
Die Datei template.css.php ist zu finden im Order css des Template-Verzeichnis. Folgende Änderungen wurden unternommen:
Die Klassen
.item10X
(X steht für die Zahlen 1-4) wurden geändert in die jeweilige ID
#item-10X
Aus der ID
#current
wurde
.current
Die ID
#mod_search_searchword
wurde geändert in
#mod-search-searchword
Genauso wie aus
#search_searchword
die ID
#search-searchword
wurde.
Aus der Klasse
.blog-featured-home
wurde
.blog-featured
Drei Zeilen für den Footer komplettieren das Cascading Stylesheet (Danke an Oliver -> Kommentar).
/* FOOTER
*********************************************/
.infooter .moduletable {float:left; padding-right:20px; width:220px;}
.infooter h3 {color:#fff; font-size:16px; margin-bottom:7px;}
.infooter p {color:#3f3f3f; font-size:12px; line-height:20px; padding:5px 0;}
index.php
Diese Datei ist im Rootverzeichnis des Templates zu finden. Hier wurde in der Browserweiche für den Internet Explorer ebenfalls die Klasse
.blog-featured-home
in
.blog-featured
geändert.
Die Funktion zum Herausnehmen von Mootools lautet jetzt anstatt
if ($this->params->get('mootools')==0) {
JHTML::_('behavior.mootools');
}
so
if ($this->params->get('mootools')==1) {
$headerstuff = $this->getHeadData();
$scripts = $headerstuff['scripts'];
$headerstuff['scripts'] = array();
foreach($scripts as $url=>$type) {
if (strpos($url, 'mootools') === false) {
$headerstuff['scripts'][$url] = $type;
}
}
$this->setHeadData($headerstuff);
}
default_form.php
Diese Datei gehört zum Override der Kontakt-Komponente com_contact und ist zu finden im Order html/com_contact/contact. Hier wurde aus der Sprachvariable
COM_CONTACT_CONTACT_EMAIL_ADDRESS
die Variable
JGLOBAL_EMAIL
Joomla! Backend
Das letzte Modul des Footers bekommt einen Modul-Klassen-Suffix, damit die Klasse moduletable nicht greift. Der Name spielt keine Rolle und kann z. B. -last lauten.
Um den Banner auf den Folgeseiten anzeigen zu lassen, erstellt man ein neues Modul (Eigene Inhalte) auf der Position banner. In diesem Modul fügt man dann das Banner-Bild ein (header2.jpg) und läßt es in der Menüzuweisung Auf allen Seiten mit Ausnahme der gewählten erscheinen. Die gewählte Seite ist Home.
Danke
Danke für die vielen hilfreichen Kommentare (siehe unten) und an S.Bev und J.Maas und ihren Rezensionen auf Amazon. Allen Lesern weiterhin viel Spaß beim Entwickeln der eigenen Templates.
Kommentare (68)
Tom
ich habe mal eine Frage. Warum gibt es eigentlich plötzlich eine css.php? Was macht diese ganzgenau?
Übrigens noch etwas, wenn ich ein Template hochladen will für joomla 1.6 kommt bei mir diese meldung. (Warnung! - Die Datei kann nicht verschoben werden!)
woran könnte das liegen?
Alexander Schmidt
Bei der Fehlermeldung „Warnung! - Die Datei kann nicht verschoben werden!“ handelt es sich wahrscheinlich um eine Rechteproblem. Der Ordern tmp, der für sämtliche Installationen verwendet wird, kann nicht beschrieben werden. Der HTTP-User sollte Schreibrechte für diesen Ordner haben.
Tom
Noch eine Frage zu selbst erstellten Templates. Gibt es eine Möglichkeit, diese in Joomla 1.6 zu installieren Analog joomla 1.5.
Alexander Schmidt
Templates in Joomla! 1.6 können nicht wie unter 1.5 einfach in das Verzeichnis /templates kopiert werden, sondern müssen die Installationsroutine im Backend durchlaufen, sonst werden sie nicht erkannt. Nur so kann auch in der Datenbank ein Datensatz angelegt werden, indem die Parametereinstellungen (Styles) gespeichert sind.
Tom
Wie muss man sich das denn danach, also nach der Installation vorstellen, muss man dann nach jeder änderung, seihe es in der XLM Datei, oder in der Indexdatei, dann zuerst wieder installieren wie beim ersten mal? Oder hat man die Möglichkeit sowas im Backend zu erledigen?
Alexander Schmidt
Tom
Tom
Alexander Schmidt
Templates für Joomla! 1.6 http://itr.im/1k7
Tom
nachdem ich das templatekacket installiert habe spült es mir die Daten dierekt auch den Apache Server. Wenn ich jetzt eine CSS Datei wieder runter lade und diese dann in einem lokalen Editor bearbeite muss ich diese datei danach ja wieder auf den Serfer laden. Nur geht das nicht weil die Dateien auf dem Apache ja schreibgeschützt sind. ist das normal das ich dort die Schreibrechte nicht beeinflussen kann? Oder ist das überhaupt nochmal das es mir das ganze templatepacket auf den Apache Server Spült?
Alexander Schmidt
Nelke
nachdem ich 1.6 aufgesetzt (ohne Beispieldaten) habe und Ihr Template installiert habe, bekomme ich immer Fehlerhinweise beim Aufruf im Browser (egal ob Firefox oder IE - beide neuste Versionen). Veränderung im Adminbereich bezüglich Menü und ähnliches werden nicht in der Seite angezeigt.
Fehlercode aus dem Browser:
Details zum Fehler auf der Webseite
Benutzer-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; OfficeLiveConnector.1.4; OfficeLivePatch.1.3; .NET4.0C; Zune 4.7)
Zeitstempel: Tue, 22 Feb 2011 11:47:28 UTC
Meldung: 'document.getElementById(...)' ist Null oder kein Objekt
Zeile: 12
Zeichen: 3
Code: 0
URI: http://twitter.com/javascripts/blogger.js
Meldung: Funktion erwartet
Zeile: 1
Zeichen: 161
Code: 0
URI: http://localhost/Joomla16-a4w/media/system/js/mootools-core.js
Meldung: Das Objekt unterstützt diese Eigenschaft oder Methode nicht.
Zeile: 1
Zeichen: 8776
Code: 0
URI: http://localhost/Joomla16-a4w/media/system/js/mootools-core.js
Meldung: Das Objekt unterstützt diese Eigenschaft oder Methode nicht.
Zeile: 139
Zeichen: 5
Code: 0
URI: http://localhost/Joomla16-a4w/
Meldung: Das Objekt unterstützt diese Eigenschaft oder Methode nicht.
Zeile: 1
Zeichen: 81199
Code: 0
URI: http://localhost/Joomla16-a4w/media/system/js/mootools-core.js
Meldung: Funktion erwartet
Zeile: 1
Zeichen: 161
Code: 0
URI: http://localhost/Joomla16-a4w/media/system/js/mootools-core.js
Meldung: Das Objekt unterstützt diese Eigenschaft oder Methode nicht.
Zeile: 1
Zeichen: 9545
Code: 0
URI: http://localhost/Joomla16-a4w/media/system/js/mootools-core.js
Meldung: Funktion erwartet
Zeile: 1
Zeichen: 161
Code: 0
URI: http://localhost/Joomla16-a4w/media/system/js/mootools-core.js
Meldung: Das Objekt unterstützt diese Eigenschaft oder Methode nicht.
Zeile: 1
Zeichen: 9545
Code: 0
URI: http://localhost/Joomla16-a4w/media/system/js/mootools-core.js
So ein Problem tritt zum ersten mal bei mir auf....
Unabhängig davon finde ich Ihr Buch Templates für Joomla! 1.6 super....
Alexander Schmidt
Nelke
wo ist mein Beitrag? Zensiert?
Oder bekomme ich noch ein Feedback dazu.
MfG Nelke
Alexander Schmidt
Nelke
MfG Nelke
Oliver
ich habe das Buch durchgearbeitet und ich finde es gut. Das Buch liest sich flüssig und den Inhalten konnte ich gut folgen.
Wie auch andere Berichteten hatte ich ähnliche Probleme mit der Darstellung der 4 Beiträge auf der Hauptseite oder dem Umbruch zwischen 3. und 4. Beitrag im Footer.
Die Darstellung auf der Hauptseite habe ich schnell hin bekommen, aber beim Footer würde mich interessieren, wie sie das erreicht haben, dass kein Umbruch zwischen dem 3. und 4. Beitrag erfolgte. Da hat der 4. Beitrag im Footer in Ihrem Onlinedemo nicht die 'class="moduletable" ' sondern 'class="moduletable-last" '
Leider ist mir noch nicht gelungen die Folgeseiten korrekt mit dem Bild im Header2 abzbilden. Da habe ich aus den Passagen geschlossen, dass auch ein Modul "Banner" eingerichtet werden muss. Jedoch habe ich keine Hinweise gefunden, welche Einstellungen darin vorzunehmen sind. Sollte ich die Stelle überlesen haben, würde ich mich über einen Hinweis dazu bzw. eine kurze Beschreibung freuen.
Vielen Dank
Oliver
PS: Auch den Photoshop Workshop fand ich große Klasse.
Alexander Schmidt
Um den Umbruch im Footer zu vermeiden, geben Sie dem letzten Modul einen > Modul-Klassen-Suffix unter > Erweiterte Optionen. Der Name ist dabei egal, es ist nur wichtig, dass nicht die eigentliche Klasse moduletable greift.
Für den Banner erstellen Sie ein weiteres Modul, welches Sie auf der Position > banner anzeigen lassen. Unter > Benutzerdefinierte Ausgabe fügen Sie dann das Banner-Bild ein; wahlweise mit dem Editor. Als > Menüzuweisung wählen Sie > Auf allen Seiten mit Ausnahme der gewählten. Danach klicken Sie > Home an.
Durch Ihre Fragen machen Sie das Buch besser und die Lösungen werden in den Beitrag übernommen.
Oliver
danke für die letzte Information.
Damit konnte ich nun alles zum laufen bringen. Ich habe nun das Tamplate noch ein weiteres Mal nach dem Buch aufgebaut, ohne ihre fertigen Datein zu nutzen. Die Änderungshinweise von dieser Seite habe ich dabei berücksichtigt.
Mit fiel nun auf, dass in der Beschreibung zur Datei tempate.css.php, die 3 Zeilen die den Bereich Footer definieren, nicht im Buch erwähnt werden. Es handelt sich um die Zeilen, in denen auch die Klasse "moduletable" definiert ist.
Wenn dem so ist, dann sollten Sie diese Zeilen Ihren Lesern des Buches hier zur Verfügung stellen.
MFG Oliver
Alexander Schmidt
Torsten
sind die im Buch beschriebenen Templates auch unter Joomla 1.5 einsetzbar bzw. welche Änderungen sind nötig?
Alexander Schmidt
neco
wenn ich das Browserfenster horizontal verkleinere, also unter den eingestellten 960px komme, erscheint unten der Scrollbalken. So weit so gut. Was nicht so gut ist, dass die Hintergründe (Header, Header2, Footer, Content) dabei "abgeschnitten" werden, d.h. scrolle ich nun nach rechts, sind in dem Bereich, der nur noch durchs rechtsscrollen sichtbar ist, die Hintergründe nicht mehr da. Woran kann das liegen?
gruß
neco
Alexander Schmidt
neco
zunächst einmal danke ich Ihnen für die schnelle Antwort. An die Quick`n`Dirty-Lösung mit min-width hatte ich auch gedacht. Da ich mich noch in den Anfängen der Webgestaltung befinde, sagt mir Media-Queries nicht viel. Ich werde mich aber damit beschäftigen , da es mir als die elegantere Lösung erscheint.
Danke nochmals
Mfg
neco
Alexander Schmidt
Media Queries http://itr.im/1lv
Media Queries http://itr.im/1jt
Media Queries http://itr.im/1je
neco
Frank
Welche Änderungen wären das dann genau und wo kann man das alles nachlesen?
Das Buch ist schon bestellt, noch bevor ich das erfuhr..... :-/
Alexander Schmidt
Oliver P.
heute hätte ich folgende Fragen:
Nach einem Update auf Joomla 1.6.3 hat die default_form.php eine vollkommen anderer Zusammensetzung. Damit ist nun auch der beschriebene Override nicht mehr anwendbar. Welche Anpassungen müsste ich an der neuen Version vornehmen, um wieder die richtige Darstellung zu erreichen?
MFG Oliver P.
Alexander Schmidt
Rainer K.
ansich alles im Buch gut beschrieben. Habe aber Probleme mit Slideshow erstellen (Seite 218 ). Muss hier ein Modul "Slideshow" erstellt (sprich der ganze Text abgeschrieben) werden, oder exixtiert das ganze in Datei-Form? Was ist Positon "slide".
Besser wäre vermutlich auch ein Workshop mit Hilfe vom Gimp gewesen, da die wenigsten wohl mit PS weiterarbeiten werden.
MfG
Rainer K.
Alexander Schmidt
Johnsky
ich habe Ihr Buch gerade fertig gelesen und bewundere Ihre Ausdauer & Fähigkeiten, dieses Buch geschrieben zu haben (und auch meine Fitness, es tatsächlich bis zum Ende Schritt für Schritt durchgearbeitet zu haben :-). Also erst einmal besten Dank für dieses engagierte Tutorial!
Trotz intensiver Bemühungen konnte ich drei Probleme nicht lösen, und hoffe, Sie können mir kurz weiterhelfen.
1. In meinem Header erscheint das "Home-Haus"-Icon um ca. 50px nach rechts verrutscht, obwohl ich es in der CSS entsprechend meiner "Messergebnisse" in Photoshop korrekt auf -530px positioniert habe. Durch das unerklärliche Verrutschen wird bei mir der "Kontakt" abgeschnitten. Woher kommen diese mysteriösen zusätlichen 50 px?
2. Die Spalten auf der Startseite sind zu eng bei einander. Wie kann ich das korrigieren?
3. Das Kontaktformular wird nicht korrekt dargestellt - offenbar ein Sprachproblem, das ich leider aber auch nicht lösen kann.
Ich danke Ihnen schon jetzt sehr für jede Hilfestellung!
Mit bestem Gruß aus Salzburg,
Johannes R.
Johnsky
4. Beim Login-Formular wird die falsche Grafik angezeigt?!?
... und noch einmal: DANKESCHÖN schon jetzt...
Alexander Schmidt
1. Das Home-Haus-Icon wird im Original-CSS an der Position -580px von links geladen.
2. Um den Abstand der Spalten zueinander zu vergrößern, müssen zwei Werte korrigiert werden: Zum einen die Breite (width) der Überschriften (.blog-featured .item h2) auf vielleicht 70% und zum anderen den Innenabstand rechts (padding-right) (.inarticles p) auf vielleicht 50px.
3. Wenn im Kontaktformular keine Sprachvariablen geladen werden, also irgendwas in Großbuchstaben dasteht, müssen die fehlenden Variablen nachgetragen werden. Vorgehensweise: Die Variable (Großbuchstaben) kopieren und in die Datei language/de-DE/de-DE.com_contact.ini eintragen. Direkt dahinter (ohne Leerzeichen) eine Gleichheitszeichen schreiben und die Übersetzung in Hochkommata verfassen, z. B. SPRACH_VARIABLE="Der übersetzte Text ..."
4. Den Banner/Grafik des Loginformular kann unter den Modulen zugewiesen werden (Menüzuweisung).
Torsten
ich habe Probleme mit der Druckausgabe - irgendwie scheint die component.php nicht zu greifen bzw die print.css. Im IE habe ich dadurch 3 Leerseiten bei der Druckausgabe. Für einen Tipp währe ich sehr dankbar (url: christineheine.de)
Alexander Schmidt
Mani
Kann ich für jemanden eine Website bauen auf Grund Ihrer Vorlage?
Natürlich alles individuell angepasst und auch völlig andere Bilder und Farben.
Kann ich dann als Autor meinen Namen nehmen oder bleibt ihrer in den copyrights?
Geht das so oder so?
Alexander Schmidt
uju01
ich habe Ihr Buch fast durchgearbeitet und finde es sehr gut.
Jetzt habe ich aber ein Problem mit den Artikeln auf der Startseite, die stehen untereinander nicht in Spalten, der Erste schaut ganz anders aus als der Rest und beim ersten und letzten Artikel fehlen die Icons. An Index.php kann es nicht liegen, denn die Artikel werden ja als Komponente eingebunden. Aber wenn man mit dem Firebug mein html und Ihres von der Demoseite vergleicht sind folgende unterschiede:
uju01
class="inarticles"
class="blog-featured"
class="items-leading"
Alexander Schmidt
Johnsky
Mani
Habe erstmal das ganze javascript-Zeigs von Seite 219 eingetippt und bei mir wird dann auch die Zeilen rot, d. h. irgendetwas stimmt da nicht. Ich finde, ich habe richtig abgetippt:
window.addEvent('domready',function(){
var ns = new noobSlide({
box: $('slides')
items: $$('div','slides'),
size: 960,
handles: $$('#handles img')
onWalk: function(currentItem,currentHandle){
this.handles.removeClass('active');
currentHandle.addClass('active');
}
));
Tipp- oder Druckfehler?
Alexander Schmidt
Mani
Mani
3x lädt nur die Seite neu, 1x gibt es: 404 - Beitrag nicht gefunden!
Die angefragte Quelle wurde nicht gefunden!
Alexander Schmidt
Mani
Alexander Schmidt
Schlimmer
Nur sone Idee...
Alexander Schmidt
Mani
Ich bin jetzt gerade beim Abtippen der index.php. Die ist leider so dermaßen klein abgedruckt und der Druck obendrein an der Stelle nicht besonders präzise...
Kurz, ich habe eben aufgehört, ich kann es einfach nicht lesen.
Gibt es eigentlich gar keine Möglichkeit die Dateien irgendwo fertig runterzuladen?
Sozusagen die Endfassung des gesamten Templates? Ihc finde diese Tipperei echt mühselig. Oder habe ich etwas übersehen?
P.S.: Ich meine jetzt auch nicht die Online-Version, sondern die unabhängige aus dem Buch...
Alexander Schmidt
Mani
Es ist mir an vielen Stellen einfach zu unklar, zum Beispiel läuft oben erwähnte Slideshow nicht.
Auf S. 185, soll man nun die Module anlegen?
Es wird mir viel zu selten gezeigt - eigentlich nie - wie der Stand der Dinge gerade ausschaut (Screnshots vom Layout).
Einmal wird von dem blank-Template gesprochen, dann wird aber das ihrtemplate gezeigt, also ich weiß nicht...
Oder sitzt das größere Problem hier an der Tastatur?
Kann sein, dennoch, ich habe jetzt viel Zeit verwendet und es ist kein korrektes Resultat in Sicht.
Alexander Schmidt
Mani
Gehe zum Endspurt.
Es ist eigentlich nur nich die Slideshow, die mangelt.
Was ich an Ihrem Buch gut finde, es ist das erste Buch, dass ich bearbeite, das ein wirklich interessantes Layout bietet.
André
Die Beispieldateien sind kürzlich verändert worden (v1.1.0). Ist das irgendwo dokumentiert?
Alexander Schmidt
Thomas
Vielen Dank für Ihr tolles Buch!
Allerdings habe ich ein Problem: bei mir funktioniert die Slideshow leider nicht. Habe jetzt schon mehrere Stunden damit verbracht nach der Ursache zu suchen, bisher leider ohne Erfolg. Vielleicht haben Sie einen wertvollen Tipp für mich?! Das Problem ist, dass lediglich der erste Slide angezeigt wird. Auch wenn ich auf den Link für den zweiten oder dritten Slide klicke, wird nur der erste Slide angezeigt.
Julian Güting
bei dem von uns nach Ihrem Buch erstellten Template wird das print und login-Menü ausschließlich auf der Startseite angezeigt. Sobald man eine Folgeseite aufruft verschwinden die pics und das Suchen-Modul verschiebt seine Position. Alle Menüs sind - wie im Buch beschrieben - veröffentlicht usw.
Hätten Sie einen Tipp?!
Viele Grüße
Atilla Boz
Michael
Grüße aus Sachsen
Michael
/* remove tabs, spaces, new lines, etc. */
$buffer = str_replace(array("\r\n","\r","\n","\t",' ',' '/*,' '*/),'',$buffer);
Habe die Stelle mal auskommentiert welche bei mir den Fehler verursacht.
Grüße Michael
Michael
Desweitern läuft das System nicht auf der von mir angegebenen Homepage. Einblick auf Schwarzerstahl.de
Frank
Woher weiß PHP, dass ff und front jeweils eine ID sind?
Die Frage bezieht sich auf die Seiten 199 und 245 im Buch zur Body ID!
Kira
vielen Dank erst einmal für das interessante Buch und die Erklärungen zum Template.
Ich habe die Demosite ( http://dem0.de/ihrtemplate/) mit Firebug untersucht und folgende Fehlermeldung gefunden:
Class is not identified: at")}if(!f){f=c.style.styleFloat}if(f==""||!f){f="none"}e.appendChild(b);e.class...
Volle Fehlermeldung:
var JCaption=new Class({initialize:function(b){this.selector=b;var a=$$(b);a.each(function(c){this.createCaption(c)},this)},createCaption:function(c){var b=document.createTextNode(c.title);var a=document.createElement("div");var e=document.createElement("p");var d=c.getAttribute("width");var f=c.getAttribute("align");if(!d){d=c.width}if(!f){f=c.getStyle("float")}if(!f){f=c.style.styleFloat}if(f==""||!f){f="none"}e.appendChild(b);e.className=this.selector.replace(".","_");c.parentNode.insertBefore(a,c);a.appendChild(c);if(c.title!=""){a.appendChild(e)}a.className=this.selector.replace(".","_");a.className=a.className+" "+f;a.setAttribute("style","float:"+f);a.style.width=d+"px"}});document.caption=null;window.addEvent("load",function(){var a=new JCaption("img.caption");document.caption=a});
Was bedeutet das?
Wie kann man diesen Konflikt beseitigen?
Gruß
Kira