QR-Code dieser Seite

Open Search - Einbindung von time4joomla in das Suchenfeld des Browsers - und so funktioniert es: Open Search
Eine Liste der verwendeten Erweiterungen findet sich im Impressum

Langjährige Erfahrung als Dozent zu verschiedenen Themen.
Ich komme zu Ihnen in die Firma oder organisiere Räume vor Ort. Dazu steht mir ein Netzwerk aus vielen Jahren Tätigkeit als freier Dozent zur Verfügung.
Weitere Informationen, sowie Referenzen finden Sie auf der Firmenseite time4mambo

  • MS-Excel
    2003 / 2007/ 2010
  • MS-Project
    2003 / 2007
  • MS-Word
    2003 / 2007 / 2010
  • MS-PowerPoint 2010
  • Joomla! 1.5 / 2.5
  • Körpersprache für Präsentation und zur verkaufsfördernen Motivation

  • Weitere Themen auf Anfrage

Interesse? Lust? Zeit? Dann freue ich mich über eine eMail oder Anruf.
Kontaktdaten im Impressum

Immer informiert, was es Neues bei time4joomla und time4mambo gibt. Der Newsletter muss noch bestätigt werden, um Mißbrauch auszuschließen und kann jederzeit wieder abbestellt werden.

Joomla-Programmierung

Teile meine Beiträge in deinem sozialen Netzwerk
FaceBook  Twitter  

Christiane Maier-Stadtherr, René Serradeil, Axel Tüting: Joomla!-Extensions entwickeln

Fragen zum Buch, wenn der Code nicht funktioniert oder wie etwas besser funktionieren kann oder und überhaupt bitte bei Github stellen. Wir haben da extra entsprechendes angelegt. Also bitte hier beherzt draufklicken:

https://github.com/MyThings

 

 

Zusammen mit Christiane Maier-Stadtherr und René Serradeil habe ich ein Buch zur Joomla-Programmierung geschrieben. Also das Erstellen eigener Komponenten, Module und Plugins in Joomla! 2.5

Als Übungsprojekt haben wir uns die Komponente myThings ausgedacht. Eine Komponente, mit der man Dinge verleihen und ausleihen kann. Eine Komponente, die man aber auch leicht als Kleinanzeigenmarkt oder Geschenkeliste umfunktionieren kann. Alles wird offen genug gestaltet, aber detailliert genug, um hinterher selber drauf los programmieren zu können.

Die Betrachtung der platform (Englisch geschrieben und gesprochen) und der Joomla-API dürfen natürlich nicht fehlen und der ein oder andere Exkurs zu verschiedenen Bereichen der Programmierung auch nicht.

Ziel ist es jedoch, sich nicht mit "unnötigen Ballast" aufzuhalten, sondern in erster Linie wird es ein Programmierbuch aus der Praxis für die Praxis.

Erschienen ist das Buch im Franzis Verlag.

Bevor es losgeht
1.1 Die GNU General Public License (GPL)
1.1.1 Was ist eigentlich GNU GPL?
1.1.2 Open Source versus GPL
1.1.3 Was bedeutet das für uns?
1.2 Arbeitsumgebung
1.2.1 Lokale Joomla-Installation
1.2.2 Der geeignete Arbeitsplatz
1.2.3 Der Quellext-Editor
1.2.4 Integrierte Entwicklungsumgebung
1.2.5 Debugger
1.3 Git und Github


2 Joomla-Grundwortschatz
2.1 Internetjargon
2.2 CMS – Backend und Frontend
2.3 Zwei Hüte, ein Kopf: Platform vs. Framework
2.4 Finger weg vom Core
2.5 Erweiterungen in Joomla
2.5.1 Komponenten
2.5.2 Module
2.5.3 Plugins
2.6 Die Datenbank
2.7 Das MVC-Entwurfsmuster


3 Erste Ausgabe im Frontend
3.1 Der Ausgangspunkt
3.2 Vorbereitung
3.2.1 Die Komponente MyThings einschmuggeln
3.2.2 Die Datenbanktabelle anlegen
3.2.3 Beispieldaten einfügen (optional)
3.2.4 Die berühmte Datei index.html
3.3 Programmieren – die erste Ausgabe
3.3.1 Der Einstiegspunkt der Komponente
3.3.2 Erweiterung der Klasse JController
3.3.3 Erweiterung der Klasse JModel
3.3.4 Erweiterung der Klasse JView
3.3.5 Die Listenansicht
3.3.6 Einen Menütyp anlegen
3.4 Zweite View: Detailansicht
3.4.1 Link zur Detailansicht einfügen
3.4.2 Das Model MyThing
3.4.3 View für die Detailansicht erstellen
3.5 Zusammenfassung 


4 Unser erstes Modul
4.1 Model: helper.php
4.1.1 Hintergründiges zu $query und SQL
4.2 Controller: mod_mythingsstats.php
4.3 Layout: default.php
4.3.1 Hintergrundwissen: Warum dieser Aufbau?
4.4 Installer: mod_mythingsstats.xml 


5 Das erste Plugin
5.1 Einfach nur einen Titel 


6 Sprachen
6.1 Eleganter: mit Sprachdateien
6.2 Eins, viele oder nichts
6.3 Und noch mehr Sprache: *.sys.ini
6.3.1 Gleiches Schlüsselwort – unterschiedliche Texte
6.4 JText im Überblick
6.5 Kleine Anmerkung zu den Sprachen 


7 Standards, Regeln, Konventionen
7.1 Allgemeine Empfehlungen zum Code
7.1.1 PHP 5.2.x
7.1.2 PHP-Tags
7.1.3 Textkodierung UTF-8 ohne BOM
7.1.4 Code einrücken, Zeilen umbrechen, Leerzeilen verwenden
7.1.5 Kontrollblöcke klammern
7.1.6 Sprechende Namen vergeben
7.1.7 Schreibweisen von Bezeichnern und Namen in PHP
7.1.8 Joomla-Sprache ist britisches Englisch
7.1.9 You can say you to me
7.1.10 Reservierte Wörter in Klassennamen
7.1.11 Dokumentation durch Kommentare
7.2 Namenskonzepte in Joomla
7.2.1 Klassen, damals und heute
7.2.2 Frontend, Backend, »joomla« und »cms«
7.2.3 Schnelle Wege zur Klasse 


8 Objekte & Co.
8.1 Objekte sind ein Abbild der Wirklichkeit
8.2 Abstrakte Klassen
8.3 Statische Klassen
8.4 Und das Ganze mit PHP
8.4.1 Der Konstruktor
8.4.2 … und der Destruktor
8.4.3 Kapselung
8.4.4 Abstrakte Klassen in PHP
8.4.5 Statische Klassen in PHP
8.4.6 Mehrfachvererbung
8.4.7 Wer ist $this?
8.4.8 Das __call-Center
8.4.9 Singleton-Entwurfsmuster
8.5 Abschließende Bemerkungen 


9 Die Joomla-API – eine Art Einführung
9.1 Rundgang um die Pakete der Platform
9.2 Objektfabrik: JFactory
9.2.1 Fabrikmodel oder getInstance()?
9.3 Keine Referenz
9.3.1 Der Urschleim: base
9.3.2 Anwendungen: application
9.3.3 Ausgabe: document
9.3.4 HTML-Fragmente: html
9.3.5 Formulare: form
9.3.6 Validierung: filter
9.3.7 Texte: string
9.3.8 Sprachen: language
9.3.9 Systemumgebung: environment
9.3.10 Helferlein: utilities
9.3.11 Sitzungsverwaltung: session
9.3.12 Mutter aller Parameter: registry
9.3.13 Datenbanken: database
9.3.14 Benutzer: user
9.3.15 Zugriffsrechte: access
9.3.16 Plugins und Ereignisse: plugin & event
9.3.17 Protokolle: log
9.3.18 Postversand: mail
9.3.19 Dateisystem: filesystem
9.3.20 Netzwerken über FTP & LDAP: client
9.3.21 Code-Archiv: Github
9.3.22 Optimierung: cache
9.3.23 Installieren und aktualisieren: installer & updater
9.3.24 Bilder manipulieren: image
9.4 Extrawurst CMS
9.4.1 Hab dich! in: cms/captcha
9.4.2 Klick mich! Schnellstart-Symbole in: cms/html
9.4.3 Und der ganze Rest
9.5 Konstante Pfade zum richtigen Ziel
9.6 Sammelbecken JHtml
9.6.1 Verwaltung
9.6.2 Datum, Kalender und Ressourcen
9.6.3 Formularelemente
9.6.4 HTML-Widgets und Behaviors
9.6.5 Toolbar
9.6.6 Mögen Sie Mootools ... nicht?
9.7 Die Joomla-API unterm Strich
9.7.1 Es bleibt alles anders
9.8 Einsatz missbilligt: deprecated
9.8.1 Schritte bei der Migration von 1.5er Erweiterungen


10 Unsere Komponente: Backend
10.1 Das Einstiegs-Skript
10.2 Der Chef-Controller
10.3 Die Verzeichnisstruktur
10.4 Die Controller
10.4.1 Controller für die Listenansicht
10.4.2 Controller für die Formularansicht
10.5 Die Views
10.5.1 Die Toolbar
10.5.2 Die Klasse JView
10.5.3 Die Listenansicht: View MyThings
10.5.4 Das Default-Layout
10.5.5 Die Formularansicht: View MyThing
10.5.6 Das Layout edit
10.6 JTable – die Schnittstelle zur Datenbank
10.7 Die Models
10.7.1 Das Model MyThings
10.7.2 Die Formulardefinition
10.7.3 Das Model MyThing
10.8 Noch mal Controller
10.8.1 Der Controller der Listenansicht: MyThings
10.8.2 Der allgemeine Controller
10.9 Das Geheimnis der drei Controller
10.10 Die Sprachdateien
10.11 Aus Fehlern lernen
10.12 Backend, die erste – geschafft!


11 Formulare cleverer: JForm
11.1 XML-Dateien für HTML-Formulare
11.1.1 Container, Strukturen, Daten und Dateien
11.1.2 Fields und Attribute. Viele davon
11.1.3 Datenfilter
11.1.4 Kleine Feldstudie


12 Fehlerbehandlung
12.1 Mit Ausnahmen umgehen
12.1.1 Mit Ausnahmen üben
12.1.2 Die Ausnahme zur Regel machen
12.2 Ausnahmen in MyThings 


13 Alles bleibt anders – Exkurs Refactoring
13.1 Refactoring im Backend
13.2 Refactoring im Frontend – Hausaufgabe!
13.3 Schrotflinten-Chirurgie und Nebenwirkungen 


14 Filter – Sortierung – Pagination
14.1 Die Listenansicht wird erwachsen
14.1.1 Neue Eigenschaften für die View
14.1.2 Die Ausgabe anpassen
14.2 Das Model und sein state 


15 Kategorien, User und JForms
15.1 Komponenten-Submenü einschleusen
15.2 Normalisierung der Datenbank
15.2.1 Mini-Exkurs Normalisierung
15.2.2 Tabelle #__mythings ändern
15.2.3 MyThingsTableMyThings anpassen
15.3 Das Model anpassen: categories und user
15.4 Die Listenansicht anpassen
15.4.1 Das Submenü der Listenansicht
15.4.2 Listenansicht mit Kategoriefilter
15.5 Formularansicht und JForms
15.5.1 Man nehme ... fieldsets und fields
15.5.2 ... garniere sie mit Eigenschaften
15.5.3 ... zeige sie als Formular
15.5.4 Layout-Variante mit Schleife
15.6 Erweiterung der Sprachdateien
15.7 Frontend anpassen


16 Kosmetik fürs Frontend
16.1 Layout-Overrides erstellen
16.2 Alternatives Layout erstellen
16.3 Ressourcen einbauen: JDocument
16.3.1 Gegen den Inline-<script>
16.3.2 Probieren Sie mal Heredocs
16.4 Browser-Ressourcen in ./media
16.4.1 Medien in der manifest.xml
16.5 Trickreiche Ausführung


17 Plugins – Arbeiten im Untergrund
17.1 Klammern ersetzen im Beitrag
17.2 Dynamischer Titel per Parameterübergabe
17.3 Triggern von Ereignissen
17.4 System-Plugins
17.4.1 Plugin MyThings Systemtools: Verleihstatus
17.5 Bemerkenswerte Ereignisse
17.5.1 onContentBeforeSave und onContentAfterSave
17.5.2 onContentPrepareData und onContentPrepareForm 


18 Module: Daten immer anders
18.1 Eines für alle
18.1.1 Das einfachste vorweg: Erweiterte Optionen
18.1.2 Eigene Parameter in den Basisoptionen
18.1.3 Alles unter Kontrolle
18.1.4 Ausgabe der Arrays
18.2 Und weiter…


19 Die Komponente wird konfigurierbar
19.1 Globale Einstellungen der Komponente
19.1.1 Toolbar: Das Icon »Optionen«
19.1.2 Die config.xml
19.1.3 Verwendung im Frontend
19.2 Einstellungen zum Menüpunkt
19.3 Eine Extrawurst für jedes Ding
19.3.1 Parameter definieren
19.3.2 Formularansicht erweitern
19.3.3 Datenbank und JTable
19.4 Feuer frei! Einsatz im Frontend
19.4.1 Wer gewinnt? Parameter zusammenführen
19.4.2 Menü-Parameter für die Listenansicht
19.4.3 Die Detailansicht MyThing
19.5 Zusammenfassung
19.5.1 Kurz und bündig – Parameterdefinitionen
19.6 Sprachdateien


20 Wer darf was? Zugriffsrechte
20.1 Globale Konfiguration der Berechtigungen
20.2 Der Dreh- und Angelpunkt: Die access.xml
20.3 Asset – Das Objekt der Begierde
20.3.1 Die Tabelle #__assets
20.3.2 Tabelle #__mythings erweitern
20.3.3 JTable erweitern, um assets zu generieren
20.4 Der User, das bekannte Wesen
20.5 Wächter in Aktion – Zugriffsrechte prüfen
20.5.1 Zugang zur Komponente einschränken
20.5.2 Zugriffsregeln für einzelne Datensätze
20.6 Zusammenfassung


21 Formular im Frontend
21.1 Das Model
21.2 Die View
21.3 Der Controller
21.4 Weniger ist mehr
21.5 Sprachschlüssel 


22 Routing und SEF
22.1 BuildRoute
22.1.1 Alias, Slug und der Rest
22.1.2 Die Itemid sticht
22.2 ParseRoute


23 Installer
23.1 Das XML-Grundgerüst
23.1.1 !DOCTYPE
23.1.2 manifest.xml
23.1.3 method: install oder upgrade
23.2 Die Container im Überblick
23.3 Übersicht der einzelnen Standardtypen
23.3.1 Komponente
23.3.2 Modul
23.3.3 Plugin
23.3.4 Language
23.3.5 Template
23.3.6 Library
23.3.7 File
23.3.8 Package
23.4 install-, uninstall-, update-Skripte
23.4.1 SQL-Skripte
23.4.2 PHP-Skripte
23.5 Media
23.6 Update-Server
23.6.1 type="extension"
23.6.2 type="collection"
23.6.3 Anmerkungen zum Update-Server


Anhang A – Nützliche Links .
A.1 Entwicklungsumgebungen und -hilfen
A.1.1 NetBeans
A.1.2 PHPEdit
A.1.3 EasyCreator
A.1.4 PHPUnit
A.1.5 Versionskontrolle und gemeinsame Projekte
A.2 GNU/GPL
A.3 PHP
A.4 SQL
A.5 HTML, CSS und Co.
A.6 Programmierung allgemein
A.7 Joomla 


Anhang B – Events (Plugins)
B.1 System (Anwendung)
B.2 Authentifizierung, Login, Logout
B.3 Content (allgemein)
B.4 Erweiterungen (Backend)
B.5 Installation
B.6 Formulare und Models (JForm, JModel)
B.7 Komponente: Beiträge (com_content)
B.8 Komponente: Kontakte (com_contact)
B.9 Komponente: Benutzer (com_users)
B.10 Komponente: Suche
B.11 Editor
B.12 Captcha


Anhang C – Entwicklungsumgebung
C.1 PHPEdit – Axels Editor
C.1.1 Moderne Oberfläche
C.1.2 Alles Einstellungssache
C.1.3 Benutzung von Frameworks
C.1.4 Debug

 

Vom Franzis Verlag gibt es eine 52 Seiten umfassende Leseprobe im PDF-Format

Das Letzte...

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

Stefan Koch: JavaScript

[amazonadd=3898647315] Im Vorwort des Buches steht, dass die Erstauflage vor 14 Jahren erschienen ist. Vorliegend habe ich eine Auflage aus dem Jahre 2011. Also liegt die Erstauflage deutli...

Bernd Held: VBA mit Excel

[amazonadd=3836225794]Es gibt das ein oder andere Problem in Excel, welches ich nie wirklich lösen konnte in der Vergangenheit und oft genug irgendwelche „Eiertänze“ mit Zwischentabellen ode...

Matthias Geirhos: Visual Basic 2012

  [amazonadd=3836219557] „Das Paxisbuch“ steht direkt unter der Überschrift Manchmal ist es aber wichtig, dass man das wirklich Kleingedruckte liest, um zu erfahren, was in dem Buch ...

Google-Fonts einbinden

Google-Fonts in Joomla einbinden, ist wirklich sehr einfach. Dazu zunächst die index.php des benutzten Templates editieren, welches ihr unter /templates/NameDesBenutztenTemplates/ findet und...

SEBLOD: Speicherung der Feld- und Datentypen

Ein unlektoriertes Vorabkapitel aus meinem Buch zum CCK SEBLOD™ steht hier als PDF-Download zur Verfügung- Auf knapp 20 Seiten wird der gesamte Speicherbereich erklärt. Dazu noch, wie man ei...

Stephan Nelles: Excel 2010 im Controlling

[amazonadd=3836215314] Ich will ehrlich zu Ihnen sein: Ich bin absolut überzeugt von meiner kleinen aber feinen Firma, von meinem Marketing und sowieso viel besser als die Mitbewerber! Zu...

SEBLOD: Rund um Group und Group X

  Dieses Tutorial steht auch als PDF im Downloadcenter zur Verfügung     Nach dem ersten Tutorial (Einführung in Seblod) kam ein Kontakt zu Kiki (Screendesign Whykiki) und...

Helmut Schuster: Excel 2010 - Pivot-Tabellen

  [amazonadd=3866456786] Das vorliegende Buch trägt die Untertitel Das Praxisbuch - Ideen und Lösungen für die Datenanlyse mit PivotTables und PivotCharts. Ergo findest sich in d...

SEBLOD: Einführung am Beispiel eines selbsterstellten Portfolios

Dieses Tutorial steht als PDF-Download im Download-Center zur Verfügung.   Als ich das erste Mal Seblod installiert hatte, habe ich große unverständliche Augen gemacht, ein wenig heru...

nach oben scrollen

Suchen Sie einen Webhoster? time4joomla empfiehlt: www.Joomlahosting.de
Joomla ist ein freies CMS - Webdesign, Programming and Content by time4mambo
PR nur für diese Seite: SEO Tools

www.time4joomla.de is not affiliated with or endorsed by the Joomla! Project or Open Source Matters. The Joomla! name and logo is used under a limited license granted by Open Source Matters the trademark holder in the United States and other countries.