Blog
Flash in Drupal-Inhalte einbinden
Meiner Meinung nach, sollte man Flash-Inhalte nur wohldosiert auf einer Webseite einsetzen. Flash-Intros die man sich anschauen muss bevor man auf die eigentliche Seite gelassen wird oder eine Navigation in Flash sind eher problematisch, schrecken User ab und sind in der Regel auch nicht barrierefrei.
Es gibt aber auch sinnvolle Einsatzgebiete für Flash-Inhalte auf einer Webseite, z.B. wenn man Flash-Anwendungen entwickelt und Demos davon zeigen möchte. Oder weil man Videos produziert und Kostproben seines Könnens präsentieren will. Drupal macht es einem recht einfach, Flash-Inhalte in verschiedenen Formen auf seiner Webseite einzubinden. Besonders leicht geht dies beispielsweise mit Hilfe des CKEditors und dem CKEditor SWF - Enhanced Flash embedding plugin. Diese Plugin besteht aus zwei Komponenten. Es bietet diverse Verbesserungen und Ergänzungen für das CKEditor eigene Flash-Plugin. So kann man
- SWF-, FLV-Video- und MP3-Audio-Dateien einfach in Inhalte einbetten
- Breite und Höhe werden dabei automatisch aus dem SWF- oder FLV-File ermittelt
- Breite und Höhe können mittels Prozentangaben eingestellt werden
- Flashvariablen können übergeben werden
- Zeigt das Video auch in der Vorschau-Funktion an
- Behebt diverse Fehler des Standard-Plugins
- Serverseitig konvertiert ein Format-Filter den nicht standardkonformen Code des CKEditor (<object><embed></embed></object>) in die korrekte Schreibweise (<object><object></object></object>)
Einen Nachteil hat diese Einbindung allerdings: Auch wenn man das Flash-Menü aktiviert, erhält man nicht die, z.B. von Youtube gewohnten, Bedienelemente wie eine Pausenfunktion oder Lautstärkeregler. Diese Funktionen bekommt man nur umständlich über das Kontextmenü der rechten Maustaste (bei Windows).
Mehr Komfort bietet da die zusätzliche Einbindung einer Player-Software auf dem Web-Server auf dem die Webseite gehostet ist. Hierfür kann man beispielsweise den JW Player von longtail video, in Verbindung mit den Drupal-Modulen JW Player Module for Drupal (Drupal 6) oder JW Player (Drupal 7), einsetzen. Für den nicht-kommerziellen Einsatz ist der Player kostenlos. Hiermit lassen sich dann zusätzlich auch Flash-Videos (.flv) und MP3-Dateien (.mp3) abspielen.
Die Installation des JW Player ist relativ einfacht.
- Neueste Version des JW Player (kommerzielle oder nicht-kommierzielle Version) von der longtailVideo-Webseite runterladen, entpacken und in ein eigenes Unterverzeichnis der Drupal-Installation laden. Am besten nimmt man sites/all/libraries/jwplayer.
- Je nach Drupal-Version das passende Modul von Drupal.org herunterladen, installieren und aktivieren. Hinweis: Das Modul JW Player für Drupal 7 benötigt außerdem die Module cTools und Libraries API.
- Unter Verwalten >> Berichte >> Statusbericht prüfen, ob die Konfiguration stimmt.
Jetzt kann man mit Hilfe des Flash-Buttons
im CKeditor Flash-Inhalt direkt in seinem Content platzieren und anzeigen lassen.
PHPlist: Mailversand drosseln bei Beschränkungen durch den Provider
Viele Anbieter von Webspace drosseln die Zahl der E-Mails, die innerhalb einer bestimmten Zeitspanne versendet werden dürfen. Kürzlich hatten wir eine Supportanfrage, bei der der Hoster des Kunden nur 450 E-Mails pro Stunde erlaubte. Da Newsletter aber an mehrere tausend Empfänger versendet werden sollten, sorgten die Standardeinstellungen dafür, dass nach knapp 450 E-Mails alle weiteren Sendversuche blockiert wurden und die Mails mit einer Fehlermeldung zurückkamen. Erst nachdem ein neues Zeitintervall angefangen hatte, konnten wieder Mails versendet werden. Die Ursache lag in den Einstellungen für die Drosselung des Mailversandes in PHPlist. Im Folgenden beschreiben wir, wie man Probleme damit vermeidet.
CKeditor verhindert private File-Downloads in Drupal7
Das Problem: Für eine Firmenwebsite soll eine Möglichkeit geschaffen werden, dass eingeloggte Kunden Beiträge schreiben können, an die sie Dateien (hier Sprachdateien in den Formaten mp3, wav u.a.) anhängen können. Diese Dateien sollten dann überarbeitet werden und die Arbeitsergebnisse wieder an den Beitrag agehängt werden, damit der Kunde sie sich wieder herunterladen kann. Da die Dateien natürlich vertraulich sind, soll jeder nur seine Dateien sehen und herunterladen können. Nach dem Einrichten des privaten Modus in Drupal kann zwar jeder seine Dateien hochladen und an die Beiträge hängen, aber keiner kann eine Datei herunterladen – nicht einmal der Admin! Stattdessen erscheint nur die Fehlermeldung "Zugriff verweigert. Sie haben keine Zugriffsberechtigung für diese Seite."
Umlautprobleme mit PHPlist und wie man sie behebt
PHPlist ist ein sehr schönes Open-Source-Tool, um Newsletter auch an einen großen Empfängerkreis zu verschicken. Leider ist PHPlist etwas problematisch bei der Handhabung von deutschen Umlauten (stolpert aber ebenso auch über skandinavische Sprachen, französische Wörter mit Akzenten, kyrillische Buchstaben oder asiatische Zeichen), wenn man es nicht korrekt konfiguriert. Und auch das Zusammenspiel mit WYSIWYG-Editoren wie dem FCK-Editor oder TinyMCE ist nicht ganz geschmeidig. Wie man PHPlist korrekt konfiguriert, um diese Probleme zu vermeiden, beschreiben wir im folgenden Beitrag.
Tue Gutes und rede darüber ...
Nicht nur zur Weihnachtszeit sollten sie uns am Herzen liegen: all jene auf der Welt, denen es schlechter geht als nötig. Deswegen unterstützt webtotum regelmäßig eine Hilfsorganisation die hilft, Not zu lindern.
2011 spenden wir über oxfamunverpackt.de einige Sätze Schulbücher. Moderne technische Hilfsmittel haben die Schülerinnen und Schüler der Isoko-Schule auf dem weitgehend unerschlossenen Minembwe-Hochplateau in der Demokratischen Republik Kongo nicht zur Verfügung. Deshalb sind gute Fachbücher für ihre Ausbildung besonders wichtig. Und wir sind überzeugt: Eine gute Ausbildung ist die beste "Entwicklungshilfe", die man leisten kann.

"(Nicht überprüft)" in Drupal-Kommentaren entfernen
Die meisten Blogs gestatten es ihren Besuchern, dass man Kommentare schreiben kann ohne sich dafür anzumelden. Das geht auch bei Kommentaren auf einer Drupal-Webseite. Allerdings wird dann hinter dem Namen des Kommentarautors stets ein "(nicht überpüft)" angehängt. Dieser Text erscheint auch in der Liste der neuesten Kommentare, wenn man den entsprechenden Block aktiviert hat.
Schön ist dieser Eintrag nicht und bis einschließlich Drupal 6 gibt es auch für den Admin keinen Schalter, um ihn loszuwerden. Ab Drupal 7 kann man immerhin in den Theme-Einstellungen die Anzeige des User-Status' deaktivieren, womit der Text verschwindet. Bei früheren Drupal-Versionen muss man dagegen mehr oder weniger aufwändige Eingriffe in der PHP-Dateien des Themes vornehmen (Achtung: Bitte niemals die Drupal-Core-Dateien oder die Dateien der mitgelieferten Themes ändern, sondern immer eine Kopie des Themes in ../sites/all/themes erstellen und diese anpassen!).
Eine andere Lösung gibt es für Drupal 6 (und 7), in Form des Moduls Submitted By. Damit kann man, in Verbindung mit dem Token-Modul, die gesamte Zeile die unterhalb eines Kommentares (aber auch einer Node!) erscheint nach belieben gestalten. Wer schon mit dem Token-Modul gearbeitet hat, wird keine Schwierigkeiten haben, seine Autorenzeilen anzupassen.
Und so gehts:
Umgebungssuche nach Postleitzahl und Ausgabe in Google Map mit Drupal
Es gibt viele Anwendungen, bei denen es Sinn macht, Ortsangaben auch für die Anzeige in einer Karte zu verwenden. So erleichtert man seinen Kunden das Auffinden einer Filiale oder visualisiert Anbieter-Verzeichnisse, Standorte von Mietfahrzeugen etc.
Drupal bietet hierfür einige sehr interessante Module. So kann man mit Hilfe des Moduls "Location" nicht nur eine Suche nach Geo-Koordinaten durchführen, sondern auch nach Postleitzahlen. Durch seine Integration mit "Views" und "CCK" lassen sich sehr flexible Lösungen gestalten. So lassen sich gefundene Standorte direkt in einer Karte von GoogleMaps oder Bing anzeigen.
Und so geht's:
Benötigt werden die Module
Views (das sollte sowieso in keiner Drupal-Installation fehlen)
Location (ab Version 6.x-3.1)
Drupal 7 und der Kampf mit Menu Trail und Breadcrumb
Einen Schwachpunkt gibt es bei Drupal, der auch in der aktuellen Version 7 noch nicht behoben wurde: Grundsätzlich weiß Drupal über die Zugehörigkeit von Inhalten zu bestimmten Menüpunkten nur dann Bescheid, wenn die jeweilige Node direkt mit diesem Menüpunkt verknüpft ist. Werden Nodes nun auf einer Übersichtsseite zusammengefasst (z.B. in verkürzter Form mit „Weiterlesen“-Link zum vollständigen Beitrag), die einen eigenen Menüpunkt besitzt und man klickt eine dieser Nodes an um den vollen Text zu lesen, fehlt die Information, welcher Menüpfad (engl. menu trail) dabei aktiv bleiben soll.
Ein Beispiel soll die Problematik verdeutlichen:
Wir haben eine Taxonomy mit den drei Taxonomy-Terms ProjektA, ProjektB und ProjektC.
Die Nodes mit den Inhalten sind wie folgt den Taxonomy-Terms zugeordnet:
Node1: 1. Beitrag ProjektA >> ProjektA
Node2: 2. Beitrag ProjektA >> ProjektA
Node3: 1. Beitrag ProjektB >> ProjektB
Node4: 2. Beitrag ProjektB >> ProjektB
Node5: 1. Beitrag ProjektC >> ProjektC
Dazu gibt es eine Menüstruktur nach folgendem Muster:
Menüpunkt1
Menüpunkt Projekte
>> Menüpunkt ProjektA
>> Menüpunkt ProjektB
>> Menüpunkt ProjektC
Menüpunkt3
...
Die drei Projekte-Untermenüpunkte zeigen jetzt per View alle Artikel an, die jeweils mit dem korrespondierenden Taxonomy-Term versehen sind. Wie man auf dem Screenshot sieht ist nach dem Klick auf auf den Menupunkt „Projekte>>Projekt A“ der entsprechende Menüpunkt als aktiv gekennzeichnet und die Seite zeigt alle Beiträge zu diesem Projekt an. Weiterhin zeigt die Breadcrumb korrekt „Startseite » Projekte“ an.
Bis hierher ist also alles in Ordnung.
URL-Aliase in Drupal 7: Taxonomy Term automatisch in URL einfügen
Bis Drupal 6 konnte man "lesbare URL" (auch URL-Aliase genannt) sehr leicht mit Hilfe von Taxonomy-Terms nach diesem Muster erstellen:
[vocab]/[termpath]/[title]
Dabei ist [vocab] die Bezeichnung des Taxonomy-Vokaburlars, das einem Inhaltstypen zugeordnet ist, [termpath] der Taxonomiebegriff (ggf. mit übergeordneten Begriffen, bei einer Baumstruktur) und [title] der Titel einer Node (also die "Überschrift" eines Inhaltes). So ließen sich anstelle wenig aussagekräftiger URLs wie
meine.domain.de/node/1798
ansprechendere URLs wie diese automatisch erstellen (wobei der Begriff "hardware" ein Taxonomy Term ist):
meine.domain.de/magazin/hardware/reparatur-eines-scanners
In Drupal 7 wurde allerdings das Taxonomy-System geändert. Ein Taxonomy-Vokabular wird jetzt nicht mehr durch Auswählen der Inhaltstypen in "Vokabular bearbeiten" zugeordnet. Stattdessen muss man zunächst bei dem Inhaltstypen ein CCK-Feld erstellen. Diesem den Feldtyp "Referenz auf Taxonomy-Begriffe" geben und anschließend das gewünschte Vokabular auswählen.
Die Schritte dazu im Einzelnen:
Drupal 7: Falscher Eintrag bei $baseurl läßt ctools stolpern
Kleine Ursache, große Wirkung: Nach dem Liveschalten einer neuen Kunden-Webseite sollte noch geschwind ein View geringfügig geändert werden. Eigentlich eine Kleinigkeit, die sonst keine zwei Minuten dauert. Aber diesmal kam es anders. Beim Speichern der Änderung in der Eingabemaske (ein via Javascript erzeugtes Overlay) kam diese Fehlermeldung:
An AJAX HTTP request terminated abnormally.
Debugging information follows. http://die-kundendomain.de//admin/structure/views/ajax...
StatusText: error
ResponseText:
ReadyState: 0
Die einzige Möglichkeit aus dem Dialog wieder rauszukommen, war ein Klick auf das "Abbrechen"-Kreuz oben rechts in dem Overlay. Was natürlich ziemlich unpraktisch ist, da der View damit nicht bearbeitbar war und diese seltsame, nichtssagende Fehlermeldung an zahlreichen Stellen auftrat. Da die Views in der Entwicklungsversion fehlerfrei funktionierten, alle Module auf dem neuesten Stand waren und auch PHP die gleiche Version hatte, war die Sache zunächst rätselhaft und konnte nur mit den letzten Arbeitsschritten nach dem Übertragen der Seite aus der Entwicklungs- in die Produktivumgebung zusammenhängen.
Nach etwas Suchen war der Fehler dann schließlich rasch gefunden: Auf der Liveseite war in der htaccess die Regel zum Umschreiben des Domainnamen auf "mit www." eingeschaltet worden, so dass aus die-kundendomain.de immer www.die-kundendomain.de wurde.
# To redirect all users to access the site WITH the 'www.' prefix,<br />
# (<a href="http://example.com/" title="http://example.com/">http://example.com/</a>... will be redirected to <a href="http://www.example.com/" title="http://www.example.com/">http://www.example.com/</a>...)<br />
# uncomment the following:<br />
RewriteCond %{HTTP_HOST} !^www\. [NC]<br />
RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]<br />In der settings.php von Drupal stand jedoch noch
$base_url = 'http://die-kundendomain.de'; // NO trailing slash!
also ohne vorangestelltes "www". Nachdem das in
$base_url = 'http://www.die-kundendomain.de'; // NO trailing slash!
geändert wurde, waren die AJAX-Fehler verschwunden.
- 1
- 2
- 3
- …
- letzte Seite »
Das Team

Martina Rüdiger
(X)HTML/CSS, PHP, Drupal, Wordpress, Konzeption, Design und Umsetzung von modernen Web-Layouts, SEO, Printdesign

Jürgen Thau
Kundenberatung, Projektsteuerung, PHP, JavaScript, Drupal, Joomla, Drupal- und Joomla-Schulungen
Was wir bieten
- Konzeption und Gestaltung rund um Ihre Web-Seite
- Online Shops
- barrierearmes und zukunftssichere Designs
- Beratung rund um Content-Management
- maßgefertigte Lösungen
- ergänzende Angebote aus dem Print-Bereich
- bedarfsgerechte Web-Hosting-Angebote
- Schulungen vor Ort
- Unterstützung nach dem Start Ihrer Web-Seite
Referenzen
Neugierig geworden auf unser Angebot? Schauen Sie doch auch mal in unsere Referenzen rein!
Gezwitschert ...
- Sind die Tage von Flash gezählt? "Adobe confirms: no Flash for Chrome on Android" http://t.co/icnRek7r #flash — vor 1 Woche 5 Tage
- Neu im Blog: Flash in Drupal-Inhalte einbinden http://t.co/iuUuE7Wl — vor 2 Wochen 6 Stunden















Neueste Kommentare
vor 3 Tage 11 Stunden
vor 4 Tage 11 Stunden
vor 1 Woche 5 Tage
vor 8 Wochen 9 Stunden
vor 11 Wochen 4 Tage