WordPress Plugin: kandidaten2013.de

Zur Landtags-, Bezirkstags- und Bundestagswahl gibt es in Bayern ein Portal auf dem man sich über die Kandidaten der Piratenpartei informieren kann. Dieses ist noch nicht vollständig gefüllt findet man aber bereits hier: http://kandidaten2013.de

Um Profile von Kandidaten in das WordPress von Gliederungen oder Ähnlichem direkt einbinden zu können habe ich ein kleines Plugin geschrieben. Dieses ist nun auch auf der Bayern-IT installiert.

Anwendung

Nach der Installation kann man auf Seiten oder Blogpost via Shortcode einfach das komplette Profil eines Kandidaten unter Angabe seiner ID einbinden:

[kandidat]95[/kandidat]

So wird Beispielsweise das Profil von Bruno Kramm (ID=95) eingebunden. Die IDs aller Kandidaten kann man hier einsehen:
http://www.kandidaten2013.de/liste.html

Hier 2 Screenshots, wie das ganze in den Themes Piratenkleider und Scapegoat, welche bei der Piratenpartei sehr verbreitet sind, aussieht. Anpassbar ist das ganze durch CSS, beispielsweise durch das Plugin Header and Footer welches auch auf der dem WordPress-Netzwerk der Bayern-IT installiert ist.

profil_piratenkleider profil_scapegoat

Widget

Außerdem ist ein Widget verfügbar durch welches Kandidaten mit einem kleinen Profilbild, Namen und Art der Kandidatur aufgeführt weden. Verlinkt wir hier auf das komplette Profil auf kandidaten2013.de.

widget_piratenkleider widget_scapegoatwidget_settings

Es kann eingestellt werden wieviele Kandidaten angezeigt werden. Durch kommagetrennte IDs gibt man an welche Kandidaten angezeigt werden sollen. Möchte man eine zufällige Anzeige von Kandiaten haben gibt man einfach mehr IDs als anzuzeigende Kandidaten an. Bei der ID=0 wird irgendein Kandidat aus Bayern angezeigt.

Möchte man also einfach irgendeinen Kandidaten aus Bayern anzeigen nimmt man folgende Einstellungen:

Anzahl angezeigter Kandidaten: 1
Kandidaten-IDs: 0

Möchte man einen der Direktkandidaten aus Roth anzeigen

Anzahl angezeigter Kandidaten: 1
Kandidaten-IDs: 9, 23, 3

Möchte man alle Direktkandidaten aus Roth anzeigen:

Anzahl angezeigter Kandidaten: 3
Kandidaten-IDs: 9, 23, 3

Download und Weiterentwicklung

Ihr könnt euch das Plugin auf Github herunterladen, außerdem sind dort auch die Sources. Über Feature-Requests oder Weiterentwicklungen würde ich mich freuen.

@FONT-FACE, CSS und QR-Code Generator

CSS3 Generator

Wenn Ihr euch, wie ich, bei den „neuen“ CSS3 Effekten noch etwas unsicher seid welche Auswirkungen die einzelnen Parameter auf das Ergebnis haben, so ist der CSS3 Generator perfekt. Hier kann man die Werte einzeln verändern, sieht eine Live-Vorschau und kann sich zudem den generierten CSS-Code per Klick in den Zwischenspeicher laden. Hierbei wird natürlich darauf geachtet, dass die Anweisungen möglichst bei allen Browsern funktionieren, Icons zeigen an ab welcher Browser-Version der Code kompatibel ist.

http://css3generator.

Schriftarten-Konverter und @font-face Generator

Damit das Einbinden von Schriftarten via CSS bei allen Browsern funktioniert benötigt man diese in verschiedenen Datei-Formaten. Der @font-face Generator wandelt das gängige TrueType Format in die Formate .eot, .svg und .woff um stellt diese samt fertigem CSS-Code zum Download bereit. Es ist auch möglich mehrere Schriften in einem Aufwand umzuwandeln. Neben dem Generator gibt es auf der Website aber auch noch haufenweise „font kits“ freier Schriftarten, ebenfalls mit allen Dateitypen und fertigem Code zum browsen und herunterladen.

http://www.fontsquirrel.com/fontface/generator

QR-Code Generator

QR-Codes sind meist quadratische Flächen die man mit mobilen Endgeräten abscannen kann und hinter denen sich dann Texte, Kontaktdaten oder Verlinkungen verbergen. Zum Erstellen dieser Codes gibt es diverse Generatoren ich nutze immer diesen hier, da man hier neben Pixelgrafiken auch Vektoren ausgegeben bekommt. Die häufigste Anwendung finden QR-Codes zum Verlinken von Webseiten, hier gilt es zu beachten, dass der Code detaillierter wird desto länger die URL ist. Daher ist es sinnvoll lange URLs zunächst durch einen URL-Shortener zu kürzen um später Platz zu sparen.

http://qrcode.littleidiot.be/

WordPress Plugin zum Einbinden und Filtern von Inhalten aus externen Websiten

Vor-Vorwort

Dies ist mein erstes WordPress-Plugin. Mir ist bewusst, dass es im Stil „quick & dirty“ geschrieben ist und man vieles hätte besser machen können hierzu auch später noch im Ausblick.

Vorwort

Wir sind gerade dabei die Website des Bezirksverbands Mittelfranken der Piratenpartei neu zu strukturieren. Unsere Vorgabe war es die Inhalte möglichst dynamisch anzulegen und viel zu verlinken um die Pflege der Inhalte, wenn sie denn mal drin sind, gering zu halten. Ein klassisches Beispiel sind die Themen der Piratenpartei. Würde man diese manuell einpflegen so müsste man diese Seiten nach jedem Parteitag aktualisieren. Da ohnehin alles relevante auch im Wiki gepflegt ist haben wir uns überlegt ob es denn nicht irgendeine Möglichkeit gibt diese Inhalte in WordPress einzubinden. Lange Rede, kurzer Sinn: Ich habe nichts gefunden und habe mir daher überlegt dieses Plugin selbst zu schreiben.

Das Plugin

WordPress Plugin zum Einbinden und Filtern von Inhalten aus externen Websiten. Kurz PEFIEW. Das Plugin ermöglicht es durch einen Shortcode beliebige Webseiten durch Regex (Regular Expressions) zu filtern und so bestimmte Inhalte einzubinden.

Die gefilterten Inhalte werden in der Datenbank zwischengespeichert und alle 24h aktualisiert. Sollte die Website beim aktualisieren offline sein wird weiterhin die gespeicherte Version angezeigt. Ist die Website länger als 7 Tage nicht erreichbar geht eine Mail an den Seiten-Administrator. Relative Links werden automatisch in absolute umgewandelt.

Verwendung

$before$after
$url                  = URL der einzubindenden Seite
$pattern (optional)   = Regular Expression zum Filter, falls nicht angegeben wird die gesamte Seite eingebunden
$before (optional)    = String der vor dem gefilterten Inhalt ausgegeben wird
$after (optional)     = String der nach dem gefilterten Inhalt ausgegeben wird

Die Regular Expression ist im Sinne des Parameters von preg_match zu verstehen. Da WordPress Probleme damit hat wenn Parameter in Shortcodes HTML-Elemente beinhalten, und die Parameter hier klassischerweise HTML-Strings sind muss ein kleiner Umweg gegangen werden.  Statt spitzer Klammern (<,>) verwenden wir geschweifte ({,}) und statt Anführungszeichen () verwenden wir °. Das Plugin ersetzt diese Zeichen dann vor dem Parsen und Ausgeben.

Möchte man also eine nach einer Überschrift erster Ordnung mit der id „headline“ parsen und diese als Überschrift zweiter Ordnung ausgeben müsste der Shortcode folgendermaßen aussehen.

Beispiele

Einbinden des Artikels des Tages der deutschsprachigen Wikipedia

Artikel des Tages

Im Inneren des „Bradbury Building“, das als Drehort für Sebastians Wohnung diente

Blade Runner, deutscher Verleihtitel zeitweise auch Der Blade Runner, ist ein am 25. Juni 1982 erschienener US-amerikanischer Science-Fiction-Film des Regisseurs Ridley Scott. Literarische Vorlage ist der Roman Träumen Androiden von elektrischen Schafen? von Philip K. Dick. Dieser wurde später ebenfalls unter dem Titel „Blade Runner“ vertrieben. Der Film, der Elemente des Film noir übernimmt und eine Dystopie entwirft, war bei Kritik und Publikum zunächst kein Erfolg, wurde mit der Zeit aber zum Kultfilm. In der Bundesrepublik Deutschland lief der Film ab dem 14. Oktober 1982 in den Kinos. Bemerkenswert sind das einflussreiche visuelle Design, die detailreiche Ausstattung und die Filmmusik von Vangelis. Überdies bieten einige Themen des Films vielfältige philosophische Deutungsmöglichkeiten. Ridley Scotts erster Hollywood-Film eröffnete das Genre des Cyberpunk für das Kino und machte den Autor Philip K. Dick nach seinem Tod berühmt.  – Zum Artikel …

Einbinden der Präambel unseres Grundsatzprogramms



Ausblick

Dieses Plugin entstand aus der Not aber es tut das was ich will, daher halte ich es für sehr wahrscheinlich, dass ich daran vorerst nicht weiterentwickeln werde. Ich habe es aus diesem Grund auf GitHub geladen und Interessierte zur Mitarbeit auf.

https://github.com/sahne123/Wordpress-Plugin-zum-Einbinden-und-Filtern-von-Inhalten-aus-externen-Websiten.-Kurz-PEFIEW.

Ideen wie man das Plugin verbessern könnte: Einzubindende Inhalte und deren Filter etc. sollten in einem Administrationsmenü durch Textfelder eingespeichert werden. Dadurch erspart man sich die geschweiften Klammern und es ist übersichtlicher. Diese Inhalte sollten dann durch einen Shortcode + ID auf den Seiten eingebunden werden können. Bei diesem Vorgehen könnte man dann auch die Refresh-Rate eines Inhalt und die Warnung für jeden Filter individuell einstellen.

Download

Download von PEFIEW

Neuerungen auf meinem Blog

Hallo,

ich habe nun eine Rubrik Fotos auf der ich zukünftig Bilder von mir einstellen werde. Im Moment sind bereits Bilder vom Sommerfest der mittelfränkischen Piraten und der Demonstration gegen die GEMA-Tarifreform veröffentlicht. Ich nutze hierfür das Plugin NextGEN Gallery.

Außerdem habe setzte ich nun Piwik zur Nutzungsanalyse meines Blogs. Piwik bietet ganz ähnliche Funktionen wie Google-Analytics, ist jedoch OpenSource (läuft somit auf meinem eigenen Hosting) und erlaubt einen Datenschutz-konformen Einsatz in Deutschland.

Automatischer Redirect zu SSL-Proxy bei ALL-INKL

Ich besitze aus finanziellen Gründen keinen eigenen Server, sondern nur ein Hosting Angebot. Ich bin nun schon seit einigen Jahren bei all-inkl.com und bin dort mit dem äußerst guten Support sowie den Leistungen wirklich sehr zufrieden.

Da ich momentan an der Idee des Web 2.1 von @alx42 arbeite wird für mich nun erstmal der angebotene SSL-Proxy interessant.

Da es sich um einen kostenlosen Dienst handelt, sind die Zertifikate natürlich nicht für die eigene Domain ausgestellt. Das bedeutet wenn man nun

https://meineDomain.de

aufruft muss man eine Sicherheits-Ausnahme für das Zertifikat akzeptieren, da die Identität der Domain nicht verifiziert werden kann. Um dem zu entgehen erreicht man seine Domain auch unter folgender Adresse mit gültigem Zertifikat.

https://ssl-account.com/meineDomain.de

Da ich SSL nicht für Projekte mit repräsentativen URLs brauche passt das also sehr gut. Um mir dennoch das ständige Getippe zu ersparen habe ich mir eine .htaccess geschrieben die eine automatische Weiterleitung von

http://meineDomain.de

zu

https://ssl-account.com/meineDomain.de

regeln soll.

RewriteEngine on
#Falls kein HTTPS aufegrufen wurde...
RewriteCond %{HTTPS} off
#...und die Anfrage nicht von der Domain des Proxy kommt
RewriteCond %{HTTP:X-FORWARDED-SERVER} !^ssl-account\.com$ [NC]
#leite weiter auf den Proxy
RewriteRule ^(.*)$ https://ssl-account.com/meineDomain.de/$1 [R=301,L]

Die 2. Bedingung, die besagt der Aufruf darf nicht vom Proxy kommen, ist wichtig da ansonsten eine Endlos-Schleife erzeugt wird.

 

Keep it simple and straightforward

Oder auf deutsch: „halte es einfach und überschaubar“, genau das habe ich mir beim Layout des Blogs gedacht. Ich werde sicher noch ein, zwei Dinge hinzufügen aber für den Start reicht es vorerst.

Status Quo

Ich habe Anfang des Jahres eine Fernstudium zum Bachelor of  Science Informatik an der FernUniversität in Hagen begonnen und bin nun seit dieser Woche im 2. Semester. Momentan wohne ich wieder in der „alten Heimat“ am Brombachsee, sehe mich aber derzeit nach einer Wohnung um. Am liebsten in Erlangen, jedoch sind die Preise dort ziemlich unerschwinglich für mich derzeit. Angeflügelt vom sensationellen Erfolg der Berliner Piraten bin ich nun auch endlich aktiv in der Piratenpartei tätig. Nachdem ich ja schon seit 2009 Mitglied bin hat sich meine Mitarbeit in der „Mitmach-Partei“ bis vor kurzem hauptsächlich durch das Verbreiten von Links ausgezeichnet.

Wenn das Wetter mitspielt gibt es Morgen Abend einen mobilen Infostand der Piraten in Weißenburg! Ich freu mich drauf und hoffe demnächst auch andere Piraten aus der direkten Umgebung kennen zu lernen.

//_sahne