Kategorien
CMS Programmierung

Markup-Editoren für jede Textarea

Schon der Titel macht wohl deutlich, dass dieser Beitrag nicht gerade einer der Kategorie „general interest“ ist. Dafür werden sich diejenigen, die sich dafür interessieren, umso mehr freuen. Um doch noch eine Spur „general interest“ rein zu bringen, stelle ich ein zum Thema gehöriges WP-Plugin vor. Diejenigen Webentwickler unter Ihnen, die auf der Suche nach einem benutzbaren und idiotensicheren clickable Code-Editoren für ihre Auftraggeber sind, lesen bitte weiter. Im Folgenden stellen wir Ihnen den eigenständigen Newcomer „SmartMarkUp“ von PHPcow, sowie den schon länger am Markt befindlichen jQuery-Aufsatz markItUp! vor.

Markup-Editoren: Problemstellung

Sie realisieren ein Projekt für einen Kunden, in welchem Sie auch eine Art Mini-Redaktionssystem verwirklichen sollen. Kleinere Texte sollen durch Mitarbeiter des Auftraggebers online gestellt werden können. Natürlich verwenden Sie Textarea als Element der Wahl. So können die Mitarbeiter Texte erfassen. Aber: Wie sollen sie diese Texte formatieren? HTML-Code ist zwar möglich und würde auch interpretiert. Nur leider ist von den Mitarbeitern keiner auch nur im Ansatz HTML-kundig. Ein Editor muss her, mit dessen Hilfe über einfache Buttons Formatierungen in den Text eingesetzt werden können. Dabei soll der Editor aber nicht irgendwelchen Code produzieren, wie es bei diversen bekannten Editoren gang und gäbe ist. Vielmehr legen Sie Wert auf validen Code, sowie darauf, dass nur bestimmte Tags verwendet werden können.

Genau dafür eignen sich die beiden Javascript-Bibliotheken SmartMarkUp und markItUp!. Natürlich richten sich die Bibliotheken auch an die Teams der CMS-Entwickler. Schließlich muss man nicht aus purer Eitelkeit jede Aufgabe selber lösen oder ständig das Rad neu erfinden.

SmartMarkUp (SMU) von PHPCow

Die Besonderheit an SMU ist, dass es sich um eine völlig eigenständige Lösung handelt. Sie ist weder fest an ein Javascript-Framework gebunden, noch benötigt sie weitere Funktionalitäten neben denen, die sie selbst mitbringt. SMU kann daher ohne Framework oder aber mit jedem beliebigen Framework, sei es jQuery, Mootools, Prototype oder welches auch immer verwendet werden. Eine weitergehende Integration in jQuery ist vorbereitet, aber grundsätzlich nicht erforderlich.

smu-conf-js.png

SMU wird mit Konfigurationen für HTML, CSS und BBCode geliefert. Eigene Konfigurationen können in einfach zu schreibenden „conf.js“ schnell selbst angelegt werden. SMU ist skinnable und kann von daher nahtlos in bestehende Designs eingebaut werden. Die Bindung an die jeweilige Textarea erfolgt in wenigen Schritten, welche die Entwickler, wie auch die sonstigen Installations-, Konfigurations- und Erweiterungsmöglichkeiten, ausführlich dokumentiert haben.  SMU ist aufgrund einer strukturierten API einfach zu erweitern und zu kontrollieren. Add-Ons in Form eines Farbwählers, eines Sonderzeichen-Tabletts, sowie eines Suchen-Ersetzen-Dialogs werden mitgeliefert, eigene sollen mit wenig Aufwand erstellt werden können.

SMU ist eine moderne Lösung auf dem Stand der Technik. Es spräche im Grunde wenig für ihren Einsatz, wenn es nicht den Konkurrenten markItUp! gäbe. SMU ist aber in jedem Falle die Lösung der Wahl, wenn Sie in Ihrem Projekt nicht mit jQuery arbeiten können oder wollen. Es gibt derzeit keine weitere völlig eigenständige Lösung, die ohne jegliches Framework auskommen würde. Gehören Sie zu den Entwicklern, die ohnehin auf jQuery setzen oder künftig setzen wollen oder jederzeit ein beliebiges Framework integrieren können, empfehle ich Ihnen den Einsatz der „markItUp!“-Bibliothek.

markItUp! (mIU) von Jay Salvat

Würde PHPCow nicht ohnehin selber einräumen, dass man sich von „Jay Salvat“ inspirieren ließ, man würde es auch selber sehr schnell merken. Tatsächlich wirkt SMU wie eine schwächere Kopie. Mit zwei Unterschieden pro und kontra SMU:

  1. Pro: SMU ist nicht von jQuery abhängig, steht also auch Jüngern anderer Frameworks zur Verfügung.
  2. Kontra: mIU verfügt über eine Vielzahl downloadbarer Addons und Sprachimplementationen.

mIU kann bereits eine ansehnliche Zahl von Referenzverwendern benennen, darunter das bekannte CMS Redaxo, wie auch das weniger bekannte TangoCMS. Funktional gilt für mIU, was bereits zu SMU gesagt wurde. Auch mIU ist mit zwei Codezeilen zu integrieren, es ist leicht zu erweitern und es kann an das jeweilige Seitendesign angepasst werden. Hinsichtlich des Datengewichts tun sich SMU und mIU nur wenig. Beide bewegen sich unterhalb von 10 kb pro Konfiguration.

plugins-miu.png

Aufgrund seiner Einbindung in jQuery ist es überdies möglich, weitere jQuery-Funktionalitäten auch für den Editor nutzbar zu machen, so dass mIU insgesamt das deutlich mächtigere Werkzeug ergibt. So ist es beispielsweise möglich, mIU von jeder beliebigen Position in der Website aus anzusprechen sowie sonstige Features, wie Galleries, Dropdowns etc. einzubinden.

miu-html-set-example.png

Für den Entwickler und/oder Blogger auf der Basis gängiger CMS entfaltet mIU einen besonderen Charme, da es von engagierten Community-Teilnehmern in Plugin-Form gegossen wurde. Unter anderem für Drupal und WordPress, Habari und Textpattern stehen funktionsfähige Plugins bereit. In WP ersetzt mIU die eher schmalbrüstige Tab-Leiste, die die WP-Entwickler der Textarea mitgegeben haben und die nicht einmal für die gängigsten Befehle gerüstet ist.

wp-standard.png

Wer sich also – nicht zu unrecht – über die Qualität des Wysiwyg-Codes beschwert und deshalb bislang HTML per Hand setzt, sollte sich das mIU-Plugin einmal näher ansehen. Produktivitätssteigerung ist garantiert. Um die Installation des jQuery-Frameworks muss man sich übrigens nicht kümmern. Dieses wird mit dem Plugin automatisch installiert.

wp-markitup.png

Executive Summary

  • jQuery ohnehin im Einsatz oder kein Problem, es einzusetzen? => markItUp!
  • Frameworks sollen oder können nicht eingesetzt werden oder sind nicht jQuery? => SmartMarkUp ™
Kategorien
CMS Programmierung WordPress

CMS mit Shopsystem Teil 3: Plugins und Themes für WordPress

WordPress ist wahrscheinlich das beliebteste Open-Source Blog-System im Netz. Dank der rasanten Weiterentwicklung wandelte sich dessen Image von einer reinen Blog-Anwendung schnell hin zum vollwertigen Content-Management-System. Dieser Fortschritt führte zwangsläufig auch zu der Frage, kann mit WordPress auch ein Online-Shop betrieben werden?.

Die Nachfrage nach solchen Erweiterungen für WordPress wird stetig größer. Zahlreiche Blogger, vor allem Betreiber von Shopping-Blogs, sehnen sich nach ausgereiften Möglichkeiten, Produkte unter ihrer Leserschaft zu vertreiben. Externe Lösungen wie die Weiterleitung vom Weblog in den eigentlichen Shop oder die Einbindung des Blogs in einen bestehenden Shop haben eindeutige Nachteile. Die Kunden müssen sich oft zweimal registrieren, einmal, um im Blog Kommentare zu verfassen, und einmal, um im Shop zu bestellen. Zudem kann man nicht alles einheitlich über das Backend von WordPress verwalten. Den Shop muss man bei einer externen Lösung zusätzlich über den eigenen Admin-Bereich des Shop-Systems organisieren.

Nicht verwunderlich also, dass unter den 3.458 Plugins des Repository der offiziellen Homepage einige E-Commerce-Erweiterungen sind. Wieviele davon für den Aufbau eines Shops gedacht sind, ist leider schwer zu sagen, da der offizielle Auftritt von WordPress keine Rubrik „E-Commerce“, „Shopping-Carts“ oder Ähnliches listet. Die Anzahl der zu findenden Plugins variiert nach der Trefferquote des Suchbegriffs.

Tatsache ist, dass man mit WordPress Shops mit ansprechender Optik betreiben kann. Das veranschaulichte der Lopsta Ecommerce Blog. Dort finden sich beeindruckende Screenshots von zehn Shops, die mittels WordPress verwaltet werden.

Screenshot

Zweifellos bringt es Vorteile, einen Blog direkt im CMS um Shop-Funktionen zu erweitern. Ob es tatsächlich die beste Lösung ist, hängt jedoch immer von der Erweiterung ab. Die bekanntesten Shop-Extensions für WordPress sind das „WP e-Commerce“-Plugin der neuseeländischen Firma „Instinct“ und das kostenpflichtige „Market Theme“. Die beiden Anwendungen gelten als die professionellsten rund um WordPress und sind auch jene, die für die Umsetzung der zehn Shops im Lopsta-Blog verwendet wurden. Wie die folgenden detaillierten Betrachtungen zeigen werden, reicht jedoch allein dieser Status unter dem Angebot rund um WordPress noch nicht aus, um sich als besonders empfehlenswerte Shop-Lösung zu profilieren. Vor allem auf dem deutschen Markt genügt die bisherige Auswahl an E-Commerce-Erweiterungen kaum den Ansprüchen der hiesigen Shopbetreiber.

Market Theme

Market Theme ist im Gegensatz zu anderen Erweiterungen für WordPress kein Plugin, sondern ein so genanntes Premium Theme. Theme deshalb, weil es schlicht die Frontend-Oberfläche darstellt, um einen Webshop zu verwalten. Das geschieht mittels eines integrierten Ajax-Shopping-Cart Moduls. Lediglich für die Verwaltung der Produkte im Backend wird ein kleines Plugin namens Market Produkt Manager, kurz MPM, benötigt. Dieses Plugin wird mit dem Download des Themes mitgeliefert.

Der Entwickler verspricht mit Market ein revolutionäres Theme, das jede normale WordPress-Installation in einen vollwertigen Online-Shop mit Backend-Produktverwaltung verwandelt. Zudem soll die Produktverwaltung dank des MPM besonders einfach zu bedienen sein. Diese Versprechungen halten einer Überprüfung, soweit diese mit dem Demo-Shop des Anbieters möglich war, jedoch nicht stand. Für die 55 US-Dollar Lizenzgebühr (für Entwickler sogar 150 US-Dollar) unterstützt „Market Theme“ bei den Bezahlmethoden nur PayPal und Google-Checkout. Es gibt keine Möglichkeit, Steuerklassen auszuwählen, wodurch davon auszugehen ist, dass es auch nur eine Steuerklasse gibt. Damit ist es einem deutschen Shop, der Produkte mit unterschiedlichen Mehrwertsteuersätzen verkaufen will, unmöglich, das Theme zu nutzen.

Auch bei den Versandeinstellungen werden keine Optionen angeboten. Es besteht lediglich die Möglichkeit beim Anlegen eines Produkts, einen Versandbetrag anzugeben. Zudem gibt es kaum Support für dieses kostenpflichtige „Premium“-Produkt. Weder per Telefon noch per Mail ist der Entwickler für Käufer zu erreichen. Mit dem Kauf des „Market Themes“ erhält man aber Zugang zu einem Forum, das nur für Kunden bereitgestellt wird. Wie aktiv die Hilfestellung rund um „Market Theme“ tatsächlich ist, lässt sich von außen so nicht einschätzen.

Zum Shop selbst ist zu sagen, dass das Theme Möglichkeiten bietet, Produkte ansprechend zu präsentieren: Produktkategorien, mehrere Bilder für ein Produkt, Beschreibungen, Tags und verschiedene Produktattribute werden unterstützt und auch angezeigt. Der Demo-Shop führt bei Produkten zwei Buttons: „buy now“ und „add to cart“. Der „buy now“-Button leitet sofort weiter zu PayPal (ohne eine Zustimmung zu den AGBs) und der „add to cart“-Knopf blendet ein Lightbox-Fenster mit dem Warenkorb ein. In diesem Fenster lässt sich die Anzahl der zu bestellenden Produkte auswählen (diese Möglichkeit besteht vorher nicht) und links unten befindet sich ein weiterer Link zum Bezahlen via PayPal.

Screenshot

Im Backend fällt die Shop-Erweiterung kaum auf. In der Navigationsleiste neben „Comments“ findet sich nach Installation des MPM-Plugins der Punkt „Add Product“. Bei der Produktverwaltung verspricht Market tatsächlich nicht zuviel. Ein Produkt anzulegen funktioniert genauso, wie einen Beitrag zu verfassen. Bild hochladen, Text verfassen, dazu noch Preis, Tags, Versandkosten und weitere Angaben machen und das Produkt steht online zum Verkauf. Verwaltet werden die Produkte dann zusammen mit den Beiträgen unter dem entsprechenden Menü-Punkt. Diese Handhabe ist einfach, vor allem für jene, die sowieso schon mit WordPress arbeiten. Bei zu vielen Produkten wird die Organisation des Shops mit dem MPM jedoch zu unübersichtlich.

Screenshot

Zusammenfassend ist festzuhalten, dass Market Theme zwar leicht zu bedienen ist, diese Eigenschaft aber aufgrund der eingeschränkten Möglichkeiten nicht besonders überrascht. Für den Betrieb eines professionellen Shops mit vielen Produkten und Kunden ist das Theme nicht geeignet. Der Einsatz in einem deutschen Shop gestaltet sich aufgrund der vielen Einschränkungen wie fehlende Steuerklassen, Versandoptionen oder eine Zustimmung zu den AGB vor der Bezahlung schwierig. Auch sonst überzeugt „Market Theme“ nicht, da jederzeit aus einem kleinen Hobby-Shop ein größeres Projekt werden kann, wodurch das Theme sicherlich an seine Grenzen stößt.

WP e-Commerce

WP e-Commerce ist eine kostenlose E-Commerce-Erweiterung für WordPress und in einem Plugin verpackt. Es ist auch aus dem Repository der offiziellen Homepage herunterzuladen. Installiert wird die Shop-Erweiterung wie jedes andere Plugin auch. Auf der Seite des Herstellers „Instinct“ wirbt man mit der Popularität dieser Shop-Lösung für WordPress. Mehr als 100.000 User sollen WP e-Commerce bereits heruntergeladen haben.

„Instinct“ bezeichnet das Plugin als vollwertiges E-Commerce-System und liefert auf der Homepage eine Feature-Liste. An dieser Liste fällt jedoch auf, dass manche Funktionen, die eigentlich zu den Standards bei Shop-Lösungen gehören, extra hinzugekauft werden müssen. Zum Beispiel eine Produktsuche, andere Payment-Gateways als PayPal und Google-Checkout oder ein tabellarischer Aufbau der Produktanzeige (Grid-Layout). Diese Funktionen sind in verschiedenen Modulen erhältlich, die für das WP e-Commerce nachinstalliert werden können. Der Preis liegt zwischen 10 und 25 Dollar.

Viele Highlights bietet das Plugin nicht. Zu erwähnen wären jedoch One-Page-Checkout (bezahlen in einem Schritt) und die Marketing-Funktionen, die der Hersteller unter Social Networking anpreist, zum Beispiel das „Share This“-Plugin, mit dem Kunden Produkte bookmarken und weiterempfehlen können.

Deutsche Shopbetreiber, die WP e-Commerce einsetzen wollen, müssen sich auf viel Anpassungsarbeit einstellen. Auch in dieser WordPress Shop-Lösung ist nur eine Mehrwertsteuerklasse vorgesehen und die Versandoptionen bieten lediglich die Einstellung eines nationalen und internationalen Basispreises. Zudem liegt die deutsche Übersetzung nur in einer veralteten Version vor und ist unvollständig. Beispielsweise sind die Gewichtangaben in Pfund und Unzen fest kodiert und müssen in der entsprechenden Datei geändert werden.

Jene Shops, die von Instinct als Beispiele für den gelungenen Einsatz des WP e-Commerce-Plugins hervorgehoben werden, zeigen, dass damit optisch ansprechende und funktionstüchtige Shops betrieben werden können. Die Produktpräsentation kann mittels des zugekauften Grid-View-Moduls (Preis 15 Dollar) übersichtlich gestaltet werden. Die Produkte werden bebildert dargestellt, in Kategorien eingeteilt und in verschiedenen Varianten aufgeführt (inklusive eigener Preise). Da für das Frontend-Widget eingesetzt werden, braucht man auch ein Widget-fähiges Template.

Screenshot

Das Backend führt nach der Installation den Reiter „e-Commerce“ in der Navigation. Dahinter findet man die Punkte Sales (Verkäufe), Products (Produkte), Groups (Gruppen), Variations (Varianten), Marketing, Payment und Checkout Options (Bezahloptionen) und Settings (Einstellungen). Abgesehen von Produktverwaltung und Bezahloptionen beschränkt sich die Verwaltungsoberfläche somit auf die Anzeige der getätigten Käufe, Export in CSV, Umsätze des Monats und E-Mail-Benachrichtigung für den Kunden nach einer Bestellung. Um hier tatsächlich an den Funktionsumfang eines vollwertigen Shop-Systems heranzukommen, muss WP e-commerce noch deutlich erweitert werden.

Screenshot

Auch für dieses Plugin bleibt zusammenfassend die Erkenntnis, dass es als Shop-Lösung nur bedingt einsetzbar ist. Will man WP e-Commerce für den deutschen Markt fit machen, so ist einiges an Anpassungsarbeit zu leisten. Mindestens die Steuerklassen, die Versandoptionen, die Übersetzung und manche Feinheiten, wie eine Zustimmung zu den AGBs vor dem Zahlvorgang, müssen für den Online-Betrieb hierzulande überarbeitet werden. ™

Kategorien
JavaScript & jQuery Programmierung

50+ nützliche Plugins für jQuery

Diese Sammlung enthält mehr als 50 nützliche Plugins für das schnelle und beliebte JavaScript-Framework „jQuery“. Das Ganze ist bunt gemischt und bietet Plugins zu den verschiedensten Einsatzbereichen von jQuery. Einen Anspruch auf Vollständigkeit bietet diese Liste nicht.

Canvas Rounded Corners
Abgerundete Ecken für DOM-Objekte mit dem Element „canvas“.

CrossSlide
Stellt verschiedene Standard-Animationseffekte für Slideshows zur Verfügung.

SpaceGallery
Gallery, die ein wenig an „Time Machine“ auf dem Mac erinnert.

ZoomImage
Zoom für einzelne Bilder mit der Möglichkeit zum Durchblättern und verschiedenen Optionen.

FancyBox
Weiteres Zoom-Plugin für Bilder, bietet auch die Möglichkeit, Videos von YouTube oder anderen Diensten einzubinden.

Facebox
Facebook ähnliche Lightbox mit verschiedenen Verwendungsmöglichkeiten.

Masked Input Plugin
Ermöglicht es, die Input-Felder von Formularen zu maskieren, um den User zur Eingabe in einem bestimmten Format zu zwingen.

jQuery Corners
Ein weiteres Plugin zur Erzeugung von runden Ecken.

sIFR-Plugin
Ermöglicht es, Text durch Flash-Text (sIFR) zu ersetzen.

Gallerific
Schlankes Galerie-Plugin (Vorstellung bei Dr. Web)

Select Box Factory
Eine schicke Auswahlbox mit zahlreichen Features.

scrollable
Stellt die Möglichkeit horizontalen Scrollens für HTML-Elemente bereit, zum Beispiel horizontale Video-Playlisten.

overlay
Bietet Overlay-Funktionalität mit einigen Optionen zur Gestaltung an.

expose
Expose-Funktion für verschiedene Elemente wie Videos und Bilder.

Pirobox
Image-Zoom und Gallery-Funktionen mit einigen schicken Möglichkeiten.

jCarousel
Objektkarusell für vertikalen und horizontalen Einsatz, bringt verschiedene Optionen mit.

jquery.combobox
Combobox mit jQuery die sich vollständig mit CSS stylen lässt.

CSS3-Clock
Eine Analoguhr mit CSS3 und jQuery.

jClock
Einfache Zeitausgabe.

ClockPick
Timepicker für jQuery, nicht zu verwechseln mit Datepickern.

jQuery Feed Menüs
Schickes Feed-Menü, welches das aus den Browsern bekannte imitiert.

Impromptu
Einfaches UI-Element um Alerts und Eingabe-Aufforderungen zu ersetzen.

tablesorter
Plugin für clientseitiges Sortieren von Tabelleninhalten.

DateRangePicker
Modifizierter DateRangePicker mit Shortcuts und Anpassung für große Datenmengen.

jQuery File Tree
Stellt einen Dateibaum für das Filebrowsing zur Verfügung.

s3slider
Stellt unter anderem Animationseffekte für Slideshows bereit.

Coda Slider Effect
Imitiert den Slider-Effekt aus der Mac-Software Coda von Panic.

jQuery Timers
Simples Timerplugin für jQuery.

Jeditable
Lässt den User Inhalte direkt an Ort und Stelle editieren, statt Formulare zu öffnen.

innerfade
Stellt Fader-Effekte für beliebige Elemente zur Verfügung.

Jcrop
Cross-Plattform „Imagecropping“ für nahezu jede Webapplikation.

jRails
Macht Rails-Methoden in jQuery nutzbar.

autocomplete
Automatische Vervollständigung mit Caching zur Reduzierung von Serveranfragen.

jQuery Form Plugin
Gibt eine Rückmeldung über den Versand von Daten via Formular.

jScrollPane
Ermöglicht die Kontrolle über Scrollbars im Browser.

BlockUI
Einfache Blockade des User-Interface mit einigen Optionen.

browserDetect
Eine Browser-Weiche mit jQuery als Ersatz für CSS-Browserweichen.

jTemplate
Eine Template-Engine für Javascript als Plugin für jQuery.

seekAttention
Experimentelles Plugin, um die Aufmerksamkeit des Besuchers auf bestimmte Objekte zu lenken.

Context Menu Plugin
Ermöglicht es, eigene Kontextmenüs zu gestalten.

jScroller
Ein Autoscroller für verschiedene Zwecke.

jQuery Marquee
Eine jQuery-Alternative zur Verwendung der Variante unter CSS 3.

jQuery.utils
Eine Sammlung von Standard-Plugins für jQuery.

jwysiwyg
Ein WYSIWYG-Editor als Plugin für jQuery.

ListNav-Plugin
Ein Plugin für Listennavigationen mit alphabetischer Reihenfolge.

Modalpreview
Vorschau des Inhalts einer Textarea vor dem absenden

jQuery Fling
Stellt einen Eventlistener bereit, der es ermöglicht auf Aktionen mit mehreren Ereignissen zu reagieren.

Path
Das Plugin ermöglicht die vereinfachte Arbeit mit Pfaden, zum Beispiel im Zusammenspiel mit Navigationen.

Star Rating
Stellt die notwendigen Funktionen für Bewertungssternchen bereit.

Flexigrid
Ein flexibles Datagrid auf jQuery-Basis kann unter anderem auch direkt mit XML-Dateien arbeiten.

Simple Tree
Stellt eine einfache Baumstruktur mit Drag&Drop bereit.

hoverIntent
Verzögerte Reaktion des mouseOver-Effekts, sodass die „hover“-Aktion nur beim Verharren der Maus ausgelöst wird.

Flip!
Eine Box die sich nach den Anweisungen drehen lässt und verschiedene Inhalte beherbergen kann.

Galleria
Eine weitere einfache Image-Galerie.

jQuery Corner Gallery
Eine Sammlung von verschiedenen Ecken für Elemente, mehr als nur rund.

iPod-style Drilldown Menu
Ein Menü mit Imitation des Effekts auf den iPods.

Autobox
Eine dynamische Textbox mit Auto-Ergänzung. Ähnlichkeit zur Inputkontrolle bei Facebook und Apple Mail.

Lightbox
Einfaches und häufig verwendetes Lightbox-Plugin für jQuery. ™

Kategorien
CMS Programmierung

SilverStripe – CMS For The Rest Of Us?

Content Management Systeme gibt es wie Sand am Meer. Riesige Portale befassen sich allein mit deren Katalogisierung. Der Markt ist nahezu unüberschaubar geworden und stark von Technokraten geprägt. Wer schon einmal versucht hat, mit vertretbarem Aufwand ein CMS für ein Kundenprojekt qualifiziert auszuwählen, wird wissen, was ich meine. Nach einigen Stunden Recherche gab ich bislang noch immer auf und bog das Projekt so um, dass es mit Joomla, Typo3, WordPress oder Dreamweaver zu stemmen war. Tief im Inneren wusste ich jedoch stets, dass es irgendwo da draußen das System für den mittleren Internetauftritt geben musste. Das System, das einen nicht zwingt, erst einmal zum entsprechenden Experten des Systemsprech zu werden. Heute weiß ich, dass dieses System „SilverStripe“ sein könnte. Bald, vielleicht…

Der erste Eindruck

Auf den ersten Blick kommt „SilverStripe“ nicht sehr auffällig daher. Die Projektwebsite ist ein gestalterischer GAU. Wüsste man nicht, dass SilverStripe die diesjährigen CMS-Awards in der Kategorie „Most Promising“ des Verlages Packt Publishing gewonnen hat, man würde wahrscheinlich gar nicht erst die Downloads-Section aufsuchen. So aber motivierte es mich schon, zu erfahren, welche Software CMS Made Simple und ImpressCMS, die ich beide schon einmal testete und beiseite legte, geschlagen hatte.

Vielleicht sollte ich zunächst definieren, was ich von einem CMS für ein kleines bis mittleres Projekt erwarte?! Das Wichtigste ist eine überschaubare Einarbeitungszeit, sowie keine schwierig zu memorierenden Arbeitsschritte. Schließlich arbeite ich fallbezogen mit unterschiedlichen Technologien und kann mich nicht auf ein System einlassen, das erfordert, dass man dran bleibt, um seine Fertigkeiten nicht zu verlernen. Das gesuchte CMS muss entsprechend weitestgehend intuitiv bedienbar, jedenfalls intuitiv verstehbar sein. Also nicht so ein Navigationsmonster wie „ImpressCMS“:

impresscms-backend.gif

Was ich nicht gebrauchen kann, ist ein System, dass mit einer weiteren Template-Sprache arbeitet und mag sie auch noch so etabliert sein. Ich kann schon genügend Sprachen und will keine weitere erlernen müssen, bloß um ein CMS einsetzen zu können. Ideal wäre eine Software, die das Design vollständig html-/css-basiert ermöglicht und lediglich das Einfügen kleiner (!!) Logikblöcke in vorhandene Layouts erfordert. Ebenfalls als unbrauchbar empfinde ich Systeme, deren Seitenverwaltung einen förmlich erschlägt.

cmsmadesimple.gif

Aber der absolute Killer war bislang zumeist der Installationsprozess. Ungezählte CMS sind von meinen Festplatten geflogen, weil sie sich nicht oder nicht in akzeptabler Zeit installieren ließen. Bislang ungeschlagen steht in dieser Disziplin „WordPress“ da, wenn ich meinen Dreamweaver mal aus der Betrachtung lass.

Installation ohne unnötige Hemmnisse und Probleme

Mit diesen Erfahrungen und Erwartungen also ging ich an SilverStripe (SS) heran. SS erfordert PHP 5 und MySQL ab 4.1 und sollte einen Apache als Webserver antreffen, obschon es auch findige Leute gibt, die SS auf dem IIS ans Laufen bekommen werden. Ich hatte schon äußerste Schwierigkeiten, WordPress auf den IIS6 zu hieven und werde mich mit dieser Thematik nicht noch einmal auseinandersetzen. PHP und Apache gehören schlichtweg zusammen. Basta.

Angenehm überraschte mich bereits der Installationsvorgang. Detailliert zeigt SS auf, was an der Konfiguration noch nicht stimmte und nach ein paar einfachen Berechtigungseinstellungen klappte die Installation reibungslos und nahezu so schnell wie bei WordPress. Weitere Installationsscreens finden sich am Fuß dieses Beitrags in einer kleinen Gallery.

ss-install-1st-screen.gif

Themeinstallation  – retro, aber funktional

Während der Installation hat man die Möglichkeit, eine leere Website quasi als Tutorial-Grundlage oder eine mit fertigem Layout und Beispielinhalten zu erstellen. Ich entschied mich für die Beispielinhalte und so fand ich fünf Minuten nach dem Upload der Dateien eine funktionierende Website mit dem – allerdings ziemlich hässlichen – Standardtheme „BlackCandy“ vor. Schon in diesem frühen Stadium lernte ich die zwar überschaubare, aber doch ansprechende, weil professionelle Auswahl alternativer Themes auf der zugehörigen Downloadseite schätzen.

So lernte ich noch vor allen anderen Dingen, wie man Themes in SS installiert. Anders als in anderen Systemen, in denen die Template-Verwaltung per Backend längst etablierter Standard ist, ist bei SS dafür das Editieren der _config.php im Ordner mysite erforderlich. Angenehmerweise bedarf es bloß des Einfügens einer einzelnen Textzeile:

SSViewer::set_theme(„themename“);

Wobei unter „themename“ die Bezeichnung des Themes nach Downloaddatei eingegeben wird, in meinem Fall paddygreen. Exotischerweise muss man hernach noch den Cache flushen, indem man seine Website mit dem Parameter ?flush=1 versieht und aufruft. Auch wenn diese Vorgehensweise nicht nach 2008 klingt, muss man neidlos anerkennen, dass sie reibungslos und ohne Wenn und Aber funktioniert. Sechs Minuten nach dem Upload der Dateien auf meinen Server verfügte ich somit über eine ansprechende Website, ohne dass ich bis dahin nennenswerte Aktivitäten entwickelt hätte.

ss-website-after-themechange.gif

Website fertig nach 30 Minuten (längstens)

Seitenbetreiber, die auf der Suche nach einem leistungsfähigen CMS sind, dabei aber keine hohen Ansprüche an eigenständiges Design stellen, können sich an dieser Stelle bereits zurücklehnen und den Themekatalog auf der Silverstripe-Website aufrufen. Die meisten der dort enthaltenen Templates halten professionellen Gestaltungsansprüchen durchaus Stand und können dabei unproblematischer angepasst werden als das handelsübliche WordPress-Theme. Und so kann eine Website nach einer halben Stunde Arbeit bereits so aussehen, wie die Projektsite Inventionate.de, die auf dem unveränderten Paddygreen-Theme basiert.

Seitenbetreiber, die auf der Basis vorhandener Themes arbeiten, aber doch eine gewisse Eigenständigkeit erreichen wollen, werde sich darüber freuen, dass es in SilverStripe grundsätzlich mehrere CSS-Dateien mit jeweils klar definierten Aufgabengebieten gibt. So ist für das Erscheinungsbild, soweit es um die Positionierung von Objekten et cetera geht, die Datei layout.css zuständig. Formulare werden über form.css.css gestyled und die Typographie über typography.css. Weitere CSS-Dateien für weitere Aufgaben finden sich gemeinsam mit den bereits genannten stets im Unterverzeichnis css. Systemseitig erforderlich sind lediglich layout.css, typography.css und form.css. Weitere CSS-Dateien können, müssen aber nicht angelegt werden. Der Vorteil dieser Vorgehensweise, gerade für die Anpasserfraktion liegt in der größeren Übersichtlichkeit und Vorhersehbarkeit der Auswirkungen auf die Seitenoptik. Profis, die ohnehin CSS ohne Cheatsheets und sonstige Hilfen mittels Notepad erstellen, werden darin keinen Nutzen erkennen.

Templating – Separating the boys from the men

Silverstripe ist nicht nur ein CMS, sondern in gleichem Maße, wenn nicht ausgeprägter, ein Framework zur Anwendungsentwicklung, nicht unähnlich dem populären Ruby on rails. Konsequenterweise werden Code und Layout in einer Art und Weise getrennt, wie sie der durchschnittliche – sagen wir – WP-Themedesigner nicht kennt, wie sie aber der reinen Lehre einerseits und dem Workflow größerer Agenturen andererseits eher entsprechen dürfte. „No code in the template-files“, lautet die Devise. In Themedateien darf kein PHP verwendet werden. Stattdessen müssen alle PHP-Funktionen in separaten Dateien deklariert werden. Aus dem Template heraus erfolgt nur noch ein einfacher Aufruf der im Controller deklarierten „custom functions“.

ss-templating.png

Auf diese Weise bleibt der Themecode überschaubar und leicht zu ändern, einerseits. Andererseits mag es nicht für jeden Zweck sinnvoll erscheinen, zunächst eine „custom function“ erstellen zu müssen, bloß um diese dann aus dem Theme heraus verwenden zu können. Manch einer würde sich da sicherlich zumindest ein Wahlrecht wünschen. Dem Workflow größerer Agenturen hingegen mag diese Vorgehensweise sogar eher entsprechen. Dort arbeiten in der Regel Programmierer und Designer in strikter fachlicher Trennung und so mag es Silverstripe dort leichter haben, weil der Designer nicht in des Coders Dateien und umgekehrt rumpfuschen muss. Die durchschnittliche One-Man-Show der Webentwicklung hat natürlich davon zunächst keinen Vorteil.

Silverstripe erweitern

Durch die Anlage als Framework ist es mit Silverstripe grundsätzlich leichter, Projekte zu entwickeln, die sich nicht starr in ein CMS-Schema einpassen lassen. Fehlt eine Funktionalität kann sie – entsprechende PHP-Skills vorausgesetzt – relativ unproblematisch hinzugefügt und systemintegriert verwendet werden. Insoweit ist Silverstripe mehr ein Werkzeug zur Anwendungsentwicklung, denn ein reinrassiges CMS und ähnelt an diesem Punkt noch am ehesten dem Funktionsmonster „Drupal“, bleibt dabei aber wesentlich handhabbarer.

Anders als in konkurrierenden Projekten gibt es für Silverstripe bislang nur wenige zusätzliche Module, die man out of the box verwenden könnte. Zudem weisen die vorhandenen Module eine durchaus unterschiedliche, bisweilen durchwachsene Qualität auf. Insbesondere das Blogmodul dürfte dem WP-verwöhnten User die Tränen in die Augen treiben; ob vor lachen oder weinen mag jeder für sich selbst beurteilen.

Für etliche wesentliche Funktionsbereiche sind Module bislang nicht entwickelt worden. Silverstripe-Entwickler Ingo Schommer beklagte sich in gebotener Zurückhaltung über diesen Umstand bereits kommentierenderweise in dem ein oder anderen Blog. In der Tat scheint die Community um das Projekt bislang nur mäßig aktiv zu sein. All das wird den ambitionierten PHP-Entwickler nicht stören, kann er doch jedwede Funktion selber nachrüsten. Der Seitenbetreiber, der im Wesentlichen auf fertige Module angewiesen ist und sich lediglich an der optischen Anpassung beteiligen kann, wird möglicherweise noch einige Monate abwarten und auf die Belebung der Silverstripe-Community setzen müssen.

Fazit

Zum jetzigen Zeitpunkt ist Silverstripe das CMS der Wahl für kleine bis mittelgroße Websites, deren Entwickler entweder PHP-Profis oder weitgehend kenntnislos sind. Der PHP-Profi baut flexible Funktionalitäten so einfach in das System wie bei keinem anderen CMS sonst und realisiert auf diese Weise auch exotische Kundenwünsche. Der Seitenbetreiber ohne tiefergehende Kenntnisse freut sich über ein einfach zu installierendes und noch einfacher zu administrierendes System mit einer professionellen Themebasis, die unter Verwendung nur geringer CSS-Kenntnisse angepasst werden kann. Entwickler, die hinsichtlich ihrer Skills irgendwo zwischen diesen beiden Polen liegen, werden sich bei TYPOlight oder Drupal möglicherweise besser betreut fühlen. Definitiv aber ist Silverstripe mehr als nur einen kurzen Blick wert.

Anhang: Weitere Webquellen zu Silverstripe

  • Silverstripe – ein Schimmer am CMS Horizont? | medamind: Anne-Kathrin Merz, eingefleischte Joomla-/Typolight-Entwicklerin nähert sich an Silverstripe an, mit offenen Holprigkeiten…
  • SilverStripe CMS: Early Impressions — MikeWhoBikes: Mikes Early Adopters Impressionen und ein kurzer Dialog mit einem der Core-Entwickler.
  • Der neue Stern am CMS-Himmel! Oder doch nicht? | webholics – development +design | Freelancer im Bereich Webentwicklung und Webdesign: Mario Volkes recht harsche Kritik am seiner Meinung nach inkonsistenten und fehlerbehafteten Silverstripe.
  • FreelanceSwitch Forums – SilverStripe vs CMS Made Simple?: Ein interessanter Forumsthread für alle CMS-Nomaden.
  • SilverStripe – A New CMS Contender – from Beyond Caffeine and WebsiteStyle.com: Beyond Caffeine Bloggerin Nicole kritisiert qualifiziert Schwierigkeiten in Sachen Templatedesign unter Silverstripe.
  • Das PHP-Magazin zu Silverstripe: Bereits im März 2008 befasste sich das renommierte PHP-Magazin mit dem Newcomer-CMS und fokussierte dabei besonders auf die Framework-Eigenschaften.
  • Tobis Welt » Ein erster Test von Silverstripe 2.3.0 RC1: Tobias Hoderlein bloggt unermüdlich zum Thema Silverstripe. Informativ und deutschsprachig…
  • praegnanz.de: Silverstripe – mein neuer Top-Favorit!: Auf Praegnanz.de schaltet sich auch der deutsche Entwickler des Silverstripe-CMS in die Diskussion ein. Informationen aus erster Hand also.
  • SilverStripe CMS im praktischen Einsatz | tactical web development blog: Entwickler Broschart schildert in aller Kürze die Umsetzung eines Kundenprojektes auf Basis des Silverstripe-CMS.
  • Das Silverstripe-Buch: Im Galileo-Verlag erscheint im Februar 2009 ein Buch zum Newcomer. Autor Broschart verspricht fachkompetente Informationen. ™
Kategorien
CMS Programmierung

CMS mit Shopsystem Teil 2: E-Commerce-Module für Drupal

Wer mit Drupal-Sites Geld verdienen will, muss sich zwischen dem altbewährten e-Commerce-Modul und „Neuling“ „Ubercart“ entscheiden. Alternativen gibt es nicht. Beide E-Commerce-Lösungen präsentieren sich jedoch als ausgereifte Shop-Module und unterstützen die Community-Möglichkeiten des CMS.

Drupal ist spezialisiert auf Communities. Damit besetzt es eine besondere Nische unter den kostenlosen Open Source-CMS. Mit diesem Schwerpunkt auf 2.0-Gemeinden erwachsen auch einzigartige Möglichkeiten für Online-Shops. Drupal bietet im Verein mit seinen E-Commerce-Modulen die Möglichkeit, Communities rund um ein Produkt aufzubauen oder eine Drupal-Community zum Marktplatz zu machen, etwa durch die Schaffung eines virtuellen Auktionshauses oder durch bezahlpflichtige Mitglieder-Bereiche.

Außerdem gilt Drupal als suchmaschinenfreundlich, bietet gewisse Sicherheit vor Hacker-Attacken und verfügt über eine große Fan-Gemeinschaft, die Seitenbetreibern hilfsbereit mit Rat und Tat im Forum zur Seite steht. Für besonders dringende und ausgefallene Bedürfnisse tummelt sich auch noch eine Reihe professioneller IT-Dienstleister im Drupal-Umfeld, die gegen ein entsprechendes Honorar jedes Problem in den Griff kriegt.

E-Commerce und Drupal: noch viel Platz für Mitbewerber

Die Drupal-Gemeinde zählt zwar zu den größten unter den kostenlosen Open Source-Content-Management-Systemen, im Bereich E-Commerce herrscht allerdings noch nicht viel Konkurrenzkampf unter den Entwicklern. Das offizielle Drupal Modul Repository listet 111 Module im Bereich E-Commerce, die tatsächliche Anzahl an Shop-Lösungen für Drupal fällt aber weit bescheidener aus. Dort finden sich mit e-Commerce, Ubercart und EZ-Shop in Wahrheit nur drei Module dieser Art. Der Rest sind Erweiterungen für e-Commerce und Ubercart. Inwieweit EZ-Shop als ausgereiftes Modul angesehen werden kann, ist ohne Ungarisch-Kenntnisse nur schwer einzuschätzen. Zwar gibt es auf der Homepage der Entwickler aus Budapest teilweise auch englischen Inhalt, vielmehr als „Webshop leicht gemacht“ ist daraus jedoch noch nicht herauszulesen.

Neben e-Commerce und dem noch jungen Projekt „Ubercart“ bietet die Drupal-Community also noch viel Platz für weitere Konkurrenz, die den Markt belebt und den Usern professionelle Werkzeuge für den Onlinehandel zur Verfügung stellt.

e-Commerce: Erfahrung und Funktionsvielfalt

Das e-Commerce-Modul war bis Anfang Juni 2008 als die erste stabile Version des Konkurrenten Ubercart erschienen, die einzige vollwertige E-Commerce-Lösung für Drupal. Derzeit in Version 3 für Drupal 5 verfügt das e-Commerce-Modul über entsprechend viele Entwicklungsjahre und Funktionen. Es bietet unter anderem ein vielseitiges Produktgenerierungs- und Attributsystem, Discount-Optionen, eine Lagerverwaltung, den Verkauf von digitalen Gütern, Charts, einen Rechnungsgenerator und macht es möglich, Auktionen durchzuführen. Für das Tool existieren unzählige Erweiterungen, womit zunehmend viele User aber auch unzufrieden sind. „e-Commerce ist aufgeblasen, unübersichtlich und schwierig zu konfigurieren. Es gibt zwar fast alles, aber man braucht viel Zeit alles so hinzubiegen, wie man es haben will“ lautet ein oftmaliges Fazit in Drupal-Blogs und Forumseinträgen.

Eine umfassende Dokumentation könnte viele Probleme bei der Einrichtung des Moduls aus dem Weg räumen. Trotz der vielen Jahre auf dem Markt liegt ein gutes Handbuch noch nicht vor. Als es keine Konkurrenz gab, war dies auch nicht nötig.

Mit dem Erscheinen von Ubercart änderte sich jedoch diese Situation und die User-Gemeinde des e-Commerce-Moduls erwachte zu neuem Leben. Eine zentrale Homepage wurde geschaffen und es scheint so, als würde man mit Version 4.x, die sich bereits in der Beta-Phase befindet, noch vor Ubercart eine Shop-Lösung für Drupal 6 herausbringen. Dieser Schritt war auch notwendig, denn auf dem Vorsprung an Funktionsvielfalt werden sich die Entwickler des e-Commerce-Moduls nicht mehr lange ausruhen können.

Ubercart: moderne „Out-of-the-Box“-Lösung

„Neuling“ Ubercart mischte die Karten im E-Commerce-Sektor rund um Drupal neu. Die Lösung präsentierte sich von Anfang an als benutzerfreundliches Out-of-the-box Modul. Die derzeit aktuelle Version 1.6 ist für Drupal 5 gedacht. Das Projekt beschäftigt zwei Vollzeit-Entwickler, die auch bereits an einer Version 2.0 für Drupal 6 arbeiten.


Die Ubercart Admin-Oberfläche.

Ubercart ist den hohen Ansprüchen moderner Shop-Betreiber angepasst. Benutzerfreundlichkeit im Backend und Kundenfreundlichkeit im Frontend sind die Leitlinien des Projekts. Trotz übersichtlicher Menüführung bietet die Shop-Lösung eine breite Auswahl an Features. Darunter finden sich Highlights wie Single-Page-Checkout (=Bezahlen in einem Schritt), automatische Account-Erstellung (ermöglicht anonymisiertes Bezahlen) und die Verwaltung von zahlungspflichtigem Membership-Inhalt. Mit „Single-Page-Checkout“ bietet Ubercart sogar eine Funktion, die das e-Commerce-Modul noch nicht listet.

Dennoch hinkt das junge Ubercart-Projekt dem e-Commerce-Modul bei der Funktionsvielfalt noch hinterher. Zudem fehlen für deutsche User entsprechende Übersetzungen. Jene Sprachpakete, die auf dem Sprachserver liegen, müssen vor dem Live-Einsatz noch überarbeitet werden.
Mit der Zeit wird Ubercart solche „Kinderkrankheiten“ jedoch hinter sich lassen. Denn schon jetzt ist eine starke und wachsende Community festzustellen. Mehr als 3.500 registrierte Forumsuser beantworten Fragen innerhalb weniger Stunden und immer mehr Community-Mitglieder beteiligen sich freiwillig an der Weiterentwicklung des Projekts.

Hinzu kommt, dass Ubercart aufgrund prominenter Live-Sites viel Aufmerksamkeit erhält. So verwendeten laut den Drupal-Theme-Designern von „Collective Mind“ bereits AOL und Warner Brothers Records Ubercart für kurze Zeit in ihrem Online-Shop. Damit sich jeder selbst ein Bild dieses Drupal-Moduls machen kann, bietet die offizielle Projekthomepage einen Testshop und Links zu zahlreichen Live-Shops. ™

Der Live-Shop „B-Who-U-R“ („Sei, wer du bist!“) zeigt Ubercart im Einsatz.

Kategorien
CMS Programmierung

CMS Joomla! – Ein Alleskönner unter der Lupe: Rund um Joomla! (Teil 4 von 4)

Joomla! ist beliebt und wird von vielen Seitenbetreibern eingesetzt. Dementsprechend professionell ist auch das Umfeld, welches sich um dieses CMS gebildet hat. Handbücher, Lehrvideos, Erweiterungen und Support sind im Netz oder auch im gut sortierten Buchhandel leicht zu finden.

Joomla!-Dokumentationen sind ein eigener Markt

Wer Joomla! verwenden will, wird nicht an der fehlenden Dokumentation oder an Sprachbarrieren scheitern. Es befinden sich zahlreiche Anleitungen und Erklärungen zu Joomla! in großer Sprachenvielfalt im Netz. Eine umfassende deutsche Dokumentation stellt beispielsweise das Joomla!book, ein ausführliches Wiki rund um das CMS, dar.

Wer ungern Anleitungen auf dem Bildschirm liest und auch ausgedruckte Papierberge vermeiden will, wird zudem im gut sortierten Buchhandel fündig. Ein kurzer Blick in die Ecke mit Computer-Fachliteratur und das auffällige Joomla!-Logo sticht sofort auf zahlreichen Buchrücken ins Auge. Auf Amazon findet man unter dem Stichwort „Joomla!“ auf Anhieb 44 deutschsprachige Buchtreffer. Zusätzlich gibt es noch Lern-Software und DVDs zum Thema Joomla!. Wer keine Bücher wälzen will, kann sich stattdessen Videotrainings auf dem PC-Schirm ansehen.

Die wichtigsten Joomla!-Dokumentationen:

Support

Im Mittelpunkt des Supports eines jeden quelloffenen und freien Content Management Systems steht das eigene Forum. Die Community der Joomla!-Foren ist riesig. Es gibt dutzende Versionen in verschiedenen Sprachen. Allein das deutsche Forum verzeichnete bis zum 29. Oktober 87.933 Benutzer und mehr als 735.000 Beiträge.

Persönlicher Support wird für Joomla! in Form von speziellen Joomla!-Hostings, Joomla!-Kursen und bedarfsorientierten IT-Dienstleistungen von zahlreichen Unternehmen angeboten. So notiert Google ungefähr 127.000 Treffer, wenn nach „Joomla-Dienstleistungen“ gesucht wird.

Eine kleine Auswahl verschiedener Support-Anbieter für Joomla!:

Erweiterungen und Templates

Am einfachsten ist die Suche nach Erweiterungen und Templates auf den offiziellen Joomla!-Seiten. Schon auf der englischsprachigen Site und dem deutschen Gegenstück findet man mehr als 4.000 Extensions und Templates. Jedoch bieten auch weitere Joomla!-Nutzer, vom privaten Hobby-Programmierer bis hin zum professionellen IT-Dienstleistungsunternehmen, zahlreiche Erweiterungen. Wie viele Module, Plugins, Komponenten und Templates insgesamt existieren, weiß niemand.

Eine große Auswahl an Erweiterungen und Designvorlagen steht unter folgenden Seiten zum Download bereit:

Community: User Groups, Events, Magazin, Blogs

Die Joomla!-Community ist nicht nur groß, sie ist auch professionell organisiert. Im Community-Bereich der offiziellen Homepage erhält man einen Überblick. Es gibt Joomla! User Groups, regelmäßige Events, ein eigenes Community Magazin, Blogs und noch mehr.

Joomla! User Groups, kurz JUGs, sind regionale Gruppen von Joomla!-Benutzern und –Entwicklern. Sie treffen sich regelmäßig, tauschen Informationen über das CMS aus und planen gemeinsame Projekte wie zum Beispiel Workshops. JUGs finden sich auf allen fünf Kontinenten. Deutschsprachige Gruppen gibt es in Deutschland, Österreich und in der Schweiz. Die Events der gesamten Community werden in einem Veranstaltungskalender abgestimmt und im eigenen Community-Magazin angekündigt.
Zusätzlich wird die treue Gemeinschaft von den Entwicklungsteams mit regelmäßigen Blogeinträgen auf dem neuesten Stand des Joomla!-Projekts gehalten.

Die wichtigsten Links der Joomla! Community im Überblick:

Fazit

Wer ein Content Management System sucht, ist mit Joomla! fast immer gut beraten. Die Bedienung erfordert zwar eine kurze Einarbeitungszeit, danach präsentiert sich Joomla! allerdings durchwegs benutzerfreundlich. Das CMS sammelt Pluspunkte durch seine Vielseitigkeit. Die unüberschaubare Anzahl an Modulen, Plugins und Komponenten macht Joomla! zum Alleskönner – von der einfachen Präsentationsplattform bis hin zur kompletten E-Commerce-Lösung. Zudem dürfen die Nutzer bei Problemen auf das Wissen und die Unterstützung einer riesigen Community hoffen.

Schwächen zeigt Joomla! nur, wenn die Seiten zu groß werden oder eine besondere Nutzerverwaltung nötig ist. Dann stößt das CMS durch seine einfache Struktur im Aufbau von Websites oder seine unausgereifte Zugriffsverwaltung an seine Grenzen. ™

Kategorien
CMS Programmierung

CMS Joomla! – Ein Alleskönner unter der Lupe: Joomla! erweitern (Teil 3 von 4)

Die Erweiterbarkeit ist eine der Stärken von Joomla!. Mit wenigen Klicks können Sie Ihrer Homepage eine Vielzahl an Funktionen oder ein neues Aussehen verpassen. Die meisten Erweiterungen und Templates müssen Sie nicht aufwendig selbst erarbeiten. Sie können auf die reichhaltige Auswahl im Netz zurückgreifen. Für Joomla! gibt es bereits so viel Zusatz-Material, dass die genaue Menge nicht mehr zu benennen ist.

Erweiterungen sind kleine Zusatzprogramme. Sie verändern entweder vorhandene Inhalte und bereiten diese neu auf oder sie geben zusätzliche Informationen auf der Homepage aus. Joomla! teilt die Erweiterungen in drei Arten:

  • Module: Sie dienen der Anzeige spezieller Inhalte im Front- und Backend. Module können im Template positioniert werden und sind kein Bestandteil des normalen Inhaltsbereichs. Meist werden Module bei Joomla! am Rand eingesetzt. Ein Beispiel ist das Suchformular.
  • Plugins: Das sind kleine Programme, die den Inhalt einer Seite verändern, bevor dieser ausgegeben wird. Sie verrichten auch systemnahe Aufgaben wie die Anmeldung der Benutzer oder die Erweiterung der Suche. Beispielsweise ist der WYSIWYG-Editor „TinyMCE“ ein Plug-in.
  • Komponenten: Sie sind die komplexesten Erweiterungen. Als solche können sie dynamische Inhalte verwalten und im Backend sowie in der Datenbank getrennte Bereiche beanspruchen. Die Komponenten werden meist direkt im Inhaltsbereich angezeigt. Manche besitzen zugeordnete Module oder Plug-ins, um Inhalte anzuzeigen. Über Komponenten können Sie zum Beispiel ein Forum in Ihre Seite einbinden.

Erweiterungen installieren

Die Fülle an Joomla!-Extensions reicht von einer simplen Kalenderanzeige bis hin zur voll ausgebauten Webshop-Lösung. Zahlreiche Downloads stehen auf der offiziellen Joomla!-Site zur Verfügung. Auch Joomlaos hat ein großes Angebot an Modulen, Plug-ins und Komponenten. Tausende weitere Extensions gibt es auf den zahlreichen länderspezifischen Joomla!-Sites sowie privaten und kommerziellen Sites.

Um eine Erweiterung auf einer Homepage einzubinden, muss man sie als ZIP-Archiv herunterladen. Dann kann man dieses Archiv direkt aus dem Joomla!-Backend unter Erweiterungen hochladen und installieren. Entpacken und in die Ordnerstruktur einbinden erledigt Joomla! von selbst. Dieser Vorgang ist immer gleich, egal ob Sie ein Modul, ein Plug-in oder eine Komponente installieren wollen.

Die Erweiterungen im Einsatz

Wollen Sie neue Module oder Plug-ins einsetzen, müssen Sie sie im entsprechenden Verwaltungsbereich aktivieren.

Anhand der Details in der entsprechenden Editieransicht bestimmen Sie die Position der Erweiterung im Frontend, für welche Benutzer sie sichtbar ist und weisen sie bestimmten Menüs zu.

Für Komponenten besteht in der Navigationsleiste des Backends ein eigener Menüpunkt. Handelt es sich bei der neuen Komponente um eine besonders aufwendige Erweiterung, wie zum Beispiel das Fireboard Forum, besitzt sie sogar ein eigenes Kontrollzentrum:

Darüber lassen sich die Funktionen in der Art und Weise steuern, wie es auch das allgemeine Joomla!-Backend ermöglicht.

Templates verwalten

Die Optik einer Joomla!-Homepage wird einem modernen CMS entsprechend über Templates gesteuert. Das Template wird so zum grafischen Grundgerüst der Website und vom Inhalt getrennt verwaltet. Das heißt, Sie können Ihre Inhalte jederzeit in einer neuen Umgebung erscheinen lassen, ohne diese selbst anzutasten. Sie müssen lediglich das Template austauschen. Die Verwaltung der Templates finden Sie in der Navigation unter Erweiterungen/Templates. Dort sind alle installierten Templates aufgelistet. Indem Sie das Sternsymbol in der Spalte „Standard“ versetzen, wird ein anderes Template aktiviert.

Weitere Templates finden Sie zu tausenden im Internet. Je nach Anbieter sind diese Designs kostenpflichtig oder gratis. Für Joomla! 1.5 gibt es drei verschiedene Arten von Templates:

  • Statische Templates haben eine feste Breite und sind für eine bestimmte Bildschirmbreite ausgelegt.
  • Dynamische Templates passen sich der Breite des Bildschirms des Users an
  • Templates mit wählbarer Breite; bei diesen Templates können Sie die Breite über Parameter festlegen.

Wenn Sie sich bei einem Anbieter (zum Beispiel Joomlaos) für ein Template entschieden haben, müssen Sie die Quelldatei, ein ZIP-Archiv, herunterladen. Die Installation erfolgt genauso wie bei einer Erweiterung. Unter dem Menüpunkt „Erweiterungen“ die Option „Installieren/Deinstallieren“ aufrufen und den Installationsmanager starten. Danach können Sie das Template aktivieren.

Der Einsatz von vorgefertigten Templates ist leicht und unkompliziert. Sie können Ihrer Homepage damit ohne großen Aufwand einen professionellen Look verpassen. Ein Nachteil daran ist jedoch, dass das Template Ihrer Wahl vielleicht schon 1.000 Mal verwendet wird. Wenn Sie ein unverwechselbares Design möchten, brauchen Sie Kenntnisse im Webdesign oder müssen einen Profi dafür bezahlen.

Fehlen Ihnen das nötige Wissen oder Geld, so könnten Sie ein vorgefertigtes Layout Ihren persönlichen Vorstellungen anpassen.
Sehr schnell und oberflächlich geht dies über die Modulverwaltung, indem Sie Module im Frontend ein- oder ausblenden. Wenn Sie dem Template noch eine eigene Note verpassen möchten, müssen Sie in das Verzeichnis des Templates eindringen. In dem Ordner „images“ befinden sich die Grafikstücke des Layouts. Diese können Sie mit eigenen Grafiken austauschen (zum Beispiel die Logodatei) oder farblich verändern. ™

Kategorien
Boilerplates & andere Tools Programmierung

Mono 2.0 – .Net For The Masses

Als Miguel de Icaza 2001 das Projekt Mono ins Leben rief, um das microsoft-proprietäre Framework .NET als Open Source zu re-implementieren, hielt ich ihn für einen Spinner. Als seine Firma Ximian 2003 von Novell vornehmlich wegen der PIM-Software Evolution übernommen wurde, erwartete ich eine Einstellung der Mono-Entwicklung. Umso überraschter war ich, als ein Jahr später tatsächlich die Version 1.0 erschien. Es folgte erneut eine Phase der Stagnation, in der sich das Projekt bis zum Frühjahr dieses Jahres in verschiedenen Marginalien der Version 1.2 zu verheddern schien…

Screenshot

Im Oktober ist nun die Version 2.0 erschienen und die darf man wirklich als großen Wurf bezeichnen, obwohl sie im Grunde nur eine nahezu vollständige Implementation des .Net 2.0, das ja selbst bereits wieder out of date ist, darstellt. Mono 2.0 unterstützt, über den Umfang des .Net 2.0 hinausgehend, den kompletten Sprachumfang der C# Version 3.0, was insbesondere hinsichtlich der Datenbankabfragesprache LINQ bedeutsam ist. Außerdem ist Mono 2.0 VB8-fähig, will heißen, es beinhaltet einen Visual Basic 8 Compiler.

Das wesentliche Feature des .Net 3.0, die Windows Presentation Foundation, die die Trennung zwischen Optik und Logik einer Anwendung in ein relativ einfach zu verwendendes Framework umsetzt, ist in Mono 2.0 allerdings nicht enthalten. Als zu schwierig schätzen die Entwickler gerade diesen wichtigen Teil des 3er Zweiges von .Net ein. Auch hinsichtlich der Zukunftsperspektive einer Implementierung hält sich das Projekt eher bedeckt.

Dennoch ist Mono 2.0 ein großer Wurf. Denn tatsächlich gibt es mit den Microsoft-Releases 3.0 und 3.5 zwar bereits vermeintlich wichtige Nachfolger zum .NET 2.0. Allerdings ist in Entwicklerkreisen unstreitig, dass die Drei vor dem Punkt weder der einen noch der anderen Version gebührt. Tatsächlich wären die 3er Releases funktional eher als Versionen 2.x zu deklarieren gewesen, wenn nicht Microsoft durch die schiere Versionierung eine Vorreiterrolle, eine technologische Führerschaft und ein Innovationstempo hätte suggerieren wollen, das tatsächlich so gar nicht besteht.

Mono 2.0 ist deshalb von seiner Funktionalität her näher an den aktuellen Versionen seines Vorbilds, als man an den Versionsnummern ablesen kann. Einerseits. Andererseits basiert nahezu sämtliche relevante Software, jedenfalls im Bereich der Webapplikationen, nach wie vor auf .Net 2.0. Es macht schließlich keinen Sinn, auf der jeweils aktuellsten Version des Framework zu programmieren, wenn man die neuen Funktionalitäten entweder nicht braucht oder bereits mit Bordmitteln auf andere Art und Weise realisiert hat. Gerade im Bereich der Webapplikationen ist .Net eng mit dem es beherbergenden Server verwoben. Nach dem Motto „Never touch a running system“ wird man einen Administrator stets zögerlich vorfinden, wenn es um die Nachinstallation nicht unbedingt benötigter Software-Riesen auf einem Live-Webserver geht. Und .Net ist ein wahrer Software-Riese, jedenfalls bezogen auf das bloße Datenvolumen.

Wer sich einen Überblick über den Aufwand einer Portierung von ASP.NET zu Mono verschaffen möchte, möge sich den Guide: Porting ASP.Net Applications auf der offiziellen Projektseite ansehen. Der Anpassungsaufwand besteht im Wesentlichen in der Portierung der Datenbank und ist insgesamt durchaus als überschaubar zu bezeichnen. Ich werde testweise eines meiner nächsten (kleineren) Projekte unter Mono entwickeln und hier darüber berichten.

Mono 2.0 steht neben einer Version für Windows auch für die Betriebssysteme Linux, Solaris und Mac OS X zur Verfügung und ist, anders als die Versionsnummer vermuten lässt, durchaus eine gute Wahl für die plattformübergreifende Software-Entwicklung auf dem Stand der Technik. ™

Kategorien
CMS Programmierung

CMS Joomla! – Ein Alleskönner unter der Lupe.

Joomla! ist eine Lautumschreibung des Suaheli-Wortes „Jumla“ und bedeutet „das Ganze“. Der Name definiert den Anspruch: Joomla! ist ein ganzheitliches Content-Management-System. Private Homepage, Blog, Vereinsseite, Firmenwebsite, Community-Plattform. Joomla! erfüllt alle Wünsche eines Seitenbetreibers, solange dieser die Grenzen des Systems kennt und es richtig einsetzt.

Joomla! ist eines der beliebtesten Open Source Content-Management-Systeme. Mehr als 200.000 Community User, mehr als 100 Millionen Treffer bei Google, mehr als sechs Millionen Downloads in den vergangenen 18 Monaten, mehr als eine Million Homepage-Besucher pro Monat, Community-Treffen und Tagungen rund um den ganzen Globus, zahlreiche Buchpublikationen und Merchandise-Artikel vom Baseball-Cap über Pullover bis hin zum Rucksack untermauern dies.

Auch Auszeichnungen räumt Joomla! seit der Abspaltung vom Mutterprojekt „Mambo“ im Jahr 2005 in Serie ab. 2006 war Joomla! Gesamtsieger des Packt Open Source CMS Awards, 2007 war es zweiter der Gesamtwertung, gewann dafür aber die Best PHP-CMS-Auszeichnung und auch 2008 steht Joomla! wieder im engsten Favoritenkreis beider Kategorien.

Die Liste der Sites, die Joomla! nutzen, ist beeindruckend. Sie ist endlos lange und führt große und bekannte Namen. Beispielsweise betreiben das Informationszentrum der Vereinten Nationen für Westeuropa, das MTV Network Quizilla und die Eliteuniversität Harvard ihre Internetpräsenz mit Joomla.

Screenshot

Joomla! steht für Vielseitigkeit und Benutzerfreundlichkeit

Darstellen, informieren, verkaufen, diskutieren, Daten sammeln, kooperieren – das sind die Ansprüche, die heute an Anwendungen im World Wide Web gestellt werden. Joomla! ist ein webbasiertes CMS, das all diesen Ansprüchen gerecht wird. Sie können damit private Homepages oder Blogs betreiben, Vereinsseiten verwalten, Unternehmen im Internet präsentieren, Online-Shops betreiben oder eine Community zu einem Thema aufbauen. Joomla! eignet sich vor allem für kleine und mittelgroße Auftritte von Communities und Unternehmen mit einer überschaubaren Anzahl an Inhaltsseiten.

Das CMS bietet eine Vielzahl an Funktionen. Die Menge an Erweiterungen hat eine unbekannte Größe erreicht. Fast alle Bedürfnisse eines Seitenbetreibers können durch bereits vorhandene Module, Plug-ins oder Komponenten befriedigt werden. Man muss sie nur suchen.
Ein derart komplexes System einsetzen zu können, verlangt auch eine gewisse Einarbeitungszeit. Beherrscht man allerdings den Umgang mit Joomla!, so erweist es sich aufgrund seiner simplen Drei-Ebenen-Struktur (Bereich, Kategorie, Beitrag) als durchwegs benutzerfreundlich.

Die Schwächen

Vielseitigkeit und Benutzerfreundlichkeit sind die Stärken des Systems und verantwortlich für die gute Marktposition. Joomla! hat aber auch Schwächen. Die drei Ebenen „Bereich“, „Kategorie“ und „Beitrag“ erlauben zwar theoretisch eine unendliche Zahl an Inhaltsseiten, praktisch ist es dadurch nicht möglich, Websites mit vielen Inhaltsseiten und Inhaltsebenen zu verwalten. Die Übersicht kann mit Joomla! nicht in dem Maße gewahrt werden, wie es etwa eine Ordnerstruktur ermöglichen würde. Ebenso verhält es sich mit der Zuweisung von Zugriffsrechten. Auch diese können nur in drei Gruppen vergeben werden. Einzelnen Usern individuelle Rechte zu geben, ist nicht möglich.

Zudem sind jene Versionen, die auf dem neuen 1.5.-Kern aufbauen (derzeit ist Version 1.5.7. erhältlich), nicht mit allen älteren Erweiterungen kompatibel. Abhilfe schafft ein Plug-in, das eine Brücke für viele Module zu Vorgängerversionen schlägt. Ob eine alte Erweiterung unter Version 1.5. läuft, muss jedoch im Einzelfall ausprobiert werden.

Joomla! im Vergleich

Im Bereich der Open Source Content-Management-Systeme gibt es eine Fülle von Programmen. Typo3, Drupal und WordPress gehören zu den bekanntesten Konkurrenzprodukten, haben ihre Schwerpunkte jedoch anders gesetzt als Joomla!.

  • Typo3 ist das umfassendste quelloffene CMS. Es ist flexibler als Joomla!. Die Inhalte können auf mehreren Ebenen organisiert und die Nutzerrechte individuell vergeben werden. Typo3 eignet sich für mittlere und große Seiten. Für die Steuerung der Templates existiert eine eigene Skriptsprache. Die Hardware-Anforderungen sind dementsprechend hoch und der Administrator muss mit einer langen Einarbeitungszeit zu rechnen.
  • Drupal legt besonderen Wert auf gemeinschaftsbildende Maßnahmen. Die User können eigene Weblogs anlegen und zusammen in „Büchern“ an Texten arbeiten. Zusätzlich verfügt Drupal über eine Versionskontrolle der Inhalte. Drupal etablierte sich durch diese Schwerpunktsetzung als Social-Software unter den bekanntesten CMS.
  • WordPress ist ein Content-Management-System das vorwiegend bei der Erstellung häufig zu aktualisierender Websites, meist Blogs, eingesetzt wird. Es bietet ebenfalls mehreren Teilnehmern die Möglichkeit, Artikel zu veröffentlichen und eignet sich gut als System für Nachrichtenseiten.

Ein Ausblick auf Beispielseiten

Die Joomla!-Optik wird einem modernen CMS entsprechend template-basiert verwaltet und trennt Inhalt von Gestaltung. Einen Ausblick auf die kreativen Möglichkeiten geben die Seiten mamboawards und joomlaawards, auf denen täglich gelungene Joomla!-Seiten ausgezeichnet werden. ™

Kategorien
CMS Programmierung

CMS Joomla! – Ein Alleskönner unter der Lupe: Arbeiten mit Joomla!

Joomla! eignet sich für die Verwaltung und Organisation eines kleinen bis mittleren Internetprojekts mit mehreren Autoren. Die Inhaltsseiten dürfen nicht zu zahlreich werden und die Organisationsstruktur darf keine besondere Tiefe erfordern. Dann können Seitenbetreiber die benutzerfreundliche Joomla!-Verwaltung nutzen und die Vielseitigkeit des Systems voll ausschöpfen.

Im Gegensatz zu anderen „Alleskönnern“ unter den Content-Management-Systemen wie Typo3 stellt Joomla! keine hohen technischen Ansprüche. Auf Clientseite reicht ein moderner Browser, beispielsweise Firefox ab Version 1.5. oder Internet Explorer ab Version 6. Javascript muss aktiviert sein, da das Frontend sonst nur eingeschränkt genutzt und auf das Backend gar nicht zugegriffen werden kann. Auf Serverseite verlangt Joomla! 50 Megabyte Speicherplatz, einen Apache Webserver (1.13.19 oder höher), eine MySQL-Datenbank (3.23.x oder höher) und PHP (4.3.10 oder höher).

Installation

Die neueste Joomla!-Version kann kostenlos als ZIP-Archiv heruntergeladen werden. Dieses muss entpackt und mittels FTP an den Server gesendet werden. Nun kann man das Verzeichnis im Webbrowser aufrufen und den Installationsanweisungen Schritt für Schritt folgen. Am Ende muss noch per FTP der Installationsordner auf dem Server entfernt werden.

Frontend

Optisch gestaltet werden Joomla!-Websites mittels Templates. Dadurch sind Inhalt und Aussehen voneinander unabhängig und kreativen Grafikern keine Grenzen gesetzt.

Das mit der Installation mitgelieferte Beispiel-Layout zeigt die vielseitigen Möglichkeiten an Modulen und Erweiterungen. Links oben das Joomla!-Logo und daneben ein Feed. In der linken Spalte befinden sich verschiedene Menüs und ein Login-Modul. Zentral stehen die Inhalte, sowie zwei Module für die neuesten und beliebtesten Beiträge. Rechts werden noch weitere Module für Suchfunktion, Umfragen, „Wer ist Online?“ und Werbebanner gezeigt. Diese Standards können durch weitere Menüs, Module oder Komponenten ergänzt oder ausgetauscht werden. Wo diese Erweiterungen schließlich im Frontend auftauchen, wird durch die verschiedenen Templates bestimmt und über das Backend verwaltet.

Loggt sich ein User im Frontend ein, kann er darin Inhalte verfassen, bearbeiten und publizieren, sofern er die dafür nötigen Zugriffsrechte besitzt. Mittels WYSIWYG-Editor sind die Beiträge ohne HTML-Tags oder anderen Kürzeln leicht zu formatieren. Dank eines Plug-ins ist es schon beim Standard-Editor (TinyMCE) möglich, Bilder hochzuladen und einzufügen.

Backend

Betrachtet man die Fülle an Funktionen, Möglichkeiten und Erweiterungen von Joomla!, muss man davon ausgehen, dass dahinter eine komplexe Verwaltung steckt. Um diese bedienen zu können, benötigt man eine gewisse Einarbeitungszeit. Danach gestaltet sich die Arbeit im Backend allerdings durchwegs benutzerfreundlich.

Dies liegt an der einfachen Struktur, mit der Joomla! den Content verwaltet. Das System teilt die Seite in Bereiche, weist diesen Kategorien zu und in diesen Kategorien befinden sich die Beiträge. Baut man eine Seite auf, so erstellt man zuerst die Bereiche und danach die jeweils dazugehörenden Kategorien. Verfasst man dann Beiträge, also den tatsächlichen Content, so muss man dabei Bereich und Kategorie angeben und der Inhalt steht im Frontend an der gewünschten Stelle. Nachteilig an dieser Struktur ist, dass man nie tiefergehende Organisation als diese drei Ebenen zur Verfügung hat. Bei zu vielen Inhaltsseiten verliert man dadurch die Übersicht.

Diese Drei-Ebenen-Struktur muss man kennen, um mit Navigation und Bearbeitung im Backend zurechtzukommen. Zu den wichtigsten Verwaltungsbereichen gelangt man auf kürzestem Weg dank der Buttons im „Kontrollzentrum“, der Hauptsite des Backends.

In den Verwaltungsbereichen erscheint immer zuerst eine Listenansicht. Jene Einträge, die man darin bearbeiten will, wählt man mittels Haken aus. Die Werkzeugliste rechts oben weist einem die zur Verfügung stehenden Möglichkeiten aus.

Danach befindet man sich bereits in der sogenannten Editieransicht, in der die Einträge schließlich erstellt oder verändert werden können. Diese Ansicht passt sich der Art des Eintrages an. Will man beispielsweise einen Beitrag im Backend verändern, öffnet sich der gleiche WYSIWYG-Editor wie im Frontend.

Benutzerverwaltung: Wer hat welche Rechte?

Joomla! organisiert die User in der Benutzerverwaltung, die über einen Button im Kontrollzentrum oder in der Navigation unter Site/Benutzer zu finden ist. Dort können Administratoren Benutzer anlegen, bearbeiten und löschen.

Grundsätzlich unterscheidet Joomla! zwischen Front- und Backend-Usern. Personen mit Zugang zum Backend haben generell alle im Frontend verfügbaren Rechte inne. Bei den Frontend-Usern wird über vier Gruppen festgelegt, ob sie Inhalte sehen, bearbeiten oder freischalten dürfen. Die folgende Liste ist nach Aktionsspielraum geordnet, wobei die nachstehenden Gruppen alle Rechte der davor stehenden besitzen:

  • Registriert: Diesen Status erlangen jene User, die sich selbst über ein entsprechendes Modul im Frontend registrieren. Sie können sich im Frontend einloggen und so in den privaten Bereich gelangen.
  • Autor: Autoren dürfen Inhalte verfassen. Bevor diese veröffentlicht werden, müssen sie jedoch durch einen Publisher oder Backend-User freigegeben werden.
  • Editor: Editoren dürfen zusätzlich noch fremde Inhalte im Frontend bearbeiten.
  • Publisher: Publisher können Inhalte verfassen, bearbeiten und freischalten. Dadurch wird es mit Joomla! möglich, die gesamte inhaltliche Arbeit auf Frontend-User zu übertragen.

Den Frontend-Usern übergeordnet sind die drei Gruppen der Backend-User. Nach zunehmendem Aktionsspielraum geordnet, heißen sie:

  • Manager: Manager haben Zugriff auf Beiträge, Kategorien, Bereiche, Frontpage, Menüs, Medien und das Archiv. Damit haben sie die nötigen Rechte alle inhaltlichen Funktionen zu verwalten.
  • Administrator: Einfache Administratoren können Module, Plug-ins und Komponenten verwenden und installieren. Zudem dürfen sie den Papierkorb leeren. Diese Gruppe hat aber keinen Zugriff auf Templates oder die globalen Einstellungen.
  • Super Administratoren: Super Administratoren haben alle Rechte innerhalb des Systems.

Allen Benutzern werden immer nur jene Optionen angezeigt, die für sie verfügbar sind. So bleibt die Verwaltungsoberfläche im Backend für Manager deutlich übersichtlicher als für Super Administratoren.

Deutlich weniger Spielraum bietet Joomla! bei der Verwaltung von Zugriffsrechten für den Content. Dabei unterscheidet das CMS nur auf drei Ebenen:

  • Öffentlich: Jeder Besucher der Homepage kann diese Inhalte sehen.
  • Registriert: Um auf diese Inhalte zugreifen zu dürfen, muss der Nutzer angemeldet sein.
  • Admins: Nur jene User haben Zugriff, die mindestens der Gruppe „Autor“ angehören.

Diese Beschränkung auf lediglich drei verschiedene Zugriffslevels gilt als eine Schwäche des CMS Joomla!. Viele Seitenbetreiber schätzen es, den Zugriff auf mehreren Ebenen oder im Idealfall individuell verwalten zu können. ™

Kategorien
CMS Programmierung

Habari – Schnelles und schlankes Blogsystem

Schon seit einiger Zeit gibt es das neue Blogsystem Habari, doch aktuell hat es wieder ein wenig Aufmerksamkeit auf sich gezogen. Genug um einmal einen Blick darauf zu werfen.

Der Name Habari kommt aus dem Suaheli und bedeutet als Gruß soviel wie „Was gibt es Neues?“. Das Projekt ist aus der WordPress-Community hervor gegangen und wird massgeblich von einigen ehemaligen WordPress-Entwicklern vorangetrieben, stellt aber keine Abspaltung der WordPress-Software dar. Das System wurde von Grund auf  neu entwickelt, wobei das Rad allerdings nicht neu erfunden wurde.

Grund für das neue Projekt war die geschlossene Entwicklung von WordPress, welche willige Entwickler nicht frei beteiligt. Demnach kann bei Habari auch jeder mit Interesse einen Beitrag leisten und geeignete Entwickler werden direkt in die Entwicklung eingebunden.

Codebasis

Das Projekt setzt durchweg auf Standards und setzt diese Konseque nt um. So wurde beispielsweise Atom zum Publishingprotokoll der Wahl und erfährt vollständige Unterstützung. Und das gesamte System ist sowohl durchweg Objektorientiert, als auch nach neuesten Erkenntnissen modularisiert. Das erklärte Ziel dahinter ist die einfache Erweiterbarkeit und Stabilität im Betrieb.

Für einen einheitlichen Zugriff auf die verschiedenen Datenbanksysteme wird PHP Date Objects (PDO) genutzt, dies trägt auch zur Sicherheit bei, denn Angriffe durch SQL-Injection werden so vermieden. Zum Einsatz kommen auch alte Bekannte wie Blueprint als CSS-Reset und JQuery. Insgesamt setzt das System sehr stark auf Ajax, bleibt aber dennoch erstaunlich schlank und schnell. Nach der Installation benötigt es gerade mal unter 4,5 MB.

Systemvoraussetzungen

Um das System zu betreiben sind einige Voraussetzungen nötig, die nicht jeder Webspace erfüllen wird: mindestens PHP 5.2, Unterstützung von PDO und einige Extensions zuzüglich einer Datenbank unter MySQL, PostgreSQL oder SQLite. (Details) Habari legt damit die Messlatte zwar höher als WordPress, lässt dafür aber bei der Wahl der Datenbank mehr Freiheiten. Auch ein weitergehender Ausbau in diesem Bereich scheint geplant.

Installation

WordPress rühmt sich der schnellen und einfachen Installation, doch hier kann Habari einen drauf legen. Bei WordPress müssen noch einige Daten von Hand in eine Konfigurationsdatei geschrieben werden bevor die Daten auf den Server geladen und die Installation durchgeführt werden kann. Bei Habari werden die entpackten Dateien einfach hochgeladen und die zukünftige Adresse des Projekts aufgerufen.

Während der Installation prüft Habari selbst die zur Verfügung stehenden Datenbanksysteme und die angegebenen Daten. Sind die Daten vollständig und korrekt, dann müssen nur noch die Nutzerdaten angegeben und der Button Install betätigt werden.

Habari legt daraufhin die benötigte .htaccess-Datei und eine config.php an. Fertig! Die Installation dauert, sofern man alle Daten sofort zur Hand hat unter 2 Minuten. Eine Schöne Demo dazu gibt es als Screencast direkt auf der Startseite des Projekts.

Funktionsumfang

Das Grundsystem von Habari beschränkt sich auf die wesentlichsten Funktionen, so bietet es die Erstellung und Verwaltung von Blogeinträgen und Seiten und Tagging an. Kategorien hingegen gibt es nicht und auch die restlichen Optionen fallen sehr minimal aus. Eine Suchmaschinenoptimierung der URLs ist Out-of-the-Box vorhanden und benötigt für normale Bedürfnisse keine Anpassung.

Wie bei anderen Systemen gibt es Themes und Plugins – einige werden mitgeliefert. Habari setzt für die Bereitstellung von Funktionen vor allem auf die Erweiterung durch Plugins um das System so schlank wie möglich und funktionell wie nötig zu halten. Inzwischen gibt es auch schon ein recht umfangreiches Repository an Plugins.

Erscheinungsbild

Im Gegensatz zu WordPress wirkt Habari nicht nur sehr aufgeräumt. Minimalismus ist das Stichwort. Im Backend sind alle Funktionen über ein zentrales Menü unterhalb eines Dropbuttons zu finden. Das Menü teilt sich in die beiden Parts Content und Admin um schnellstmögliche Erreichbarkeit von häufig genutzten Inhalten zu ermöglichen und unterstützt Tastaturkürzel um schnell zum notwendigen Punkt zu springen. Der Fokus liegt also sichtlich auf einer sehr guten und komfortablen Usability.

Was viele vermutich vermissen werden ist ein Wysiwyg-Editor für Einträge, denn hier gibt es nur ein reines Textfeld und die Möglichkeit Html-Tagging zu verwenden. Wer mehr benötigt für den stehen aber einige Plugins zur Erweiterung der Funktionalität zur Verfügung.

Auch hier gibt es ein paar Screencasts die ein wenig der Funktionalität von Habari zeigen und auch eine Demo steht zur Verfügung.

Fazit

Habari macht insgesamt einen sehr guten Eindruck: Schlank, Schnell und lässt durch den Minimalismus dem Nutzer eine freie Wahl in Bezug auf die Komponenten. Keine unnützen Lasten müssen geduldet werden und die Erweiterbarkeit ist fast grenzenlos.

Das System bietet zwar schon generell einige Stabilität, hakt aber an der ein oder anderen Stelle doch ein wenig. Für kleine private Projekte ohne großen Anspruch durchaus schon geeignet. Die aktuelle Version 0.5.1 ist allerdings für große Projekte noch nicht reif.

Kategorien
CMS Programmierung

ImpressCMS

ImpressCMS beeindruckt mit seiner Auswahl an Modulen. Als „Fork“ (=Abspaltung) des bewährten CMS-Projekts Xoops verfügt ImpressCMS über einen stabilen Programm-Kern und paart diese Erfahrung mit dem Entwicklungsdrang eines jungen Projekts.

ImpressCMS ist ein modernes Open-Source-System: Das Design ist template-basiert und die Funktionen, sowie Erweiterungen sind modulartig aufgebaut. Seit der Abspaltung Ende 2007 wurde bereits die erste finale Version 1.0 herausgebracht. ImpressCMS 1.0 bietet hunderte Funktionen, Module, Erweiterungen und vorgefertigte Designs. Den Entwicklern zufolge soll es dadurch für Blogs, große Web 2.0-Communities, Unternehmens-Websites, Intra- und Internet-Portale geeignet sein und sowohl die Bedürfnisse von Anfängern, als auch Profis befriedigen.

Screenshot
Administrations Menü

Auch Aufmerksamkeit hat ImpressCMS in knapp einem Jahr schon erregt. Es wurde für das Finale des Packt Open Source CMS Awards 2008 in der Kategorie „vielversprechendstes CMS“ nominiert.

Installation

ImpressCMS stellt Standardanforderungen an seine Umgebung: Apache Webserver, PHP Version 4.3 und MySQL 3.23. Die Installation geht schnell und einfach: Datenpaket herunterladen, entpacken, Ordner mittels FTP auf den eigenen Server laden, Schreibrechte einstellen, Installationsassistent starten und den Anweisungen folgen. Sollte die Installation Probleme bereiten, bietet der Assistent sogar eine integrierte Hilfefunktion.

Backend

Um zur Verwaltungsoberfläche zu gelangen, muss sich der Administrator im Frontend einloggen. Daraufhin erhält er dort einen Link zur Administration. Diese ist nach der Installation jedoch relativ leer, da abgesehen von einem System-Modul noch kein weiteres Modul vorhanden ist.

Will der Nutzer die Website mit Inhalten füllen, muss er sich zunächst für die ersten Module entscheiden und diese installieren. Die wichtigsten Module für die ersten Schritte werden auf der offiziellen deutschen ImpressCMS-Homepage zum Download angeboten.

Solch ein Aufwand bei der ersten Installation wird dem Anspruch der Entwickler nicht gerecht, ein System auch für Anfänger geschaffen zu haben. Einsteiger müssen zunächst Zeit investieren, um herauszufinden, welche Module sie zu Beginn benötigen und wie sie diese installieren, aktivieren und einstellen.

Der Aufbau des Backends ist zwar ansprechend gestaltet, Popups in der Navigationsleiste, sowie der Schnellzugriff auf Module und Systemeinstellungen helfen einem Anfänger aber nicht weiter. Dieser wird durch die Möglichkeiten und Features überfordert. Und je mehr Module er installiert, desto schwieriger fällt es, den Überblick zu bewahren.

Module, Module, Module

ImpressCMS bietet hunderte frei verfügbare Module mit ebenso vielen Funktionen. Kaum ein Bereich, zu dem ImpressCMS keine Features bereit stellt: Unterhaltung, Mulitmedia, Kommunikation, Community, Social-Network, Informationen, erweiterte Administration, Groupware, Chat, Link, Downloads, Quiz, Spiele und mehr. Nur starke Anbindungen zu bestehenden Shop-Systemen wurden noch nicht umgesetzt.

Diese Vielfalt kommt durch die Kompatibilität mit dem „Mutter-Projekt“ Xoops zustande. Denn jedes Xoops-Modul funktioniert ohne Einschränkung auch mit ImpressCMS. Jedoch müssen die Nutzer manche Module in den Weiten des Internet suchen und diese selbst mit Hilfe von Webseiten wie Secunia oder auch Securityfocus auf Sicherheit prüfen.

Frontend

Designer können sich bei ImpressCMS ausleben, bis das CMS nicht mehr wieder zu erkennen ist. Aber auch Photoshop-Muffel sind nicht auf Grafiker oder Musen angewiesen, um ein ansprechendes Design für ihre Impress-Homepage zu finden. Da auch die Themes von Xoops kompatibel sind, gibt es unzählige Downloads auf Xoops-Seiten. In den Foren wird beispielsweise auf xoops-theme verwiesen.

Support

Viele Module und Funktionen werfen auch viele Fragen auf. Die Community von ImpressCMS präsentiert sich in den Foren (mehrere Sprachen) aktiv und bemüht. Dieser Einsatz ist auch nötig, denn die Dokumentationen sind weder in englischer, noch in deutscher Sprache vollständig und Live-Support gegen Bezahlung oder Feature-Entwicklung auf Bestellung werden auf der offiziellen Homepage nicht angeboten.

Fazit

Die Vorteile von ImpressCMS sind offensichtlich: große Modul- und Funktionsvielfalt in einem stabilen und leistungsstarken System. Um die Möglichkeiten an Funktionen auszuschöpfen, benötigt ein Nutzer allerdings Vorkenntnisse. Für Einsteiger ist ImpressCMS nur bedingt geeignet, dafür aber umso mehr für erfahrene Seitenbetreiber, die Communities verwalten wollen.

Wird Hilfe benötigt, muss man sich mit der Forennutzung anfreunden. Wer persönlichen Live- oder E-Mail Support will, muss sich die Kontakte innerhalb der Impress-Gemeinschaft selbst suchen. ™

Erstveröffentlichung 23.09.2008

Kategorien
Boilerplates & andere Tools Programmierung

Marktübersicht WYSIWYG Web Editoren

Gar nicht so leicht, in der Welt der WYSIWYG Web Editoren den Überblick zu behalten. Jeder braucht einen, aber welcher der richtige ist, das will sorgfältig geprüft sein. Einige Überlegungen helfen dabei. Die Frage nach dem besten Programm für die Gestaltung von Web-Auftritten muss unbeantwortet bleiben. Denn zu unterschiedlich sind Vorkenntnisse, Herangehensweise und Ziele. Was sich für wen eigenen könnten, haben wir in einer Übersicht mit den wichtigsten Programme versucht darzustellen. Eine Empfehlung abzugeben ist schwierig. Vielleicht gibt es etwas zu entdecken. Die Ansprüche sind schließlich unterschiedlich.

Lese-Tipps:
Die 9 besten kostenlosen HTML-Editoren für Webentwickler (Windows-Edition)
Die 5 besten kostenlosen HTML-Editoren für Webentwickler (Mac-Edition)

Die zungenverknotende Abkürzung steht für die Formulierung „What You See Is What You Get“. Gemeint ist, dass eine Bildschirmseite, zum Beispiel Textverarbeitung oder Web-Editor, während der Bearbeitung genauso aussieht wie später beim Druck oder bei der Veröffentlichung im Web. Jedenfalls im Idealfall.

Dreamweaver (Win / Mac)
Ein guter Editor kann den Webdesigner in allen Bereichen unterstützen, Schritte und damit Zeit einsparen sowie für einen sauberen Quellcode sorgen. Dreamweaver bietet dazu zahlreiche Hilfen an. In der Tat ist Dreamweaver längst das Werkzeug Nr. 1 für Websites aller Art. See also our List of Dreamweaver Tutorials. Das Programm kostet circa 400 US Dollar (Version CS3).

Screenshot

Adobe Contribute
Ein Programm zur Pflege vorhandener Seiten. Contribute CS3 enables content authors to quickly and easily update existing websites and blogs while maintaining site integrity — with no technical expertise required. Thanks to a true WYSIWYG authoring environment, content authors and contributors can edit or update any website or blog without having to learn HTML. US$169 at Adobe.

Screenshot

Adobe Golive (Win / Mac)
Ursprünglich Adobes Flaggschiff und Vorzeigeeditor, fristet das Programm heute eine Existenz als fünftes Rad am Wagen. Golive existiert noch, immerhin schon in der Version 9. Doch selbst Adobe fragt ob man nicht am switching interessiert sei. Ending development and sales on April 28, 2008. GoLive kostet 399 US Dollar. Eine Testversion ist vorhanden. Golive erschien erstmals 1995 und hieß´damals Page Mill. Schon damals gaben die GoLive-Programmierer ihrem Produkt jene Eigenheiten mit, auf die auch heute noch eingeschworene GoLive-Nutzer zusammenschweißt. Der großzügige Umgang mit HTML-Syntax und eine ungewohnte Benutzeroberfläche mit Werkzeugleisten und Kontextdialogen verhinderten aber damals, dass GoLive als professionelles Werkzeug ernst genommen wurde. Von Von 1997 bis 1998 hieß das Programm dann GoLive Cyberstudio bis Profgramm und Hersteller von 1999 von Adobe übernommen wurden.

Screenshot

Microsoft Expression (Win)
War Microsoft früher berüchtigt für seine schlechten Editoren (Fontpage) hat sich das mittlerweile geändert. Mit Expression wandelt man in den Spuren Dreamweavers ohne diesen jedoch zu erreichen. Expression versteht sich auf Webstandards und weiß perfekt mit CSS und CSS-Layouts umzugehen. Eine 60 Tage Testversion steht zum Download zur Verfügung, für die man sich anmelden muss. Expression ist kein Frontpage Nachfolger, das ist der Microsoft SharePoint Designer. Die Studio Ausgabe mit verschiedenen anderen Programmen kostet circa 500 US Dollar. Expression allein circa 350,- US Dollar. Das Programm kann von Frontpage aus upgedated werden, das spart viel Geld.

Screenshot

NVU (Win / Mac / Linux)
Dieses Programm sollte einmal eine echte Alternative werden. A WYSYWIG-Editor for Linux Desktop, Microsoft Windows and Macintosh users to rival programs like FrontPage and Dreamweaver. Leider ist die Entwicklung schon vor Jahren zum stehen gekommen. Eine immerhin verbesserte Version existiert mit dem KompoZer.

KompoZer (Win / Mac / Linux)
Abspaltung von NVU. Die letzte Version stammt vom August 2007.

Screenshot
Wirkt etwas angestaubt: KompoZer

Amaya (Win / Mac / Linux)
Ein Programm, dass gleichzeitig browsen und editieren kann – so etwas hat man sich schon oft gewünscht. So ein Allround-Programm wurde vom W3-Konsortium geschaffen. Es heißt Amaya und ist kostenlos zu haben. Das W3C veröffentlichte das Programm, um neue Web-Technologien eines WYSIWIG-Editors zu demonstrieren. Mit Amaya lassen sich einfach Webseiten manipulieren. Es ist möglich, Texte zu verändern oder hinzuzufügen, neue Bilder oder Links einzufügen. Sofern Amaya denn diese Seiten überhaupt anzeigen kann. Mathematische Funktionen lassen sich über ein Popup-Fenster einbringen. Die Formeln können dann direkt auf einer beliebigen Webseite erscheinen. Amaya wandelt die Formeln im Hintergrund in Tags der Auszeichnungssprache Math-ML um.

Namo WebEditor 2006 (Win)
Der Namo-Editor vereint praktisch alle Werkzeuge, die für das Erstellen von Websites benötigt werden und bringt diese auf einer übersichtlichen und auch für den Laien verständlichen Arbeitsfläche unter. Die Navigationselemente sind selbsterklärend und ermöglichen ein schnelles Einarbeiten in die Programmoberfläche. Die Arbeitsoberfläche ist in drei Teile gegliedert: Design-Editor, HTML und Browser-Vorschau, was die volle Kontrolle über den Arbeitsablauf gewährleistet. Außer den typischen Arbeitsfenstern, stehen allerlei Wizards zur Verfügung. Das klingt gut, doch die WYSIWYG-Fähigkeiten des Programms sind begrenzt. Man merkt das Namo schon einige Jahre auf dem Buckel hat ohne weiterentwickelt worden zu sein. So werden etwa veraltete Font-Tags verwendet. Eine Testversion ist vorhanden. Namo kostet 99.95 Dollar.

Screenshot

Evrsoft First Page 2006 (Win)

Screenshot

Microsoft SharePoint Designer 2007 (Win)
Microsofts Frontpage Nachfolger. Es gibt einen Online Version für die man einen Internet Explorer und Geduld braucht.

Screenshot

NetObjects Fusion
Galt früher als der Editor mit den schlechtesten Ergebnissen. Fusion erzeugte grauenvollen Quellcode. Er war besonders bei Anfängern beliebt was wohl daran lag das das Programm häufig von Webhostern verschenkt wurde. Netobjects Fusion eigenet sich für alle, die auf die Schnelle zur eigenen Site kommen müssen, dafür aber wenig Aufwand treiben wollen und keine hohen Ansprüche stellen. Ideal für Visitenkarten-Auftritte kleiner Firmen. Know-how muss man nicht mitbringen, ist der Arbeit mit dem Programm aber auch nicht abträglich. Heute ist Fusion in der Version 10 angekommen und alles mag sich geändert haben, doch das Programm spielt längst keine Rolle mehr. Es gibt eine Trialversion für die man in einen Shop geschickt wird. Weshalb hier der Screenshot fehlt. Fusion kostet derzeit € 99,98.

Quanta Plus (Linux)

Screenshot

Freeway (Mac)

Screenshot

Pagebreeze

Antenna – Web Design Studio (Win)

Screenshot

SeaMonkey Composer (Win / Mac / Linux)

Screenshot

SiteSpinner (Win)
Ein veralteter Editor in der Tradition von Microsoft Frontpage. Hier nur der Vollständigkeit halber erwähnt. Er kostet 49,- Dollar.

Web page Maker (Win)

Dynamic HTML Editor

Screenshot

WYSIWYG Web Builder

Create (Mac)

Website X5 (Win)

Screenshot

Editoren für Laien, Anfänger und Werbeagenturen

iWeb (Mac)

Screenshot

Sandvox (Mac)

Screenshot

Trellian WebPage

Sitegrinder (Win / Mac)

Screenshot

Studioline Web3 (Win)
Was mit Studioline gestaltet wird, kann nur mit betrachtet werden wenn JavaScript aktiviert ist – andernfalls werden sämtliche Grafiken, Buttons und Texte untereinander oder gar nicht angezeigt. Der Quellcode ist zwar tebellenlos, jedoch von geringer Qualität und vor allem erheblich aufgebläht. Das Programm kann für 30 Tage getestet werden.

Bluevoda (Werbesoftware)

RapidWeaver (Mac)

Kategorien
Boilerplates & andere Tools Inspiration Programmierung Tutorials

Dreamweaver: Ein neues Projekt

Einerseits benötigt der Programmierer einen Editor, der für die Code-Bearbeitung optimiert wurde, andererseits einen Weg, um den geschriebenen Quellcode daneben auch visuell überprüfen zu können – also so, wie er später im Browser erscheint. Dreamweaver bietet dazu eine kompakte Lösung an.

Beim Start von Dreamweaver erscheint ein Optionsfenster, das verschiedene Wege zu schon bestehenden oder neuen Projekten anbietet. So erhält man eine Übersicht der zuletzt geöffneten Dateien, die Möglichkeit, eine beliebige Datei zu öffnen, oder dank einer kleinen Vorauswahl eine bestimmte Art von Website neu zu erstellen, so etwa eine Site auf PHP-Basis. Daneben bietet eine Zusammenstellung von Vorlagen die Option, gängige Standardkombinationen wie etwa moderne CSS-Layouts zu generieren. »Erste Schritte«, »Neue Funktionen« und »Ressourcen« sorgen noch für Links auf weitere Informationen, wie etwa Podcasts oder Foren.

Dreamweaver-Website
Ein üblicher Workflow wäre es nun, eine neue Dreamweaver-Website, innerhalb der Software auch »Site« genannt, zu erstellen. Hiermit wird nicht nur eine einzelne Datei abgespeichert, sondern ein Website-Projekt als Ganzes, inklusive aller zugeordneten Dateien, was der Übersicht und später auch der Fehlersuche dienlich ist. Die Dreamweaver-Website kann weiter mit einem FTP-Server synchronisiert werden. Über den Startbildschirm oder über das Menü »Site« legt man auf Knopfdruck die erste Dreamweaver-Website an. Der Assistent hilft bei der Eingabe aller Werte. Der Name der »Site« wird vergeben, die URL erst einmal offen gelassen und es werden vorerst auch keine Servertechnologien verwendet. Zum Anfang konzentrieren wir uns auf das Nötige.

Man arbeitet lokal auf dem Rechner, um später die Daten als Kopie auf den Server hoch zu laden oder man greift über das Netzwerk auf einen Server zu, um die Daten direkt zu bearbeiten. Eine Verbindung zum Remote-Server ist zu Beginn jedoch unnötig, weshalb man in der Auswahl »Kein« anklickt. Die Zusammenfassung im Anschluss dient der Kontrolle, bevor mit dem Bestätigen über »Fertig« die »Site« in dem Register »Dateien« auf der rechten Seite abgelegt wird.

Neue Dateien werden leider nicht gleich der erstellten »Site« zugewiesen. Klickt man etwa auf »Neu erstellen > HTML« im Startbildschirm oder im Menü auf »Datei > Neu« könnte man eine leere Seite anwählen, den DocType festlegen und die Auswahl mit »Erstellen« generieren. Doch erst wenn die neue Seite gespeichert wurde, wird sie der aktuell geöffneten Dreamweaver-Website zugeordnet.

Screenshot
Register: Dateien

Zwei Ansichten
Die erste Seite zeigt nun den Standardaufbau einer HTML-Datei an, mit dem Head- und Body-Bereich sowie einigen weiteren Tags. Über »Einfügen« im Menü oder über die Leiste gleichen Namens können nun erste Inhalte mit Hilfe von Assistenten wie etwa Tabellen, Formulare oder Grafiken eingearbeitet werden. Um den eingefügten Content in der Entwurfsansicht zu überprüfen, reicht ein Klick auf den Button »Entwurf« aus, womit der Code verschwindet und ähnlich wie im Browser die Seite inklusive aller Grafiken dargestellt wird. Unten rechts am Dokument können noch verschiedene Aktionen in Bezug auf die Datei vorgenommen werden.

So könnte man mit der Lupe Bildausschnitte vergrößern. Übrigens kann man hierbei mit gedrückter Alt-Taste schnell wieder heraus zoomen. Die Vergrößerungsstufe wird gleich neben dem Lupensymbol angezeigt, daneben die Größe des Ausschnitts in Pixel angegeben. Gerade für das Optimieren für bestimmte Bildschirmgrößen eine interessante Information. Zuletzt wird noch gezeigt, wie schnell die Seite bei bestimmten Verbindungsgeschwindigkeiten aufgebaut wird. In den Voreinstellungen unter »Statusleiste« kann dazu die Grundlage der Verbindung vom Modem bis hin zu DSL angegeben werden.

Screenshot
Die Leiste »Einfügen« und eine Datei in der Code-Ansicht

Bedienelemente
Dreamweaver bietet an den Seiten verschiedene Bedienfelder zur Bearbeitung der Inhalte an. Das Bedienfeld »Eigenschaften« ist besonders hervorzuheben, da es je nach dem gewählten Content verschiedene Optionen in Bezug auf die Auswahl anbietet. So könnte man nach dem Markieren von Text die Schriftart oder Textgröße verändern, wurde jedoch ein Hyperlink angewählt, bieten die »Eigenschaften« eine Option an, um etwa das Ziel eines Links anzupassen.

Die Bedienelemente können jederzeit per Drag & Drop neu angeordnet werden oder jeweils auch frei als eigenes Fenster über allen Inhalten schweben. Generell kann jedes Bedienfeld über das kleine Dreieck links neben dem Namen ein- und ausgeklappt werden, um Platz zu sparen und um die Übersicht zu bewahren. Hilfreich ist dazu auch der Shortcut »F4«, über den alle Bedienfelder ausgeblendet werden können. Damit erhält man schnell eine größere Ansicht der Website.

Anders als das Bedienfeld »Eigenschaften« sind die weiteren Elemente in so genannte Bedienfeldgruppen sortiert. Die einzelnen Abschnitte bieten also noch weitere Bedienfelder an, wie etwa »Dateien«, hinter dem sich auch »Elemente« und »Codefragmente« verbirgt. Es lassen sich bei Bedarf eigene Bedienfeldgruppen anlegen oder schon bestehende ändern. Eine wichtige Schnittstelle ist das Bedienfeldmenü, das sich auf gleicher Höhe wie der Bedienfeldname über das Icon am rechten Rand aufrufen lässt. Dort könnte man eine Bedienfeldgruppe schließen, die man vielleicht nicht ganz so häufig verwendet. Das lässt sich über das Menü »Fenster« schnell wieder rückgängig machen. Verschiedene Arbeitsplatzkonfigurationen kann man über »Fenster > Arbeitsbereichlayout« öffnen oder selbst erstellte, an die eigenen Bedürfnisse angepasste Anordnungen über »Aktuelles speichern« für den späteren Einsatz sichern.

Screenshot
Bedienfeld: Eigenschaften

Codeinspektor
Genau wie in der Code-Ansicht zeigt auch der Codeinspektor den Quellcode der Seite an. Hier hat man den Vorteil, dass dieser in einem eigenen Fenster dargestellt wird. Der Code bleibt trotzdem editierbar. Änderungen werden also gleich auf die Entwurfsansicht übertragen. So kann man im Zusammenspiel mit der Vorschau effizient arbeiten, in dem man den größten Teil des Bildschirms für die Entwurfsansicht reserviert und sich im Codeinspektor nur den Quellcode anzeigen lässt, an dem man aktuell arbeitet. Aufgerufen wird der Codeinspektor über »Fenster > Codeinspektor« oder schneller über den Shortcut »F10«.

Screenshot
Der Codeinspektor

Wer die HTML- und CSS-Grundlagen beherrscht, könnte nun ein komplettes Website-Projekt von Hand kodieren, doch Dreamweaver bietet weitere Optionen inklusive die Programmierung von Ajax unterstützende Funktionalitäten an. Und auch die zahlreichen Assistenten lohnen einen Blick.

Erstveröffentlichung 30.10.2007

Kategorien
Boilerplates & andere Tools Programmierung

Microsoft Visual Studio 2008

von Julian Taupe

Beim Schreiben von Programmen ist man für jede Zeile Code dankbar, die man nicht selbst schreiben muss. Wer unterschiedliche Programmiersprachen verwenden möchte, kann auf Visual Studio zurückgreifen. Die Software nutzt die modernsten Techniken und bietet Hilfestellungen. Die kommende Version Visual Studio 2008 bringt zudem zahlreiche Neuerungen mit sich.

Was ist Visual Studio?
Visual Studio ist eine Entwicklungsumgebung für Hochsprachen wie BASIC, C/C++, J#, C#. Visual Studio wird in verschiedenen Versionen ausgeliefert. Die Versionen „Standard“, „Enterprise“ und „Professional“ unterscheiden sich vor allem durch Lizenzierungsoptionen und ihre Zusatzkomponenten.

Was ist mit Visual Studio möglich?
Mit Visual Studio ist es möglich, zwischen vielen Projektarten zu wählen, wie in etwa Plugins, Windows Applications und Webapplications. Das bemerkenswerte an Visual Studio ist es, dass nicht nur ein Compiler für eine Sprache, sondern mehrere Compiler für mehrere Sprachen mitgeliefert werden. So können diese Projektarten in vielen Sprachen geschrieben werden. Einige davon sind BASIC, Visual Basic .NET, VB6, C/C++, C# und J#.

Dadurch, dass die ActiveX-Technologie konsequent verwendet wird, ist die Entwicklungsumgebung erweiterbar. So können ActiveX-Controls als Bestandteile eigener Dialoge aus dem System mitbenutzt werden. Zusätzlich ist die Entwicklungsumgebung durch AddIns (Plugins) um Funktionalitäten erweiterbar.

Visual Studio verwendet auch IntelliSense, ein von Microsoft entworfenes Konzept, speziell um die objektorientierte Programmierung durch zusätzliche Hilfestellungen zu erleichtern. Dies muss man sich so vorstellen, dass im Quelltexteditor Zusatzinformationen (wie Methoden, Eigenschaften et cetera) zum aktuellen Objekt, das gerade geschrieben wurde, angezeigt werden.

Was benötigt man um Visual Studio einzusetzen?
Um Visual Studio einsetzen zu können, benötigt man nicht viel. Ein Windows Betriebssystem und 64 bis 256 MB RAM für einen optimalen Betrieb. Des Weiteren werden je nach Version etwa 2–5 GB Festplattenspeicher benötigt. Das .NET Framework 3.5 ist Voraussetzung, da der kompilierte Code für dieses Framework optimiert ist. Visual Studio 2008 bietet die Möglichkeit zu wählen, unter welcher .NET-Version die fertige Applikation laufen soll. Die Standard-Version von Visual Studio 2008 Beta 2 ist etwa 700 MB groß. Die Professional Edition hingegen schon 3,2 GB.

Wissenswertes
Visual Studio 2008 ist der Nachfolger von Visual Studio 2005 und ist noch in Entwicklung. Offiziell kommt es voraussichtlich im Februar 2008 heraus. Visual Studio 2008 wird auf die Entwicklung unter Windows Vista, Office 2007 und Web Applikationen ausgelegt.

Komplett neu ist LINQ (Language Integrated Query) – eine Methode SQL, XQuery oder andere Abfragen direkt in einer Programmiersprache als Code statt wie bisher als String auszudrücken. Dies wird durch die Spracherweiterung von C# 3.0 und Visual Basic 9.0 ermöglicht. Die Syntax von LINQ erinnert an die Syntax von SQL und Visual Basic als auch von C#. Des Weiteren gibt es mit Visual Studio 2008 eine neue Version des .NET Frameworks als auch neue Versionen der .NET Sprachen:

  • C# 3.0
  • Visual Basic 9

In der Version 2008 taucht nun der Windows Presentation Foundation (WPF) Visual Designer auf, welcher für eine klare Trennung von UserInterface und Business Logic sorgt. WPF ist bei Windows Vista bereits vorinstalliert, kann jedoch für Windows XP SP2 und Windows Server 2003 nachinstalliert werden. Der große Vorteil von WPF-Applikationen ist, dass sie sowohl als Desktop-Applikation als auch als Web-Applikation verwendet werden können. Es macht es auch möglich, die Oberfläche besser zu designen und moderne Technologien wie Vektor-Grafiken, Video, 3D Grafiken und so weiter zu verwenden. Dazu kommt auch ein neuer HTML/CSS-Editor, welcher von Microsoft Expression Web beeinflusst wurde (das ist ein HTML Editor, der Microsoft Frontpage ablösen soll).

Zu erwähnen sind Neuerungen wie IntelliSense bei JavaScript, das hilfreich für Web Applikationen ist. Ein XSLT-Debugger wird auch mitgeliefert. Und zum Schluss gibt es noch Erweiterungen für WindowsForms und WPF. Bei all diesen Erneuerungen muss sich eine Sprache verabschieden. J# wird nicht weiter unterstützt, da es nie zu den .NET Sprachen gezählt wurde.

Unterschiede zu den Vorgängerversionen

VS 6

VS .NET

VS 2005

VS 2008

Programmiersprachen BASIC, C++, VB6, J++ VB .NET, C#, C++, J# C# 2.0, VB 8, C++, J# LINQ, C# 3.0, VB 9, C++,
.NET Version keine Version 1 Version 2 Version 3.5
Preis ca. in € (Standard / Enterprise / Professional / Team) – / 1.800 / – / – – / 1.400 / 800 / – 352 / 2.700 / 964 / 3.500 keine Angaben

Der Unterschied zur Vorgängerversion ist die neue .NET-Version. Des Weiteren entfällt der Support für J#, jedoch wird die neue Programmiersprache LINQ unterstützt.

Wie installiert man Visual Studio?
Bei der Installation von Visual Studio gibt es wenig zu beachten. Im Menü kann man zwischen der Installation von folgenden Produkten wählten:

  • Visual Studio
  • MSDN (Dokumentation)
  • Nach Service Releases suchen

Install Menu of Visual Studio 2008

Der Punkt Visual Studio installiert Visual Studio und das aktuelle .NET-Framework (Version 3.5 bei Visual Studio 2008 bzw. Version 2.0 bei Visual Studio 2005), was 40 bis 60 Minuten dauert.

Full Installation of Visual Studio 2008

Nach der Installation wird ein Hinweis eingeblendet, der den Benutzer dazu auffordert, die aktuellsten Sicherheitspatches zu installieren.

Der Punkt MSDN installiert die beigelegte Dokumentation für Visual Studio. Diese beinhaltet die Dokumentation zu den Klassen und Namespaces Microsofts, diese ist auch kostenlos abrufbar. Das Menü Nach Service Releases suchen sucht nach Service Packs für Visual Studio.

Visual Studio 2008 wird auch kostenlos angeboten. Diese kostenlosen Produkte gliedern sich anders als bei Visual Studio 2005:

  • Windows, Game und Hardware Development
    • Visual Basic 2008 Express Edition
    • Visual C# 2008 Express Edition
    • Visual C++ 2008 Express Edition
  • Web Development
    • Visual Web Developer 2008 Express Edition

Diese Produkte können Sie kostenlosen herunterladen. Des Weiteren kann Visual Studio 2008 Beta 2 (Codename Orcas) ebenfalls kostenlos heruntergeladen werden.

Erstveröffentlichung 21.09.2007

Kategorien
CMS Programmierung

Mephisto: teuflisch gut und dennoch kostenlos

Mephisto stellt einen eleganten Ansatz dar, mit dem die Aufgaben eines Bloggers schnell, mühelos und effektiv gelöst werden können. Erweiterte Flexibilität und Schlichtheit der Engine lassen das System zu einem Werkzeug werden, mit dem komplexe Weblogs genauso wie verschachtelte Web-Präsenzen vergleichsweise leicht realisiert und weiterentwickelt werden können.

Im Umfeld der Weblog-Engines werden Blogbetreibern Dutzende von verschiedensten Optionen zur Verfügung gestellt. Expression Engine ist ein erstklassiges Werkzeug für Profis und Fortgeschrittene, mit Movable Type erhält man eine simple und intuitive Benutzeroberfläche und Serendipity überzeugt durch eine leistungsstarke Template-Engine. Hinzu kommen WordPress, die einfachste und populärste Engine überhaupt, sowie Drupal mit seinem cleveren, aber komplexen „Taxonomy System“ zum automatisierten Klassifizieren von Inhalten.

Screenshot

Doch neben etablierten Lösungen erfreut sich manch ein Betreiber auch an kompakten und eleganten Ansätzen. Etwa wenn sie Qualität, Funktionalität und Benutzerfreundlichkeit miteinander vereinbaren, wie zum Beispiel Mephisto, eine hübsche, mächtige und simple Weblog-Engine für Ruby-Fans.

Mephisto liefert das übliche Arsenal an Funktionen, die von einer professionellen Weblog-Engine erwartet werden. Beiträge lassen sich unter anderem in verschiedene Rubriken (sections) und Seiten (pages) ablegen und zu festgelegten Zeitpunkten automatisch veröffentlichen. Zwar liegt kein WYSIWIG-Editor vor, dafür werden Textile, Markdown und Markdown with Smartypant unterstützt sowie die Vorschaufunktion implementiert. Die Anzahl der angezeigten Posts pro Seite kann für jede Rubrik einzeln festgelegt werden. Sämtliche Aktivitäten der Anwender erscheinen in kompakter Übersicht auf der Startseite des Admins. Unter anderem können Typo, WordPress, Textpattern und MovableType von Mephisto automatisch übernommen werden.

Screenshot

Die Stärke des Mephisto liegt in seiner Schlichtheit und Benutzerfreundlichkeit. In der Engine können mehrere Autoren parallel an einem Dokument arbeiten – es wird eine Revision über die Versionen des Dokuments geführt, die beim Überschreiben von Inhalten diese gegebenenfalls wiederherstellen lässt. Unterschiede zwischen Versionen werden direkt grafisch hervorgehoben.

Screenshot

Sowohl das integrierte „aggressive“ Caching als auch eines der 8 mitgelieferten Liquid Templates können Sie schnell und robust über eine intuitive Oberfläche anpassen. Verwendet werden dafür selbsterklärende Mephisto Tags – ganz im Geiste von Ruby. Jede Rubrik kann mit einem eigenen Template versehen werden. Neue JavaScripts, CSS-Dateien und Bilder können „on the fly“ hinzugefügt werden. Das System kann sowohl als Weblog als auch in Form eines CMS-Systems verwendet werden. Zusätzlich stehen Erweiterungen und Themen zur Verfügung, die als Vorlage zu beliebig komplexen Layouts dienen können.

Mephisto verfügt über eine ausführliche Dokumentation, die noch ergänzt und erweitert wird. Detaillierte Installationsanleitungen und How-Tos sollen den Einstieg für Interessenten erleichtern. Die letzte Version der Engine kann auf der offiziellen Website kostenlos heruntergeladen werden (1.5 Mb). Vorausgesetzt wird die Server-Unterstützung von Rails v1.2. ™

Erstveröffentlichung 20.07.2007