Archiv der Kategorie: Webentwicklung

Unix-Zeitstempel konvertieren

Es kann vorkommen, dass man einen Unix-Zeitstempel benötigt, zum Beispiel um Datenbankeinträge auf ein bestimmtes Datum zu setzen. Oder man muss umgekehrt aus einem Unix-Zeitstempel ein lesbares Datum machen.

Die Unixzeit ist eine ziemlich lange Ziffernfolge, die nicht wie eine gewohnte Datumsangabe ein Datum erkennen lässt, denn seit Unix Version 6 zählt die Unixzeit die vergangenen Sekunden seit dem 1. Januar 1970 00:00 Uhr UTC, wobei Schaltsekunden nicht mitgezählt werden (Wikipedia). Computer kommen damit, im Gegensatz zu Menschen, natürlich wunderbar klar.

Was also tun, wenn man ein Datum in die Unixzeit umwandeln muss oder umgekehrt? Nun, ich habe einen Online-Konverter gefunden, mit dem das schnell und einfach geht: www.gaijin.at/olsutc.php. Sicherlich gibt es noch mehr solcher Konvertierer, aber dieser gefiel mir auf Anhieb. Außerdem wird er mit erweiterten Funktionen zum Download angeboten – allerdings nur für das Windows®-Betriebssystem.

concrete5: Absender im Kontaktformular (1)

In concrete5 ist ein Modul integriert, mit dem man auf bequeme Art und Weise Kontaktformulare erstellen kann. Nur leider wird automatisch immer die E-Mail-Adresse des Superbenutzers (= obersten Administrators), die ja im System eingepflegt ist, als Absenderadresse der Anfragen angegeben. Das führt natürlich zu Verwirrung bei den Kunden. Sie nehmen in aller Regel an, der Administrator würde die an sie gerichteten Nachrichten empfangen und an sie weiterleiten, möglicherweise sogar vorher lesen.

Dies ist nicht der Fall (oder sollte es jedenfalls nicht sein), denn beim Anlegen des Kontaktformulars gibt man natürlich die E-Mail-Adresse des Kunden als Empfängeradresse an, der die Nachrichten ja auch tatächlich direkt übers System erhält. Die Adresse im »Von«-Feld bedeutet im Grunde nichts, trägt aber in dieser Form nicht gerade zum Vertrauen des Kunden in den Webdesigner bei.

Da muss man ein wenig Hand anlegen. […]

Nachtrag:
Meine ursprüngliche Lösung war nicht die bestmögliche, daher habe ich den entsprechenden Text gelöscht. Die gute Lösung steht in dem neueren Artikel
concrete5: Absender im Kontaktformular (2).

TinyMCE Fiddle

Der WYSIWYG-Editor TinyMCE, der in vielen Content-Management-Systemen integriert ist, ist ja bekanntlich anpassbar. Der Webentwickler kann einstellen, welche Buttons er dem Anwender zur Verfügung stellen möchte oder nicht. Allerdings fand ich es immer ein wenig lästig, die Dokumentation durchsehen zu müssen, um Funktionen hinzuzufügen oder zu entfernen.

Doch nun gibt es TinyMCE Fiddle. Dies ist eine grafische Benutzeroberfläche, auf der man völlig anschaulich den Editor so einrichten kann, wie man ihn denn gern hätte. In der Standardeinstellung, die man beim Seitenaufruf vorfindet, werden wohl alle Buttons angeboten, die es gibt, da heißt es also: abspecken! Und das geht hier nun sehr einfach – mittels zweigeteiltem Fenster: oben Quellcode, unten der Editor (plus Seitenleiste links).

Oben löscht man also unbenötigten Code heraus, danach drückt man eine mit Run beschriftete Schaltfläche, ähnlich wie in einer Programmierumgebung, und unten wird daraufhin der angepasste Editor angezeigt.

Wenn man will, kann man sich kostenlos registrieren lassen und hat dann die Möglichkeit, seine Einstellungen zu speichern und beim nächsten Besuch wieder abzurufen.

Fazit: nützlich für Webentwickler, die öfters mit TinyMCE zu tun haben.

WordPress 3.3

WordPress 3.3 ist erschienen, und es bringt einige Verbesserungen. Das Dashboard kommt wesentlich aufgeräumter daher; das einzige Medien-Symbol startet jetzt den Uploader für alle Dateitypen und das neue Drag-and-Drop-Interface macht Hochladen zum Kinderspiel; und wenn ich das richtig sehe, können Plugin-Entwickler Symbole in der dunkelgrauen Menüleiste am oberen Rand platzieren – ob das vorher nicht auch schon möglich war, weiß ich allerdings nicht.

Das Plugin Cachify (smarter Cache für WordPress) von Sergej Müller zeigt jedenfalls jetzt ein Icon für Cache leeren an. Das ist wirklich praktisch, denn vorher musste man immer erst umständlich zur Plugins-Kategorie gehen.

Hier sind informative Artikel über WordPress 3.3, die ich im Netz gefunden habe:
Pro-Linux.de
Golem.de
WordPress Deutschland

Schnelle Bereinigung für rel=”category tag” in WordPress

Neulich traf mich ja fast der Schlag, als sich mein privates WordPress-Blog (Version 3.2.1) als nicht mehr valide gegen den W3C-Markup-Validator herausstellte. Schuld war eine Mikroformat-Annotation: rel=”category tag”. Über die functions.php im Theme-Ordner kann man das bereinigen.

Bei Whitney Krape fand ich die Anleitung und den Code, den man einfügen muss:

add_filter( 'the_category', 'add_nofollow_cat' );
function add_nofollow_cat( $text ) {
$text = str_replace('rel="category tag"', "", $text); return $text;
}

Die Tage von Flash sind gezählt

Wie auf Golem zu lesen ist, hat Adobe beschlossen, die Entwicklung von Flash weitgehend einzustellen. Es soll ein weicher, fließender Übergang zu HTML5 stattfinden. Künftige Browser-Generationen werden somit irgendwann auf das bisher standardmäßig installierte Flash-Plugin verzichten. Von heute auf morgen werden Flash- und ActionScript-Entwickler sicherlich nicht arbeitslos. Sich langsam mit HTML5 und JavaScript anzufreunden, wäre dennoch bestimmt nicht verkehrt.

Concrete5: Dateimanager zeigt manchmal keinen Upload-Button

Ich hatte heute das Problem, dass im Dateimanager des Concrete5-Backends das Eingabefeld und die Schaltflächen zum Hochladen von Dateien verschwunden waren. Möglicherweise ist das bei einem Update von 5.4.2 auf 5.4.2.1 passiert.

Die Lösung fand ich bei concrete5.org: Es waren keine Dateitypen zum Hochladen angegeben; doch wenn man sie unter Dateimanager > Zugriff neu eingibt, werden auch die Schaltflächen wieder angezeigt.

(Zum Vergrößern auf die Bilder klicken!)

Concrete5-Dateimanager

Concrete5-Dateimanager

Concrete5-Dateimanager

Concrete5-Dateimanager

Concrete5-Add-on »Designer Content«

»Designer Content ist ein unschätzbares Werkzeug, das Webdesignern ermöglicht, auf einfache Weise spezialangefertigte Block-Typen zu erstellen.«

Stimmt. Das im »Marketplace« von Concrete5 kostenlos erhältliche Add-on »Designer Content« ist für den Webdesigner gedacht. Dieser kann seinem Kunden damit einen Block basteln und zur Verfügung stellen, der es diesem leicht macht, bestimmte Inhalte in seine Webseiten einzugeben.

Denn mit dem WYSIWYG-Editor (in Concrete5 ist es TinyMCE), sofern man ihn nicht total abgespeckt hat, kann ein Laie viel Unfug anstellen. In falscher Hierarchie gesetzte Überschriften können es zum Beispiel den Suchmaschinen schwer machen, die Gliederung korrekt zu erkennen. Fehlende Überschriften und statt dessen Normaltext mit vergrößerter Schriftgröße sind genauso kontraproduktiv. Bilder werden vielleicht ohne Abstand in den Text eingefügt.

Von schrecklichen Schriftfarben, abscheulichen Schriftmixturen, albernen Smilies und aus einem Textverarbeitungsprogramm kopiertem Text, dessen Schriftformatierung das ganze Schriftbild ruiniert, mal ganz abgesehen.

Da bietet der Webdesigner dem Kunden eben lieber – zumindest für bestimmte Inhaltsbereiche – speziell angefertigte Blöcke an, die genau vorgeben, wo zum Beispiel welche Überschrift und in welcher Hierarchie zu stehen hat. Man kann auch mehrspaltige Inhaltsbereiche damit vorfertigen, Linklisten, Bild mit umfließendem Text … und sicherlich noch vieles mehr.

Bloß fand ich die Stelle nicht mehr, wo man überhaupt erst einmal so einen Block erstellen kann. Ein Blick in den beschreibenden Text zum Add-on (im Marketplace) brachte dann aber die Aufklärung: Nach der Installation dieses Paketes geht man zu Verwaltung → Seiten und Themes, dann klickt man auf den Reiter Designer Content (in der grauen Leiste oben, rechts von Einzelne Seiten).

Designer Content, developed by jordanlev

Concrete5: »Previous & Next Nav« und URL-Rewriting

In Concrete5 gibt es den nützlichen Block »Previous & Next Nav«. Damit kann man zwischen benachbarten Seiten hin und her navigieren, ohne zum Beispiel immer wieder über die Elternseite (also die übergeordnete Seite) gehen zu müssen.

Das Problem ist nur: Trotz per .htacess-Datei eingeschalteten »hübschen« URLs wird immer /index.php/ in der Adresse eingeblendet, was man aus Gründen der Lesbarkeit und Suchmaschinenfreundlichkeit ja eigentlich vermeiden will.

Doch es gibt eine Lösung: In die Datei config/site.php ist eine Codezeile einzutragen. Ich habe sie ganz an den Anfang, also direkt unter das einleitende PHP-Tag gesetzt. Sie lautet:
define('URL_REWRITING_ALL', true);

(Quelle: www.concrete5.org/community/forums/. Danke an jordanlev für diese Lösung!)

WebMatrix

Microsoft® hat mal wieder versucht, ein Webentwicklungs-Werkzeug zu basteln: WebMatrix. In der Presse wird es sogar vereinzelt gelobt (»Chip Online« und »Page Online«) – wobei ich eigentlich nicht weiß, warum. Denn ich kann in keiner Weise eine Arbeitserleichterung darin sehen.

Sicher, man hat eine komplette Entwicklungsumgebung mit Datenbank- und Web-Server und dazu als Editor »Visual Web Developer Express Edition« (na ja …). Plus eine recht stattliche Anzahl von Content-Management- und Blogsystemen, die man wahlweise lokal installieren kann. Und Dateivorlagen – nicht nur HTML, JavaScript und PHP, nein auch die ganze Palette an Microsoft-proprietären Formaten.

Doch wer braucht das alles? Es geht doch auch mit XAMPP oder, noch besser, mit selbst zusammengestellten Komponenten. So mache ich es: Apache-HTTP-Server, MariaDB (statt MySQL®), PHP und HTML-/PHP-Editor. Viele schwören auf Eclipse mit PHP-Plugin als Editor, aber ich persönlich arbeite lieber mit Webocton-Scriptly.

Oder noch einfacher: Webspace als Testumgebung buchen und das gewünschte CMS dort installieren. Die Template- und Theme-Dateien sind doch ruckzuck hochgeladen in der heutigen Zeit der schnellen Breitbandverbindungen. Viele HTML-Editoren haben sogar eine eingebaute FTP-Upload-Funktion.

Letztlich ist alles Geschmackssache, und WebMatrix wird sicherlich seine Anhänger finden. Für mich ist es unnütz aufgeblähtes Zeug.

Links:
WebMatrix
Webocton-Scriptly
Apache
MariaDB
PHP