SilverStripe erfüllt alle Anforderungen an ein modernes, MVC-basiertes CMS. Angefangen von den Standard-Features (Websiteverwaltung,
Bilder- und Dokumentenverwaltung
etc.) bis hin zu umfangreichen Möglichkeiten, die Nutzer und ihre Beiträge in die Site zu integrieren. Unser Buch versetzt den Leser in die Lage, SilverStripe in einem Produktiv-System einzusetzen und an die eigenen Bedürfnisse anzupassen.
Rezensionen / Stimmen
Die Lernkurve zu SilverStripe wird durch dieses Buch stark verkürzt, was es für jeden an diesem CMS interessierten Entwickler unentbehrlich macht.
Reihe
Sprache
Verlagsort
Editions-Typ
Maße
Höhe: 16.8 cm
Breite: 24 cm
ISBN-13
978-3-8362-1295-3 (9783836212953)
Schweitzer Klassifikation
. Geleitwort. 17
. Vorwort. 21
. Wie es zu diesem Buch kam. 21
. Danksagungen. 23
. An wen richtet sich dieses Buch?. 24
. Aufbau des Buches. 25
. Versionen, Cutting- und Bleeding Edge. 26
. Hinweise zu Code-Listings. 27
1. Einführung. 29
. 1.1. Warum SilverStripe?. 29
. 1.2. Entwickler und Entwicklung. 34
. 1.3. Historie. 36
. 1.4. Ausblick. 37
. 1.5. Zusammenfassung. 38
2. Einrichtung. 39
. 2.1. Systemvoraussetzungen. 39
. 2.2. Vorbereitung. 40
. 2.3. Installation. 43
. 2.4. Entwicklungsumgebungen. 52
. 2.5. Datenbankverwaltung. 57
. 2.6. Support. 58
. 2.7. Zusammenfassung. 59
3. Architektur. 61
. 3.1. Einleitung. 61
. 3.2. MVC -- Model View Controller. 62
. 3.3. ORM -- Object Relational Mapping. 71
. 3.4. Ordnerstruktur. 79
. 3.5. Module und Widgets. 81
. 3.6. Themes. 83
. 3.7. System-Architektur. 84
. 3.8. Konfiguration. 93
. 3.9. Zusammenfassung. 99
4. Erste Schritte. 101
. 4.1. Unser Projekt: Usergroup mit Jobbörse. 101
. 4.2. Seitenstruktur anlegen. 103
. 4.3. Seiteninhalt einfügen. 113
. 4.4. Verwaltung von Dateien und Bildern. 120
. 4.5. Versionierung. 128
. 4.6. Kommentarfunktion. 130
. 4.7. Einfaches Kontaktformular. 133
. 4.8. Neue Benutzer anlegen. 137
. 4.9. Themes. 141
. 4.10. Zusammenfassung. 144
5. Entwicklung: Stellenangebote. 145
. 5.1. Jobkategorie als eigener Seitentyp. 145
. 5.2. Job als DataObject. 150
. 5.3. Relationen zwischen DataObjects. 153
. 5.4. Definition des Interfaces. 157
. 5.5. Templates erstellen. 165
. 5.6. Eigene Formulare. 182
. 5.7. E-Mail-Benachrichtigung. 190
. 5.8. Integration des Blog-Moduls. 197
. 5.9. Suchmaschinenoptimierung. 199
. 5.10. Zusammenfassung. 207
6. CRM-Erweiterung. 209
. 6.1. Wo wollen wir hin?. 210
. 6.2. Datenmodell. 211
. 6.3. Verwaltung mit ModelAdmin. 217
. 6.4. Mehrseitiges Registrierungsformular. 225
. 6.5. Fähigkeiten als Tags. 238
. 6.6. Datei-Upload für Referenzen. 240
. 6.7. Suche in DataObjects. 246
. 6.8. Generische Views über CollectionController. 252
. 6.9. Zugriffsberechtigungen definieren. 261
. 6.10. Webservice über RESTfulServer. 265
. 6.11. Zusammenfassung. 273
7. Sicherheit. 275
. 7.1. Cross-Site Scripting (XSS). 275
. 7.2. Cross-Site Request Forgery (CSRF). 279
. 7.3. SQL Injection. 280
. 7.4. Directory Traversal. 283
. 7.5. Sessions. 286
. 7.6. Zusammenfassung. 288
8. Betriebssicherung. 289
. 8.1. Versionskontrolle mit Subversion. 289
. 8.2. Backup. 294
. 8.3. Upgrade. 297
. 8.4. Fehlerbehandlung. 299
. 8.5. Performance. 303
. 8.6. Zusammenfassung. 309
9. Testing. 311
. 9.1. Test-Driven Development. 312
. 9.2. Installation von PHPUnit. 313
. 9.3. Ausführung von Tests. 314
. 9.4. Unit-Tests des Modells. 316
. 9.5. Functional Testing des Controllers. 321
. 9.6. Zusammenfassung. 325
10. Lokalisierung. 327
. 10.1. Zeichensätze und Unicode. 327
. 10.2. Übersetzung in Templates und Code. 330
. 10.3. Translatable: Übersetzung von Seiteninhalten. 335
. 10.4. Sprachwahl. 338
. 10.5. Zusammenfassung. 340
11. Rezepte. 341
. 11.1. Voraussetzungen. 341
. 11.2. Seitenspezifische Banner. 341
. 11.3. Branding des CMS-Interfaces. 345
. 11.4. Volltextsuche für Webseiten. 348
. 11.5. Weiterleitung alter URLs. 354
. 11.6. Einfache Statistiken mit TableListField. 358
. 11.7. Kontextnavigation. 366
. 11.8. CSV-Import über CSVBulkLoader. 375
. 11.9. Flash Integration über XML. 381
12. Erweitern. 395
. 12.1. Anwendungsbereiche. 396
. 12.2. Kernfunktionalität erweitern. 396
. 12.3. Eigenes Modul erstellen. 404
. 12.4. Eigenes Widget erstellen. 407
. 12.5. Zusammenfassung. 414
A. Weitere Module. 417
. A.1. E-Commerce. 418
. A.2. Forum. 419
. A.3. Galerie. 420
. A.4. Flickr Service. 422
. A.5. Youtube Service. 424
. A.6. Recaptcha. 425
. A.7. Google Maps. 427
. A.8. Auth_External. 428
. A.9. Auth_OpenID. 429
B. Inhalt der CD. 431