Kategorien
Infografiken Inspiration Tipps, Tricks & Tutorials WordPress

Auf einen Blick: So sichern Sie Ihre WordPress-Site [Infografik]

Das wichtige Thema der Absicherung von WordPress gegen Angriffe von außen haben wir hier bei Dr. Web über die Jahre immer wieder behandelt. Dennoch bleibt das Thema aktuell und gewinnt mit der zunehmenden Verbreitung von WordPress als Antrieb weiter Teile des heutigen Internet weiterhin an Bedeutung. In den letzten vier Jahren hat sich die Zahl erfolgreicher Hacks von WordPress-Sites mehr als verdoppelt. Mit der neuen Infografik aus dem Hause WPTemplate bekommen Seitenbetreiber und WordPress-Admins eine Übersicht an die Hand, die auf einen Blick die wesentlichen Problemstellungen erfasst und Hinweise zur Behebung gibt.

wp-security-infographic-large-teaser

Wie und wo wird WordPress gehackt und was kann man dagegen tun?

Zwei Hände voll grundlegender Tipps helfen schon einmal, um die schlimmsten Sicherheitsmängel einer jeden WordPress-Installation weniger schlimm zu gestalten. Darunter finden sich augenscheinliche Selbstverständlichkeiten, wie das zeitnahe Update bei neuen WordPress-Versionen oder das regelmäßige Backup, um im Fall der Fälle wenigstens nicht alles zu verlieren. Aber auch weniger naheliegende, im Sinne von sich selbst aufdrängenden Tipps, wie etwa der Schutz des Verzeichnisses wp-admin oder die Nichtverwendung des Benutzernamens admin gehören dazu.

Die folgende Infografik stellt die wesentlichen Hinweise noch einmal übersichtlich zusammen. Was mir besonders gut gefällt, ist die farbkodierte Darstellung der Tipps und Hinweise, die Aufschluss darüber gibt, in welcher Einflusssphäre die meisten Sicherheitslecks genutzt werden.

Sofort wird augenfällig, dass nicht etwa schwache Passwörter das Hauptproblem beim Betrieb einer WordPress-Seite sind – nur 8 Prozent aller Hacks begründen sich daraus. Wesentlich relevanter sind Plugins und Themes mit über 50 Prozent aller Hacks, wobei die Themes mit 29 Prozent noch einmal ein Stück vor den Plugins liegen.

Die größte einzelne Schwachstelle jedoch ist mit 41 Prozent das Thema Hosting. Hier geht es um Themen, wie Datenbank-Sicherheit, das vorsichtige Setzen von Dateiberechtigungen, das Verstecken von Dateien und Verzeichnissen, die Absicherung des Netzwerks auf Protokollebene und einiges mehr. Bei diesen Themen wird der durchschnittliche Seitenbetreiber regelmäßig professionelle Hilfe in Anspruch nehmen müssen und sollte das auch tun.

WordPress: Fast 70 Millionen Websites weltweit

Einige Infos von eher statistischer Natur runden die Infografik ab. So wird etwa der gezielte Angriff auf WordPress-Sites durch ein 90.000 Server starkes Botnet im April 2013 noch einmal in Erinnerung gerufen. Das WordPress mittlerweile fast 17% aller Websites antreibt, dürfte den meisten Webworkern nicht fremd sein. Mittlerweile nähert sich das System der fantastischen Zahl von 70 Millionen Websites.

Die folgende Infografik ist runterskaliert, um in Dr. Webs Artikelbreite zu passen. Eine größere Variante können Sie sich anschauen, wenn Sie auf die Grafik klicken. Sie werden dann zu WPTemplate geleitet, die die Originalgrafik in ansprechender Größe vorhalten:

wp-security-infographic-large-w640

(Quelle: WPTemplate.com)

Kategorien
Tipps, Tricks & Tutorials WordPress

WP Recycle: Neues Leben für alte WordPress-Plugins

Wenn Sie ein WordPress-Entwickler sind, haben Sie vermutlich an irgendeinem Punkt Ihrer Laufbahn bereits eines oder mehrere WordPress-Plugins erstellt. Vielleicht sind Sie auch nach wie vor aktiv in diesem Bereich? Wie auch immer Ihre persönliche Geschichte aussieht, ein Trend ist klar erkennbar. WordPress-Plugins neigen dazu, im Laufe der Zeit der Vernachlässigung anheim zu fallen oder gänzlich überflüssig zu werden. Häufig genug verlieren Entwickler schlicht die Lust an der Fortentwicklung oder können sie zeitlich nicht mehr leisten.

Generell ist die Halbwertzeit eines Plugin relativ niedrig, mit abnehmender Tendenz. Leider sind es nicht nur diejenigen Erweiterungen, die ohnehin durch WordPress-Core-Änderungen unnütz werden, die geringe Lebensdauern aufweisen. Auch an sich wertvolle Erweiterungen dümpeln teilweise vor sich hin. Heute stellen wir Ihnen daher einen neuen Service vor, der es sich zur Aufgabe gemacht hat, „schützenswerte“ Plugins zu retten und zu neuem Leben zu verhelfen: WP Recycle von PluginChief

Was WP Recycle verspricht

Das WordPress Plugin-Verzeichnis ist voller als voll. Plugins über Plugins tummeln sich in nahezu unüberschaubarer Vielfalt. Leider sind darunter sehr viele, die keiner aktiven Entwicklung mehr unterliegen. Sie werden weder fortentwickelt, noch gepflegt, noch unterstützt. Es ist Sache des Nutzers, diese Plugins zu erkennen und zu ignorieren. Fachlich versierte Anwender werden damit keine Probleme haben. Weniger versierte Anwender zerschießen sich im Zweifel ihren Blog, zudem belegen die verlassenen Plugins dennoch Platz im Repository, machen den Marktplatz unübersichtlich und ziehen das Ansehen insgesamt herunter.

WP Recycle tritt an, das zu ändern und will alten, verlassenen, nicht mehr funktionierenden oder aus sonstigen Gründen vernachlässigten Plugins neue Perspektiven eröffnen. Alles, was Sie tun müssen, ist das Plugin an WP Recycle zu übermitteln.

Wie man das Plugin in die Obhut von WP Recycle übergibt

Die Übergabe ist einfach: Sie wechseln auf die Website des Programms, wo Sie ein simples Einreichungsformular vorfinden. Hier tragen Sie die wesentlichen Informationen zum Plugin ein, etwa die letzte als kompatibel bekannte WP-Version oder ob es sich um ein kostenloses oder kostenpflichtiges Tool handelt. Plugin-Ersteller können angeblich bei Bezahl-Plugins auf Umsatzbeteiligung hoffen. Einreichen kann übrigens jedermann, dazu muss man nicht der Autor des Plugins sein.

Gesetzt dem Fall, das Plugin wird in das Recycling übernommen, so stellt PluginChief neben der Revitalisierung auch den zukünftigen Support sicher.

Wo die Grenzen des Angebots liegen

Natürlich wird nicht jedes eingereichte Plugin auch in das Programm übernommen. PluginChief sagt dazu:

We will look over every plugin submitted and do whatever we can to address it, but we can not guarantee we can get into every plugin and offer it on PluginChief.

Sicherlich ist es verständlich, dass nicht jedes Plugin revitalisiert werden kann. So ergibt es etwa keinen Sinn, ein Plugin für – sagen wir – Post-Formate wieder gangbar zu machen, wo diese Funktionalität heutzutage zum Kern des WordPress-Featuresets gehört. Auch schlecht programmierte oder durch weit bessere Plugins repräsentierte Funktionalität wird kaum Chancen haben, sich über WP Recycle neu zu etablieren. Vereinfacht ausgedrückt, wird WP Recycle sich auf die Rettung „lohnenswerter“ Plugins konzentrieren. Das sind etwa solche, die über eine außergewöhnliche Code-Basis verfügen oder Funktionen anbieten, die immer noch stark nachgefragt sind. Auf den Punkt gebracht wird es sich dabei in allererster Linie um Plugins handeln, die von ihren jeweiligen Autoren aus Lust- und/oder Zeitgründen abgegeben werden.

Wird WP Recycle zum Erretter des WordPress Plugin-Verzeichnisses?

In der Redaktion sind wir geteilter Ansicht. Die einen halten WP Recycle für das Beste seit Bier in Dosen und glauben, auf diese Weise bestünde eine realistische Chance, das Plugin Directory zu entrümpeln und wieder in Gänze attraktiv zu gestalten. In der Tat ist es derzeit wohl so, dass man als versierter Anwender eher nicht direkt im Repository nach Plugins sucht, sondern über die Community, Blogs, Magazine und Empfehlungen kommt.

Die anderen halten WP Recycle für einen müden Versuch des PluginChief, Aufmerksamkeit auf das eigene Portfolio zu lenken. Nachdem die Zugangsbeschränkungen bei WP Recycle eher dem Gusto des Betreibers unterliegen und keineswegs objektiv nachvollziehbar offen liegen, ist der Willkür Tür und Tor eröffnet. Das ist auch nachvollziehbar, denn die allermeisten Plugins sind nicht etwa Perlen, die es zu erretten gilt, weil der Autor keine Zeit mehr hat, die Entwicklung selber sicher zu stellen. Die allermeisten nicht mehr in zu erwartender Weise funktionalen Plugins sind zu Recht in diesem Zustand. Da bräuchte es nicht ein Programm wie WP Recycle. Da bedürfte es lediglich eines beherzten Löschers, der bereit und berechtigt ist, das Repository auszumisten. Denn auch gute, aktuelle Plugins gibt es in ausreichender Zahl. Ebenfalls nicht unkritisch erscheint die Tatsache, dass Plugins durch jedermann eingereicht werden können. Was, wenn ich das als Ersteller gar nicht will? Wie ist der Rückkanal? Da ist Klärungsbedarf…

Was sagen Sie dazu? Ist WP Recycle ein Projekt mit Potenzial oder wird es in Kürze ebenso vor sich hindümpeln wie eine Vielzahl der Plugins im WordPress Directory? Wie empfinden Sie das WordPress Plugin-Verzeichnis? Angestaubt und voller Ladenhüter oder erste Anlaufstelle für jeden Bedarf?

Link zum Beitrag:

(sbu/dpe)

Kategorien
Tipps, Tricks & Tutorials WordPress

Bitcoin: WordPress jetzt mit Unterstützung für das gefährlichste Open Source Projekt aller Zeiten

Pay another way: Bitcoin. So harmlos kündigt WordPresser Andy Skelton die sofortige Einführung der Digitalwährung Bitcoin als Bezahloption auf WordPress.com an. Damit wolle man allen Menschen weltweit den gleichen Zugang zu den kostenpflichtigen Zusatzangeboten der Plattform WordPress bieten. Es gäbe schlicht zu viele Blockaden bei traditionellen Kreditkarten-Unternehmen und der eBay-Tochter PayPal…

Bitcoin: Dateien für Zahlvorgänge

Die Begründung Skeltons ist einleuchtend. PayPal blockiere den Zugriff auf das Bezahlsystem in über 60 Ländern weltweit, Kreditkarten-Unternehmen seien nicht viel besser. In manchen Ländern seien Bezahlverfahren dieser Art aus politischen Gründen blockiert, in anderen wegen hoher Betrugsraten. Das könne jedoch nicht dazu führen, dass man sich bei WordPress.com damit zufrieden gebe und den Status Quo akzeptiere. Vielmehr sehe man es geradezu als Verpflichtung an, auch Bloggern in Haiti, Äthiopien oder Kenia den freien Zugang zu allen WordPress-Angeboten zu ermöglichen. Freies Netz für freie Menschen, quasi…

Zu Bitcoins habe ich in der Vergangenheit einen ganzen Beitragsreigen geschrieben. Ich habe versucht, am Ende des Artikels eine vollständige Liste anzufügen. Ich bitte daher um Verständnis, dass ich an dieser Stelle keine Grundlagen zu Bitcoins vermittele. Das können Sie alles aus den unten gelisteten Beiträgen erfahren.

Im Titel schreibe ich, WordPress unterstütze nun „das gefährlichste Open Source Projekt aller Zeiten“. Diese Charakterisierung stammt nicht von mir. So bezeichnet Investor Jason Calacanis Bitcoins. Er geht sogar noch einen Schritt weiter und nennt die Digitalwährung das „vielleicht gefährlichste Technologie-Projekt seit der Erfindung des Internet selbst“. Das begründet sich aus der Natur der Digitalwährung. Es kennt keine zentralen Stellen, funktioniert Peer-to-Peer innerhalb von Sekunden, kann nicht getrackt und somit auch nicht besteuert werden. Das macht die Währung für staatliche Stellen extrem gefährlich, mindestens unerwünscht. Beispiele für die kreative Nutzung, aber auch bereits realisierte Risiken zeigte ich in verschiedenen weiteren Beiträgen.

Internet-Enthusiasten sind grundsätzlich begeistert vom Bitcoin-Konzept. Was kümmert mich das funktionierende Staatengefüge, ich will frei zahlen und kaufen von wem, wo und was ich will. Auf diesen Standpunkt kann man sich stellen, demokratische Prozesse müssen letztlich ausformen, welche Regularien greifen können sollen.

Wieso WordPress Vorstoß nicht ganz unproblematisch ist…

Was mir an der Ankündigung Skeltons nicht gefällt, ist, dass sämtliche bestehenden Probleme rund um das Thema Bitcoin nicht im Ansatz zur Sprache kommen. Skelton tut so, als wäre dieser Schachzug kleinerer Natur. So, als würde man neben Euro nun auch Dollar als Währung akzeptieren. Auf diese Weise suggeriert er Millionen Menschen, die sich bislang nicht mit Bitcoins befasst haben, es handele sich um eine stabile, sichere und empfehlenswerte Bezahlmethode. Das ist mindestens fahrlässig.

Er geht sogar noch einen Schritt und beschreibt, um wieviel einfacher die Bezahlung doch im Vergleich zur Verwendung einer Kreditkarte ist, macht mithin regelrecht Werbung für Bitcoins. Sogar auf die entstehenden Wartezeiten bei der Zahlungsbestätigung verzichtet WordPress, so dass eine Zahlung mit Bitcoins innerhalb von Sekunden erledigt werden kann.

Ich frage mich, wieso Automattic das tut? Sicherlich, hier werden demokratische Urkonzepte in den Vordergrund geschoben. Man sei zu 100% Open Source und unterstütze deshalb andere Open Source Projekte quasi aus genetischer Disposition heraus. Zudem wolle man auch den Äthiopiern freien Zugang zu allen Optionen geben.

Andererseits: Nanu? Der Äthiopier und andere Bewohner von Staaten mit beschränkten Zahlsystemen können doch bereits jetzt kostenlos einen WordPress-Blog betreiben. Sicher, sie können die Werbeanzeigen nicht rauskaufen oder das Design völlig frei bestimmen. Hierzu bedürfte es der sog. Upgrades, die sich WordPress.com bezahlen lässt. Aber, mal im Ernst, glaubt jemand, dass gerade diese Funktionen den Blogger aus betroffenen Staaten überhaupt interessieren, geschweige denn ihn vor Neid erblassen lassen?

Darüber muss sich auch Automattic im Klaren sein. Und unter diesem Gesichtspunkt bekommt die Einführung von Bitcoins einen ganz anderen Beigeschmack. Will da jemand mit einer millionenstarken Nutzerschaft jemand anderem zeigen, wo der Hammer hängt? Gut möglich, aber verantwortungslos angesichts der nach wie vor ungelösten, großen Probleme der Digitalwährung.

Links zum Beitrag:

Hintergrundinformationen zu Bitcoins:

  • Bitcoin: Das gefährlichste Open Source Projekt aller Zeiten? – t3n
  • Kurz-Interview bei Radio Fritz – Trackback TRB 230
  • Online-Drogenparadies Silk Road gefährdet Digitalwährung Bitcoins – t3n
  • Bitcoins unter Druck: Inflation und Diebstahl machen Probleme – t3n
  • Bitcoins: Weiter unter Druck durch Botnet Mining und Trojaner Malware – t3n
  • Bitcoins: Größter Handelsplatz Mt. Gox kollabiert, immer noch offline (Update) – t3n
  • Bitcoin for Android: Mobile Payment mit virtueller Währung – t3n
  • Bitcoin-Kurs im freien Fall: Wann schaltet der letzte Miner seinen Rechner ab? – t3n
Kategorien
Tipps, Tricks & Tutorials WordPress

WordPress und die sozialen Netze: Teilen-Buttons in das eigene Theme einfügen

Ohne die berühmten „Teilen“-Buttons kommt heutzutage kaum noch eine Website aus. Unter WordPress kann man hierfür selbstverständlich ein Plugin installieren. Die Auswahl ist geradezu riesig und mit Sicherheit ist das auch die einfachste Lösung. Verantwortungsbewusste Administratoren sollten dabei jedoch stets bedenken, dass mit einer steigenden Zahl an installierten Plugins irgendwann die Performance einer Webseite massiv gedrosselt wird. Die hier thematisierten Teilen-Links lassen sich ohne Plugin realisieren. Wo das geht, sollte man es auch tun. Im folgenden Beitrag gehen wir beide Wege. Im ersten Teil beschäftigen wir uns mit der manuellen Integration der wichtigsten Buttons (Twitter, Facebook und Google+). Im zweiten Teil schauen wir uns ein wirklich gutes Plugin dafür an. In Theme-Dateien rumwerkeln ist immerhin nicht jedermanns Sache…

Der manuelle Teil: „Share This“-Buttons manuell erstellen und in das WordPress-Theme einfügen

Zuerst einmal müssen wir uns den Code der jeweiligen Buttons von den Entwicklerseiten, in unserem Beispiel von Twitter, Facebook und Google+ besorgen. Hierbei ist darauf zu achten, den Button-Code vom Javascript zu trennen, da wir das benötigte JavaScript für eine bessere Performance in den Fußbereich (Footer) der Webseite integrieren werden. Im folgenden Codebeispiel habe ich bereits den Button-Code vom JavaScript getrennt. Diesen Code gilt es in die functions.php des Themes (wp-content/themes/Ihr Theme) einzufügen.

function andys_share_this(){
$content = '';
if(!is_feed() && !is_home() && is_page() ) {
$content .= '<div class="share this">
 <a href="http://twitter.com/share" data-count="horizontal">Tweet</a>
 <div class="facebook-share-button">
 <iframe src="http://www.facebook.com/plugins/like.php?href='.
 urlencode(get_permalink())
 .'&amp;layout=button_count&amp;show_faces=false&amp;width=150&amp;action=like&amp;colorscheme=light&amp;height=21"
 style="width:150px; height:21px;"
 allowTransparency="true"></iframe>
 </div>
 <div class="google-share-button">
 <g:plusone size="medium"></g:plusone>
 </div>
 </div>';
 }
 return $content;
 }

Der obige Code fügt nun die drei Buttons für Twitter, Facebook und Google+ in Verbindung mit dem Code für das JavaScript und den Funktionsaufruf in das Theme ein. Das hierfür benötigte JavaScript fügen wir – ebenfalls per PHP-Funktion – nun automatisch in den Footer der Webseite ein. Kopieren Sie also folgende Codezeilen ebenfalls in die functions.php ihres Themes.

function andys_share_scripts() {
?>
<!-- Share this Scripts -->
<script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>
<script type="text/javascript" src="https://apis.google.com/js/plusone.js"></script>

<?php }

add_action('wp_footer', 'andys_share_scripts');

Öffnen wir nun das style.css unseres Themes, um einige wenige Zeilen CSS zu ergänzen, die dafür sorgen werden, dass unsere Buttons schön nebeneinander erscheinen und keine Elemente der Webseite stören.

.share-this {display: block; margin: 10px 0px;}
.share-this:after { content:"."; display:block; height:0; clear:left; visibility:hidden;}
.twitter-share-button, .facebook-share-button, .google-share-button {float: left; display: inline-block;}

Als nächstes platzieren wir den Funktionsaufruf, also eine kleine Zeile Code, in die Theme-Dateien an die Stelle, an der die Buttons erscheinen sollen. Hierfür bieten sich die Theme-Dateien single.php und page.php an.

<?php echo andys_share_this(); ?>

Geschafft! Sie haben die drei wichtigsten Social Buttons ganz ohne Plugin in Ihre WordPress-Seite integriert. Wollen Sie es bequemer, lesen Sie weiter…

Der automatisierte Teil: Das 2 Klick Social Media Buttons Plugin

Ein wirklich gutes Plugin zum Hinzufügen der Social Media Buttons ist das „2 Click Social Media Buttons“ Plugin für WordPress.

Das 2 Click Social Media Buttons Plugin für WordPress

Natürlich gibt es für den angestrebten Zweck eine Vielzahl weiterer Plugins im WordPress-Repository. Der Vorteil des von mir gewählten Plugins besteht jedoch darin, dass es stets die immer verwirrenderen Datenschutzbestimmungen in Deutschland bedient. Hier kann es herunter geladen werden.

2 Click Social Media Buttons unterstützt derzeit Facebook-Like/Empfehlen, Twitter, Flattr, Xing, Pinterest, t3n, LinkedIn und Google+. Alle Einstellungen werden bequem über einen Optionen-Dialog vorgenommen. Die Buttons aller Dienste lassen sich einzeln an- oder abschalten. Für den Besucher der Seite gestaltet sich die Nutzung etwas ungewohnt. Die Buttons der Dienste erscheinen an konfigurierbarer Stelle, zumeist wird man dafür die etablierte Position unter dem Beitrag wählen. Ein Klick auf den Button aktiviert diesen jedoch zunächst nur und weist den Verwender darauf hin, dass es einen weiteren Klickes bedarf, um tatsächlich die „trackbare“ Aktion des Likens, Pinnens, Twitterns etc. zu tätigen. Ist der Umstand einmal verstanden, wird diese Art der Einbindung unter Ihrer Besucherschaft eher für eine positive Wahrnehmung sorgen.

Fazit:

Mit nur wenigen Minuten Aufwand können sie die wichtigsten Social Media-Buttons zu Ihrem WordPress-Theme hinzufügen, sodass künftig die Artikel ihrer Webseite fleißig in die diversen sozialen Netzwerke verteilt werden können. Welche der beiden Varianten Sie bevorzugen, hängt zum einen von den persönlichen Fähigkeiten, zum anderen von der Zahl der sonstigen Plugins und der Auslastung Ihrer Website ab. Kleinere Blogs mit überschaubarem Traffic und wenigen weiteren Plugins können den bequemeren Weg gefahrlos gehen.

(dpe)

Kategorien
Tipps, Tricks & Tutorials WordPress

WordPress-Themes im Live-Betrieb auf Herz und Nieren prüfen mit Theme Test Drive

Ein neues WordPress-Theme ist gefunden und will aktiviert werden. Viele Blogger betreiben das Suchen und Finden als regelrechten Sport. Ist man aber über das Niveau eines Blogs, den man nur selber und der engste Freundeskreis liest, hinaus, so steht man zwar dem häufigen Theme-Wechsel möglicherweise noch immer positiv gegenüber, vollzieht ihn jedoch nicht so spontan wie zuvor. Was ist, wenn doch nicht alles läuft wie erwartet? Sehen wirklich alle Bereiche des Blogs mit dem neuen Theme so aus wie man sich das vorstellt? Gibt es Übersetzungslücken oder sonstige Probleme? Vladimir Prelovac hilft…

(Bildquelle: Katharina Scherer / pixelio.de)

Theme Test Drive: Theme aktiviert, aber nur für Admins sichtbar

Vladimir Prelovac ist einer der erfolgreichsten WordPress-Plugin-Entwickler die ich kenne. Mittlerweile 26 Plugins mit sechsstelligen Downloadzahlen hat er vorzuweisen. Eines der weniger bekannten ist Theme Test Drive, obschon es im Grunde für jeden WordPress-Selbsthoster ein Must-Have ist.

Wie testen Sie WordPress Themes? Live schalten und schauen was passiert? Oder ganz akribisch in einer eigenen, eigens für Plugin- und Theme-Tests geschaffenen Testumgebung? Gehören Sie zur Gruppe der akribischen Tester in separaten Umgebungen gebührt Ihnen auf jeden Fall schon einmal Respekt. Das ist natürlich genau der richtige Weg. Und so machen wir das hier beim Dr. Web Magazin und seiner großen Schwester, dem Noupe Magazine, ebenfalls.

Man muss sich allerdings darüber im Klaren sein, dass man damit zu einer Minderheit gehört. Die allermeisten Blogger machen sich diese Mühe nicht und, je nach Reichweite, finde ich das auch verständlich. Für die vielen Blogger, die ohne Testumgebung auch ganz gut leben, gehört Theme Test Drive auf jeden Fall zu den Essentialia. Fühlen Sie sich jetzt angesprochen und verwenden Theme Test Drive bislang noch nicht, dann ändern Sie das bitte.

Theme Test Drive ist im Grunde ein ganz simples Tool. Es beschränkt die Sichtbarkeit eines beliebigen installierten Themes auf Administratoren. Haben Sie über den Options-Dialog ein zu testendes Theme aktiviert, so erscheint Ihr Blog in der neuen Optik nur dann, wenn Sie als eingeloggter Administrator darauf surfen. Alle anderen Benutzer sehen weiterhin das ansonsten aktive Theme.

Zur Aktivierung eines Themes begibt man sich nach Installation und Aktivierung des Plugins in das Backend, wo der Optionsdialog unter Design > Theme Test Drive zu finden ist und so aussieht:

Hier wählt man nun unter Usage eines der installierten Themes aus. Das Formularfeld Access Level erlaubt die Eingabe eines Zahlenwertes, der dem Zugriffslevel entspricht, ab dem das gewählte Theme angezeigt werden soll. Standard ist hier 10, was bedeutet, dass lediglich Administratoren das neue Theme angezeigt bekommen. Will man seinen Autoren ebenfalls den Test des neuen Themes ermöglichen, würde man hier etwa den Wert 4 eintragen. In der Regel dürfte die Standardeinstellung ausreichend sein. Mit einem Klick auf Enable Theme Drive wird die alternative Optik mit den genannten Beschränkungen in Kraft gesetzt.

Über URL-Parameter kann man ebenfalls zwischen den installierten Themes wechseln. Lediglich der Name des Theme wird als Parameter übergeben, zum Beispiel so:

http://www.blogmanufaktur.de/?theme=Yoko

So können schnell viele verschiedene Themes im Echtzeitbetrieb durchgezappt werden. Zu beachten ist, dass hierbei keinerlei Zugriffslevel berücksichtigt werden.

Ist man am Ende von der ordnungsgemäßen Funktion des neuen Themes überzeugt, aktiviert man es wie gewohnt über Design > Themes. Innerhalb der Plugin-Options gibt es hierfür keine Funktion.

Fazit: Theme Test Drive von Vladimir Prelovac sollte zum Werkzeugkasten eines jeden WordPress-Selbsthosters gehören. Das gilt sogar für die akribisch in Testumgebungen arbeitenden, denn auch hier kann man mal eben schnell ein Theme antesten wollen, ohne gleich die Testumgebung anwerfen zu müssen.

Kategorien
Tipps, Tricks & Tutorials WordPress

WordPress: FancyBox-Lightbox manuell in das eigene Theme integrieren

Heute beschäftigen wir uns mit der Frage, wie sich das großartige Lightbox-Plugin fancyBox for jQuery in ein WordPress-Theme integrieren lässt und zwar, ohne dafür ein eigenes WordPress-Plugin zu verwenden. Die fancyBox ist eines der populärsten jQuery Lightbox Plugins überhaupt und liegt mittlerweile in der Version 2.1.0 vor. Tolle Effekte, leichte Konfigurierbarkeit, die Möglichkeit alle gewünschten Dateiarten (HTML, iframe, Bilder, Videos) einbinden zu können und die Integration in ein WordPress-Theme unterhalb von 10 Minuten, lassen die Sehnsucht nach einem WordPress-Plugin gar nicht erst aufkommen.

Die fancyBox-Lightbox in ein WordPress Theme integrieren

Die fancyBox in ein bestehendes WordPress-Theme integrieren

Zuallererst muss das jQuery fancyBox Plugin heruntergeladen werden. Nach dem Download laden Sie die benötigten Dateien auf Ihren Webserver in die dafür vorgesehenen Ordner hoch. In meinem Fall sind dies die Ordner CSS (die gesammelten CSS-Dateien des Themes) und JS für die JavaScript Dateien. Im weiteren Verlauf dieses Artikels gehe ich von diesen beiden Ordnern als Unterverzeichnisse des eigenen Themes aus. Sind diese noch nicht vorhanden, legen Sie bitte die Ordner css und js an unter: /wp-content/themes/name_ihres_themes/. Im fancyBox Ordner finden Sie diese Dateien im Unterordner „source“.

JavaScript? Gibt hier bis zum Abwinken.

Laden Sie nun bitte folgende Dateien in den CSS-Ordner Ihres Themes:

  1. blank.gif
  2. fancybox_loading.gif
  3. fancybox_overlay.png
  4. fancybox_sprite.png
  5. jquery.fancybox.css

Als nächstes bitte folgende Dateien in den JS-Ordner auf dem Webserver hochladen:

  • jquery.fancybox.js
  • jquery.mousewheel-3.0.6.pack.js

Hilfsfunktionen und Aufruf erstellen

Nun erstellen Sie mit einem reinen Texteditor (z.B. Notepad für Windows) eine leere Datei namens „initialize.js“ und öffnen diese. In diese eben erstellte Datei fügen wir den Aufruf der fancyBox und eine kleine Hilfsfunktion ein, die dazu dient, den Bildern und WordPress-Gallerien die nötigen Klassen zum Aufruf der fancyBox zu geben. Fügen Sie also folgendes in die initialize.js ein:

// fancyBox Hilfsfunktion, versieht die Bildlinks und Gallerien mit den geforderten Attributen.
 jQuery.noConflict();
 jQuery(function(){
 jQuery.fn.getTitle = function() {
 var arr = jQuery("a.fancybox");
 jQuery.each(arr, function() {
 var title = jQuery(this).children("img").attr("title");
 jQuery(this).attr('title',title);
    })
 }
// Supported file extensions
 var thumbnails = 'a:has(img)[href$=".bmp"],a:has(img)[href$=".gif"],a:has(img)[href$=".jpg"],a:has(img)[href$=".jpeg"],a:has(img)[href$=".png"],a:has(img)[href$=".BMP"],a:has(img)[href$=".GIF"],a:has(img)[href$=".JPG"],a:has(img)[href$=".JPEG"],a:has(img)[href$=".PNG"]';
jQuery(thumbnails).addClass("fancybox").attr("rel","fancybox").getTitle();
});
// Wir starten die fancyBox
 jQuery(document).ready(function() {
 jQuery(".fancybox").fancybox();
 });

Laden Sie die initialize.js nun ebenfalls in den Ordner js Ihres Themes hoch. Nun bleibt uns nur noch das Verlinken der benötigten Dateien im Header des Themes. Das erfolgt nun nicht in der header.php des betreffenden WordPress Themes, sondern erfolgt korrekt und vorschriftsgemäß in der functions.php des Themes (/wp-content/themes/Ihr Theme/functions.php). Öffnen Sie also die functions.php mit einem Texteditor oder einer Entwicklungsumgebung Ihrer Wahl und fügen folgende Codezeilen ein:

// Fügt die benötigten JavaScript-Dateien in die header.php ein
 wp_register_script(
 'fancyBox',
 get_template_directory_uri('template_directory') . '/js/jquery.fancybox.js?v=2.1.0',
 array('jquery') );
 wp_enqueue_script('fancyBox');

wp_register_script(
 'mousewheel',
 get_template_directory_uri('template_directory') . '/js/jquery.mousewheel-3.0.6.pack.js',
 array('jquery') );
 wp_enqueue_script('mousewheel');

wp_register_script(
 'initialize',
 get_template_directory_uri('template_directory') . '/js/initialize.js',
 array('jquery') );
 wp_enqueue_script('initialize');

// Fügt das benötigte Stylesheet in die header.php ein
 wp_enqueue_style(
 'fancyBox_css',
 get_template_directory_uri() . '/css/jquery.fancybox.css?v=2.1.0');

Fertig ist die Integration der fancyBox! Diese tolle Lightbox wird nun jedes Bild wunderbar öffnen, wichtig ist nur beim Einfügen der Bilder in den Editor, dass auf das jeweilige Bild gelinkt wird. Galerien werden nun ebenfalls mit der fancyBox anschaubar, wenn man folgende Einstellung nutzt:

Die benötigten Einstellungen der fancyBox für eine WordPress-Gallerie

Fazit: Einfach und schnell haben wir nun die erstklassige fancyBox in ein bestehendes WordPress-Theme integriert. Die fancyBox bietet noch weitere, vielfältige Möglichkeiten der Modifizierung oder Konfiguration. Für weitere Informationen und Konfigurationsmöglichkeiten besuchen Sie bitte die Webseite zu fancyBox.

(dpe)

Kategorien
Infografiken Inspiration Tipps, Tricks & Tutorials WordPress

WordPress auf dem Weg zum Monopol [Infografik]

Ist noch jemand überrascht, wenn er hört, dass diese und jene Website von WordPress angetrieben wird? Nein? Der Grund ist eindeutig. Fast jeder benutzt es. WordPress ist auf dem Weg zum Monopol im Markt der Content Management Systeme. Diese These unterlegt die Infografik gleichen Namens aus dem Hause Expedient Digital Media, die in der beliebten grafischen Darreichungsform die wesentlichen statistischen Daten zur Verbreitung der WP-Plattform zusammenfasst.

WordPress: Mehr als 12 Millionen Downloads der Version 3.3

Schon im Frühjahr des Jahres konnte WordPress von sich behaupten, der Motor hinter mehr als 72 Millionen Websites zu sein. Schätzungen folgend waren in 2011 bis zu einem Viertel aller neu erstellten Websites von WordPress angetrieben. Nahezu jeder zweite der reichweitenstärksten Blogs setzt auf das System aus dem Hause Automattic, das bislang in 98 Versionen vorgelegt wurde.

Insbesondere die Version 3.3 leitete mit bislang 12 Millionen Downloads einen regelrechten Siegeszug ein. Mehr als ein Viertel aller WP-Sites werden unter 3.3 betrieben. Dagegen ist die Bereitschaft, das Update auf die Folgeversion 3.4 zu vollziehen, mit 15% aller Verwender eher zurückhaltend. Je nachdem, welches Land man sich anschaut, liegt WordPress mehr oder weniger drastisch, aber stets weit vor seinen stärksten Mitbewerbern Joomla und Drupal. In den USA liegt WordPress mit 53,8% Marktanteil nicht nur vor Drupal und Joomla mit zusammen rund 16%, sondern auch vor allen anderen, die insgesamt einen Anteil von 30,3% auf sich vereinigen können.

Das WordPress-Ökosystem: Plugins, Hostingplattform, Designer, Developer

Der große Erfolg von WordPress liegt zumindest zum Teil an der hohen Zahl verfügbarer Plugins, die das CMS um Funktionen erweitern, die es von Haus aus nicht mitbringt. Über 19.000 dieser Erweiterungen existieren, die insgesamt über 285 Millionen Mal heruntergeladen wurden. Betrachtet man die Einzelkategorien, so gehören SEO-Plugins zu den mit Abstand meist genutzten Erweiterungen. Mit weitem Abstand folgen Statistik-Erweiterungen, gefolgt von Plugins zur Spam-Bekämpfung und zur Verwaltung/Bearbeitung von Bildern.

Die Hosting-Plattform WordPress.com kann sich ebenfalls sehen lassen. Zwar hat sie den größten Wettbewerber, Googles Blogger noch nicht erreicht, jedoch ist die Veröffentlichung von durchschnittlich einer halben Million Beiträgen pro Tag schon mal eine Hausnummer. In Indonesien, dem Land mit den aktivsten Teilnehmern, belegt WordPress.com Rang 8 der meistbesuchten Websites.

Auch für Entwickler ist WordPress nicht uninteressant. Einer Umfrage unter 18.000 Entwicklern zufolge, wird bei einem WordPress-Projekt ein durchschnittlicher Satz von 50 USD pro Stunde realisiert. Das klingt für deutsche Ohren spontan etwas dürftig. Dafür ist die Zielgruppe groß, das potenzielle Auftraggeberspektrum ist breiter und WordPress ist nicht so aufwändig in der Umsetzung, wie etwa ein Typo3. Zudem kenne ich etliche Entwickler, die schon froh wären, wenn sie diese Größenordnung erreichen könnten.

Die Infografik “WordPress – The Emerging Monopoly in CMS” wurde von Expedient Digital Media für die Website WPTemplate geschaffen. Wir veröffentlichen sie hier mit ausdrücklicher Genehmigung. Ein Klick auf die folgende Grafik öffnet eine größere Version:

(via WPTemplate)

Kategorien
E-Business SEO & Online-Marketing Tipps, Tricks & Tutorials WordPress

WordPress SEO: Suchmaschinenoptimierung für Einsteiger

WordPress gilt schon in seiner Standardkonfiguration als eines der SEO-freundlichsten Content Management-Systeme der Welt. Dennoch gibt es einige sehr wichtige erste Schritte, die Sie bei der Installation von WordPress oder auch im Nachhinein keineswegs versäumen sollten. Investieren Sie also etwas Zeit in die Suchmaschinenoptimierung ihrer WordPress-Webseite. Damit stellen Sie sicher, auf dem richtigen Weg zu sein und viel Traffic auf ihre Webseite leiten zu können.

WordPress SEO für Einsteiger - die ersten Schritte

Dieser Artikel richtet sich an WordPress-Einsteiger, die bereits bei der Installation (oder kurz danach) alles richtig machen wollen.

1. Checke die Privatsphären-Einstellungen

Dies ist die wichtigste Einstellung, die Sie tätigen können. Entweder bereits bei der Installation oder aber bald danach. Diese Einstellung ist wirklich sehr einfach. Allerdings hängt von dieser Einstellung ab, ob Suchmaschinen ihre Webseite in den Index aufnehmen dürfen oder nicht. Diese Einstellung ist im Dashboard unter „Einstellungen / Privatsphäre“ zu finden.

Die WordPress Einstellungen zur Privatsphäre

2. Optimiere die Permalinks

Die Standardeinstellung von WordPress erzeugt  sogenannte „Messy-URLs“.

http://www.hechtmediaarts.com/blog/?p=4711

Das ist nicht nur aus SEO-Gründen unvorteilhaft, auch die Benutzer einer Webseite freuen sich über klar lesbare, benutzerfreundliche URLs. Ein sehr wichtiger Aspekt der Suchmaschinenoptimierung beginnt bei den Permalinks, denn diese sollten bereits die wichtigsten Keywords des Artikels enthalten. Eine optimierte URL sieht zum Beispiel so aus:

http://www.hechtmediaarts.com/2012/08/wordpress-updates-wichtig/

Diese Permalinkstruktur bietet mehrere Vorteile. Zum einen sind die wichtigsten Keywords enthalten und zum anderen kann der Besucher einer Webseite gleich erkennen, wie aktuell der betreffende Artikel ist. Die Einstellungen für die Permalinks finden Sie unter „Einstellungen / Permalinks“.

Die Einstellungen für optimale WordPress Permalinks

Was genau sind jetzt die wirklich optimalen Permalinks für eine WordPress-Installation? Nun, ich persönlich bevorzuge die Einstellung für Monat und Name, damit jeder meiner Besucher sofort erkennen kann, wie aktuell der Artikel ist. Jedoch könnte auch eine andere Einstellung sinvoll sein. Möchte man beispielsweise erreichen, dass die eigenen Beiträge gegebenenfalls in den Google News-Index aufgenommen werden können, so sollte der Permalink unbedingt die ID des Beitrages enthalten. Gut ist auch die Verwendung einer Linkstruktur, die den Begriff /news/ enthält, also zB:

http://www.hechtmediaarts.com/news/2012/08/wordpress-updates-wichtig-45698/

Hier noch ein paar ergänzende Links zum Thema Permalinks:

  1. Optimaler Permalink in WordPress: Erkenntnisse und Empfehlungen
  2. WordPress Codex: Using Permalinks
  3. WordPress Permalink Structure

3. Installiere ein SEO Plugin

Eine der mächtigsten Funktionen von WordPress ist die Möglichkeit, den Funktionsumfang mittels Plugins zu erweitern. SEO-Plugins gibt es in rauen Mengen. Nur einige davon leisten hervorragende Arbeit. Doch wie soll man das Beste für sich herausfinden? Folgende Plugins sind empfehelenswert:

SEO-Plugins: wpSEO

Schweizer Messer für WordPress SEO - das wpSEO Plugin für WordPress

Das  – meiner Meinung nach – beste SEO-Plugin für WordPress ist immer noch wpSEO von Sergej Müller. wpSEO ist zwar nicht kostenfrei, reißt jedoch mit nur 19,99 Euro keine großen Löcher ins Budget. Diesen kleinen Betrag kann man schon mal für optimale Suchmaschinenoptimierung investieren. Hervorragender Support und bereits voraktivierte Einstellungen machen dieses Plugin unschlagbar. Eine Menge bekannter Webseiten wie zum Beispiel t3n.de, Sistrix und nicht zuletzt meine Webseite nutzen dieses Plugin.

SEO-Plugins: WordPress SEO von Yoast

Das WordPress SEO by Yoast Plugin

Ein weiteres gutes SEO-Plugin, welches zum Beispiel auch von Dr. Web genutzt wird, ist WordPress SEO von Yoast. Dieses Plugin ergänzt die SEO-Funktionalität noch um einige kleine Features, wie zum Beispiel Breadcrumb-Navigationen, eine XML-Sitemap usw.

Download des Plugins: WordPress SEO by Yoast.

4. Nutze ein Seo-freundliches WordPress Theme

Es existieren unzählige WordPress-Themes. Nicht alle Theme-Entwickler indes haben dem Thema SEO Beachtung geschenkt. Deshalb sollte man bei der Auswahl darauf achten, dass man eines findet, dessen Entwickler auch SEO-Belange berücksichtigt hat. Etliche kostenfreie Themes kommen zum Beispiel auch mit verschlüsselten Links zu Glückspielportalen oder gar Porno-Seiten. Die Installation eines solchen Themes kann Sie wertvollen Pagerank und die Platzierung in den Suchergebnislisten kosten. Daher sollten nur Themes aus vertrauenswürdigen Quellen installiert werden.

Des Weiteren sollte darauf geachtet werden, dass das verwendete Theme nach aktuellen Webstandards programmiert wurde. Dies heißt zum Beispiel, das die korrekten Tags für Überschriften genutzt werden usw..

Hier einige Dinge, auf die Sie bei WordPress Themes achten sollten:

  1. Der Seitentitel sollte ein <h1> Tag sein
  2. Der Titel eines Artikels sollte ein <h2> Tag sein
  3. Es sollte zumindest auf der Artikelseite eine Breadcrumb-Navigation vorhanden sein
  4. In der Einzelbeitragsansicht sollte es eine Anzeige von ähnlichen Artikeln geben
  5. Das Theme sollte semantisch einwandfrei und fehlerfrei erstellt sein. Prüfen Sie das mit dem W3C-Validator.
  6. Stellen Sie sicher, dass es keine interessanten und nicht sichtbaren Links zu ominösen Seiten gibt. Das Firefox-Addon Firebug kann da eine gute Hilfe sein.

5. Sollte man eventuell in WordPress-Themes bereits eingebaute SEO-Funktionen nutzen?

Ich persönlich mag die Nutzung sogenannter „Build-in SEO Options“ gar nicht. Nicht weil diese Funktionen unbedingt schlecht sind, sondern eher, weil die mühsam aufgebaute SEO-Struktur mit der Aktivierung eines anderen Themes sofort verschwunden ist. Auch wenn sich einige Theme-Provider sehr viel Mühe geben, die eingebauten SEO-Funktionen zu optimieren, so ist es mir persönlich lieber, sie mit allen Themes nutzen zu können. Hier ein kurzes Beispiel eingebauter SEO-Optionen meiner eigenen  Andy’s Themes (und die Deaktivierung der Funktionen auf meiner Webseite für die Nutzung von wpSEO):

Die Deaktivierung der eingebauten SEO-Funktionen zur Nutzung eines externen Plugins

6. Social-Bookmarking Buttons hinzufügen

Social-Bookmarking Buttons sind ein probates Mittel, Ihre Position in den Suchergebnislisten nach und nach zu beinflussen. Immer schwerer fällt die Erzielung eines guten Rankings in den Suchmaschinen, ohne den Einfluss der sozialen Neztwerke. Buttons für Facebook, Twitter und Google+ dürfen also auf keiner Webseite fehlen. Ich persönlich verlasse mich da auf die in meinen Themes eingebaute Version, die genau diese Buttons unterstützt.

Bereits eingebaute Social Network Buttons

Da ich noch keinerlei spezielle Plugins für Social-Network Buttons genutzt habe, kann ich hier keine Empfehlung ausprechen.

7. Schreiben Sie stets guten und aussagekräftigen Inhalt

Content ist immer noch King! Über längere Zeit wird sich allein durch das Verfassen von hochwertigen Artikeln (Inhalt) die Spreu vom Weizen trennen. Das ist auch der beste Weg, um langfristig Traffic auf Ihre Webseite zu bekommen. Schenken Sie also Ihrem Inhalt immer die größte Aufmerksamkeit und recherchieren Sie gut.

Fazit: Wenn Sie diese kleinen, aber doch sehr wichtigen Grundsätze beherzigen und sich nach und nach in die Materie der Suchmaschinenoptimierung einarbeiten, sollte einem Erfolg ihrer Webseite oder ihres Blogs nichts mehr im Wege stehen. Nutzen Sie diese einfachen Möglichkeiten und konzentrieren Sie sich auf guten Inhalt.

(dpe)

Kategorien
Tipps, Tricks & Tutorials WordPress

WordPress manuell: Autorenbox ohne Plugin erstellen

Sehr viele Blogs haben heutzutage eine Autorenbox am Ende ihrer Artikel, um wichtige Informationen über den Autor eines Artikels zu zeigen. Das ist zu einem der größten Trends überhaupt in WordPress-Blogs geworden. In diesem Artikel werden wir zeigen, wie man eine solche Autorenbox relativ einfach ohne Zuhilfenahme eines Plugins erstellt. Zum Erstellen der Box werden wir WordPress-eigene Features benutzen, die zudem noch nach eigenem Belieben erweitert werden können.

Wie man eine Autorenbox ohne Plugin erstellt

Das Grundgerüst unserer Autorenbox

Zur Erstellung und Anzeige der Autorenbox werden wir die Daten aus dem jeweiligen Benutzerprofil auslesen, die wir mittels eines Code-Snippets noch etwas ergänzen, um auch Links zu Social Media-Diensten, wie zum Beispiel Twitter, Facebook und Google+ anzeigen zu können.

Manage WordPress Contact Fields

Dieses Snippet schreiben Sie bitte in die functions.php des betreffenden Themes (wp-content/themes/Ihr Theme).

/**
 * Manage WordPress contact fields.
 * Usage:
require './class.TTT_Contactfields.php';

$TTT_Contactfields = new TTT_Contactfields(
    array (
        'Twitter'
    ,    'Facebook'
    ,    'Xing'
    ,    'Country'
    ,    'City'
    ,    'Latitude'
    ,    'Longitude'
    )
);
 * @author "Thomas Scholz" http://toscho.de
 * @version 1.0
 * @license GPL 2 http://www.gnu.org/licenses/gpl-2.0.html
 */

$TTT_Contactfields = new TTT_Contactfields(
    array (
        'Twitter'
    ,    'Facebook'
    ,    'GooglePlus'
    )
);

class TTT_Contactfields {
    public
        $new_fields
    ,    $active_fields
    ,    $replace
    ;

    /**
     * @param array $fields New fields: array ('Twitter', 'Facebook')
     * @param bool $replace Replace default fields?
     */
    public function __construct($fields, $replace = TRUE)
    {
        foreach ( $fields as $field )
        {
            $this->new_fields[ mb_strtolower($field, 'utf-8') ] = $field;
        }

        $this->replace = (bool) $replace;

        add_filter('user_contactmethods', array( $this, 'add_fields' ) );
    }

    /**
     * Changes the contact fields.
     * @param  $original_fields Original WP fields
     * @return array
     */
    public function add_fields($original_fields)
    {
        if ( $this->replace )
        {
            $this->active_fields = $this->new_fields;
            return $this->new_fields;
        }

        $this->active_fields = array_merge($original_fields, $this->new_fields);
        return $this->active_fields;
    }

    /**
     * Helper function for your theme
     * @return array The currently active fields.
     */
    public function get_active_fields()
    {
        return $this->active_fields;
    }
}

Der Code ergänzt das Userprofil (Benutzer => Dein Profil) um die Möglichkeit der Anzeige der Twitter-, Facebook- und Google+ Profile.

Ein weiteres kleines Code-Snippet liest die Daten aus dem Benutzerprofil aus und sorgt für die Anzeige des Autorenprofils als Box unter dem Beitrag. Auch dieses kleine Snippet schreiben Sie bitte in die functions.php des Themes.

/**
 * WordPress Author Box.
 * Usage: Call this function with <?php andys_author_box(); ?> wherever you want to display the box (posts and/or pages)
 * @author "Andreas Hecht" http://www.hechtmediaarts.com
 * @version 1.0
 * @license GPL 2 http://www.gnu.org/licenses/gpl-2.0.html
 */

function andys_author_box() {
  ?>

<?php if ( get_the_author_meta( 'description' ) ) : ?>
<div>
<?php echo get_avatar( get_the_author_meta( 'user_email' ), apply_filters( 'revothemes_author_bio_avatar_size', 60 ) ); ?>
<div>
<h3><?php echo _e('Author: ', 'andysthemes'); the_author(); ?></h3>
<p><?php the_author_meta( 'description' ); ?></p>
<div>
<?php if ( get_the_author_meta( 'user_url' ) ) :  ?>
<p><a href="<?php the_author_meta('user_url'); ?>"><?php echo _e('Website', 'andysthemes'); ?></a></p>
<?php endif; ?>
<?php if ( get_the_author_meta( 'twitter' ) ) :  ?>
<p>&nbsp;|&nbsp;<a href="https://twitter.com/<?php the_author_meta('twitter'); ?>">Twitter</a></p>
<?php endif; ?>
<?php if ( get_the_author_meta( 'facebook' ) ) :  ?>
<p>&nbsp;|&nbsp;<a href="http://www.facebook.com/<?php the_author_meta('facebook'); ?>">Facebook</a></p>
<?php endif; ?>
<?php if ( get_the_author_meta( 'googleplus' ) ) :  ?>
<p>&nbsp;|&nbsp;<a href="https://profiles.google.com/<?php the_author_meta('googleplus'); ?>">Google+</a></p>
<?php endif; ?>
</div><!-- end .authorsites -->
</div><!-- end .author-description -->
</div><!-- end .author-info -->
<?php endif; // get_the_author_meta( 'description' ) ?>

<?php
}

Dieser wohldurchdachte kleine Schnipsel sorgt für die Anzeige eines Gravatars, der biographischen Angaben und der Felder für Webseite, Twitter, Facebook und Google+.

Im Theme angezeigt wird die Autorenbox jedoch nur, wenn auch das Feld für die biographischen Angaben ausgefüllt ist. Ebenfalls werden auch die anderen Felder nur bei Bedarf angezeigt, also wenn sie ausgefüllt sind.

Das Design der Autorenbox

Damit unsere neue Autorenbox schick aussieht, bedarf es eines gewissen Styling. Also fügen wir noch einige Zeilen CSS der style.css hinzu (wp-content => themes => Dein Theme => style.css) unseres Themes hinzu.

/* Author Info Box */
.author-info {
    position: relative;
    background: #f2f2f2;
    border: 1px solid #ddd;
    padding: 10px;
    margin: 20px 0px;
    border-radius: 4px;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
}
.author-info img.avatar {
    float: left;
    padding: 3px;
    border: 1px solid #ccc;
    position: relative;
}
.author-info .author-description {
    padding-left: 80px;
}
.author-info h3 {
    margin: 0px 0px 5px 0px;
    font-size: 14px;
}
.author-info p {
    margin: 0px;
    font-size: 12px;
    line-height: 1.4em;
    color: #555;
}
.authorsites p {
    float: left;
    margin-top: 5px;
}

Autorenbox in das Theme einfügen und aufrufen

Als abschließende Arbeit bleibt nur noch der Aufruf der Autorenbox an der richtigen Stelle im Theme. Hierzu öffnen wir die single.php (wp-content / themes / Dein Theme => single.php) und suchen folgende Stelle:

<?php the_content(); ?>

Bei einigen Themes kann sich dieser Tag durchaus auch in einer anderen Datei befinden, wie zum Beispiel loop.php oder content-single.php. Wo genau man suchen muß, hängt vom jeweiligen Theme ab, jedoch ist ein kurzes Studium der single.php immer aufschlussreich.

Haben wir den Content-Tag gefunden, wird nun genau darunter der Tag eingefügt, der für den Aufruf der Autorenbox sorgt:

<?php andys_author_box(); ?>

Mit diesem Tag lässt sich die Autorenbox an jeder beliebigen Stelle im Loop aufrufen, oder auch in anderen Dateien wie der page.php, die für die Darstellung der Seiten zuständig ist. Der folgende Screenshot zeigt, wie das Benutzerprofil ausgefüllt werden muss.

So wird das ergänzte User-Profil ausgefüllt

Unsere fertige Autorenbox sieht nun wie folgt aus:

Fazit

Mit relativ wenig Aufwand und vor allem ohne Plugin haben wir nun eine professionell aussehende Autorenbox geschaffen, die einem Blog den letzten Schliff geben kann.

(dpe)

Kategorien
Tipps, Tricks & Tutorials WordPress

Performance-Turbo einschalten: WordPress-Webseiten richtig schnell machen

WordPress kann von Haus aus nicht gerade als schnell bezeichnet werden. Andere Content Management Systeme ,wie zum Beispiel Textpattern, sind dagegen bereits unoptimiert richtig schnell. Seit 2010 ist die Ladegeschwindigkeit einer Webseite ein offizieller Rankingfaktor. User erwarten schon immer schnelle Webseiten. Daher lohnt es sich, hier kräftig zu optimieren. Bereits wenige Änderungen bringen einen gewaltigen Performanceschub. In diesem Artikel befassen wir uns mit einigen On-Page Optimierungen. Das sind Optimierungen, die nicht direkt auf dem Serverbetriebssystem gemacht werden müssen.

WordPress-Webseiten richtig schnell machen

Der Ausgangszustand

Um den Ausgangszustand zuverlässig zu testen, bieten sich mehrere Möglichkeiten an: Arbeitet man mit Firefox, kann man die Add-ons Firebug und YSlow installieren. Nach der Installation dieser beiden Add-ons klickt man einmal rechts auf die zu untersuchende Webseite, dann auf „Element mit Firebug untersuchen“. Anschließend klickt man im sich öffnenden Fenster oben auf „YSlow“ und im Anschluss auf „Run Test“.

Starte den Performance Test mit YSlow

Sollten Sie Firefox mit diesen zwei Add-ons nicht nutzen wollen, so können sie auch online über Googles PageSpeedInsights den Performance-Test machen.

Die Basics

Optimieren wir zuerst die „kleinen Dinge“, die jedoch einen großen Performanceschub bringen.

CSS Dateien zusammenfassen

Jede geladene Datei erzeugt eine Server-Anfrage (HTTP-Request) und ein Browser kann im Schnitt zwischen zwei bis vier Anfragen pro Domain gleichzeitig bearbeiten. Wenn jedoch zu viele Dateien gleichzeitig geladen werden müssen, verlangsamt das den Seitenaufbau. Fassen wir also zuerst einmal alle CSS-Dateien zu einer einzigen zusammen.

Wir können dies zum Beispiel mittels @import lösen, indem wir alle CSS-Dateien in eine einzige importieren.

Per @import CSS-Dateien zu einer einzigen bündeln

Die zweite Möglichkeit ist das automatische Zusammenfassen der Dateien mittels eines Plugins, worauf ich etwas später noch zurückkommen werde. Nachdem wir nun die CSS-Dateien zusammengefasst haben, geht es an die Komprimierung der Datei. Eine Komprimierung des CSS hat den Vorteil, dass sich die Dateigröße wesentlich verringert und die Datei daher schneller geladen werden kann. Ich bevorzuge für das manuelle Komprimieren den CSS-Kompressor von Sergej Müller.

Der CSS / JavaScript Kompressor von Sergej Müller

Ich würde immer die Einstellung „powerful compress“ wählen, weil man mit dieser Einstellung bis zu 80% und mehr an Dateigröße einsparen kann. Zuvor erstellen Sie bitte immer ein Backup der Datei, da man im Anschluss das CSS sehr schlecht lesen kann.

Die CSS-Dateien findet man übrigens entweder in der header.php des Themes (wp-content => themes => Dein Theme) oder in der functions.php des Themes (selber Pfad). Hat man Plugins aktiviert, die eigene CSS-Dateien benötigen und referenzieren, so ist die hier beschriebene Vorgehensweise nicht zu empfehlen! Man würde schlichtweg nicht alle Dateien erwischen oder hätte ein Problem beim nächsten Plugin-Update. Weiter unten zeige ich eine Lösung auf.

JavaScript Dateien zusammenfassen und in den Footer bringen

Der nächste Schritt ist das Zusammenfassen aller JavaScript-Dateien zu einer einzigen. Auch hier erstellen Sie bitte zuvor wieder ein Backup. Beim Komprimieren des JavaScriptes sollte man Vorsicht walten lassen. Manchmal funktioniert das Script nach der Komprimierung nicht mehr.

JavaScript gehört in den Footer

Es scheint populär zu sein, das Javascript in den Head-Bereich zwischen <head> und </head> zu platzieren. Klar kann man das machen, und funktionieren tut es auch. Trotzdem ist es suboptimal, denn das sorgt für ein langsameres Laden der Webseite. Das Problem ist, dass das Javascript vor dem Inhalt geladen wird, weil Javascript Priorität geniesst. Platziert man das Javascript hingegen in den Seitenfuß, wird der Inhalt zuerst geladen und dann das Javascript im Hintergrund. Der große Vorteil für den Besucher der Webseite ist, dass sich die Webseite wesentlich schneller aufbaut.

   ...
    <script type='text/javascript' src='jquery.js'></script>
    <script type='text/javascript' src='general.js'></script>
  </body>
</html>

JavaScript und CSS zusammenfassen, komprimieren und platzieren mittels Plugin

Die komfortabelste und beste Art, einzelne Dateien zusammenzufassen und zu komprimieren besteht in der Nutzung eines Plugin. Ich nutze hierfür auf allen meinen WordPress-Webseiten das Plugin W3 Total Cache. Dieses kann nicht nur Dateien zusammenfassen und komprimieren, sondern auch noch die gesamte Webseite zwischenspeichern (cachen), damit sie schneller ausgegeben werden kann.

Das WordPress Plugin W3 Total Cache

Webseite cachen – die Einstellungen

Wo: Performance => General Settings

Die Page Cache Einstellungen des W3 Total Cache Plugins

Cache Einstellungen des W3 Total Cache Plugins

CSS bündeln und komprimieren, HTML komprimieren

Wo: Performance => General Settings

Die Minify Einstellungen des W3 Total Cache Plugins

Wo: Performance => Minify

Die erweiterten Einstellungen des W3 Total Cache Plugins

Diese Einstellungen haben folgendes Ergebnis gebracht:

Die gesamte Webseite wird gecached (zwischengespeichert). Das HTML wird minimiert ausgegeben. Das CSS wird zu einer Datei gebündelt und minimiert. Das JavaScript wird zu einer Datei gebündelt und in den Fußbereich der Seite integriert. Des Weiteren wird die Webseite serverseitig komprimiert (gzip), was W3 Total Cache standardmäßig aktiviert hat. Wer das Plugin nicht nutzen möchte, sollte gzip per .htaccess Datei aktivieren (befindet sich im Hauptverzeichnis der Webseite):

# Wir aktivieren die komprimierte Augabe mod_deflate (gzip)
<FilesMatch "\\.(js|css|html|htm|php|xml)$">
SetOutputFilter DEFLATE
</FilesMatch>

Jetzt wäre auch der richtige Zeitpunkt um die Ladegeschwindigkeit der Webseite erneut zu messen. Zu diesem Zeitpunkt sollte man bereits ein bedeutend besseres Ergebnis erzielen.

Bilder im Inhalt optimiert ausgeben

Bereits im Vorhinein sollten Sie das richtige Grafikformat wählen. PNG (8-bit) und JPG sind immer richtig, testen Sie vorher einmal, welches Format die kleinere Dateigröße ergibt. JPG eignet sich zum Beispiel hervorragend für Fotos, PNG für den Rest (Screenshots).

Schritt 1: Die richtige Bildbreite herausfinden

Blogartikel ohne ergänzende oder erklärende Bilder sind heute nicht mehr vorstellbar. Dennoch gehören Bilder im Inhalt zu den größten Performance-Bremsen überhaupt, sofern sie nicht optimiert sind. Die Bilder sollten immer auf die Breite der Inhaltsspalte zugeschnitten sein. Keinesfalls sollten hier Megapixel große Bilddateien hochgeladen und verwendet werden, nur weil das Theme sie per CSS an die richtigen Abmessungen anpasst. Wie man die richtige Bildbreite herausfindet? Falls Sie Firefox nutzen, klicken Sie einfach rechts auf die Grafik und dann auf Grafik-Info anzeigen.

So zeigt man die Grafik-Info unter Firefox an

Schon sehen Sie an der markierten Stelle wie breit Ihre Bilder sein dürfen.

Hier können Sie die korrekte Bildbreite ersehen

Schritt 2: Die optimale Komprimierung der Bilder

Der nächste und sehr wichtige Schritt ist die optimierte Ausgabe der verwendeten Bilder. Die Dateigröße der Bilder sollte so gering wie möglich ohne Qualitätsverlust sein. Um das zu tun, gibt es verschiedene Möglichkeiten. Ich bevorzuge das Plugin Toolbox. Die Toolbox ist ein Code-Snippets Manager für WordPress und bringt bereits einige nützliche Snippets mit,  zum Beispiel das wirklich gute Snippet Ysmush.it Simple. Dieses geniale kleine Snippet sorgt für die Komprimierung der Dateigröße, ohne die sichtbare Qualität der Bilder zu beeinflussen. Gerade derjenige, der mit vielen Grafiken in den Blogbeiträgen arbeitet, wird von diesem Plugin sehr profitieren.

Das WordPress Plugin Toolbox

Sergej Müller beschreibt seine Toolbox und das darin enthaltene Ysmush.it Simple einmal genauer.

Plugins ausmisten

Nutzen Sie so wenig Plugins wie nötig, denn jedes noch so kleine Plugin ist hungrig nach Ausführungszeit und Speicher. Überlegen Sie daher genau, welche Plugins Sie wirklich brauchen. Den Rest deaktivieren und löschen Sie!

Fortgeschrittene Techniken

Im Bereich CSS Dateien zusammenfassen haben wir gelernt, dass jede geladene Datei einen HTTP-Request (Serveranfrage) erzeugt. Ein Browser kann pro Domain zwischen zwei und vier Anfragen gleichzeitig verarbeiten. Daraus folgt: Der Seitenaufbau einer Webseite müsste wesentlich schneller erfolgen, wenn Dateien von unterschiedlichen Domains geladen werden. Da Grafiken und Bilder eine der größten Performancebremsen sind, lagern wir sie nun auf eine Subdomain für noch mehr Performance aus.

Auslagern der WordPress-Mediathek auf eine Subdomain

Zunächst brauchen wir jetzt eine Subdomain. Passenderweise könnte sie wie folgt heissen: http://media.deine-domain.de. Mit dieser Namenskonvention weiß man sofort, dass sich diese Subdomain um die Medieninhalte kümmert.

Den Ordner der Mediathek umziehen

Nun erstellen Sie per FTP(es) einen neuen Ordner  namens media  auf dem Server und kopieren Sie den Ordner der Mediathek (Pfad: /wp-content/uploads) auf den Desktop (nur den Ordner uploads). Im Anschluss laden Sie den neu erstellten Ordner auf den Server hoch. Achten Sie unbedingt darauf, dass Sie den Original-Ordner uploads nicht löschen. Stellen Sie sicher, dass die erstellte Subdomain nun auf den korrekten Ordner des Server verweist. Jetzt benötigen wir noch den korrekten Serverpfad zur neuen Mediathek. Erstellen Sie hierzu eine PHP Datei names dir.php und kopieren Sie folgenden Inhalt hinein:

<? echo dirname(__FILE__); ?>

Die PHP-Datei kopieren Sie auf den Server in den Ordner media und rufen ihn mit dem Browser auf (http://media.deine-domain.de/dir.php). Den angezeigten Pfad notieren Sie und löschen die Datei sofort wieder vom Server.

Die Änderungen an der Datenbank

Ganz wichtig: Datenbank Backup anlegen!

Über die Datenbankverwaltungsoberfläche phpMyAdmin werden nun die Pfade zur Mediathek auf den neuen Ordner aktualisiert. Dazu wird im Tab SQL folgender Befehl abgesetzt:

UPDATE wp_posts SET post_content = REPLACE(post_content,
'http://deine-domain.de/wp-content/uploads/', 'http://media.deine-domain.de/uploads');

Sollten Sie ein anderes Tabellenpräfix als wp_ verwenden, muss das natürlich im obigen Befehl angepasst werden.

Die Einstellungen im WordPress Backend

Damit WordPress die Bilder finden kann und diese auch an dem richtigen Ort gespeichert werden, müssen Sie noch ein paar Änderungen in der WordPress-Verwaltungsoberfläche vornehmen. Unter Einstellungen => Mediathek => Fotos hochladen findet man die zu ändernden Angaben.

Die zu ändernden Einstellungen der Mediathek

Im oberen Feld tragen Sie den mit der dir.php ermittelten Serverpfad ein, in das untere Feld den kompletten Pfad zu den Dateien. Nach dem Abspeichern sollten Sie ein Bild in die neue Mediathek hochladen, um zu prüfen, dass auch alles richtig funktioniert.

Funktioniert alles korrekt, sollte Ihre Webseite noch etwas schneller geworden sein. Da Google einige Zeit braucht, um zu merken, dass die Bilder umgezogen sind, sollte erst einige Wochen danach der alte uploads Ordner gelöscht werden.

Ranking in der Google Bildersuche

Wenn Sie mit Ihren Bildern in der Google Bildersuche bereits gut gerankt sind, sollten Sie nun weiterführende Maßnahmen treffen, um diese Positionen nicht zu verlieren. Findet Google ein bestimmtes Bild nicht mehr an der Originalposition, so wird dieses Bild aus dem Index gestrichen. Bis die neuabgelegten Bilder wieder an der alten Position im Ranking stehen, kann es unter Umständen Jahre dauern.

Abhilfe schafft hier ein Permanent Redirect 301 für jedes einzelne Bild. Man fügt in die .htaccess nach folgendem Muster die Redirects ein:

redirect 301 /wp-content/uploads/2012/04/wordpress-security1.png http://subdomain.deine-domain.de/uploads/2012/04/wordpress-security1.png

Ich gebe zu, dass es ziemlich lästig werden kann, einen solchen Redirect für jedes Bild zu schreiben. Doch um eine gute Position in der Google-Bildersuche zu erhalten, lohnt es sich, da Google so nach ca. einer Woche die Bilder im neuen Ordner auf der selben Position im Bildranking hat.

Zusammenfassung

Sicherlich könnte man noch mehr machen, um die Performance einer WordPress-Webseite zu erhöhen. Jedoch sollten diese recht einfachen Maßnahmen bereits für einen ordentlichen Geschwindigkeitsschub ausgereicht haben. Das Firefox Plugin YSlow sollte bereits einen Grad A und Google Page Speed einen Score deutlich über 80 festgestellt haben, womit man schon recht zufrieden sein kann.

Links zum Beitrag

(dpe)

Kategorien
Tipps, Tricks & Tutorials WordPress

WordPress: So schützen Sie Ihre Website vor Hackern

Das beliebte Content Management-System WordPress ist in einer Standard-Installation leider nicht als allzu sicher zu bezeichnen. Es ist für einen Hacker geradezu einfach, in die Webseite einzudringen, sie zu verseuchen, als Spamschleuder zu missbrauchen oder ähnliches. Die Unsicherheit fängt bereits damit an, dass WordPress den Benutzernamen als Klasse verwendet. So müssen potenzielle Hacker nur noch das Passwort herausfinden, um die betreffende Webseite zu kapern. Um das zu verhindern, stelle ich im folgenden Beitrag einige einfach umzusetzende, aber sehr sinnvolle und effiziente Tricks vor.

Vorab: Kann es überhaupt absolute Sicherheit geben?

Der Begriff Sicherheit bezieht sich auf ein bestimmtes Szenario und ist dort binär: Entweder ein System ist gegenüber genau diesem Szenario sicher oder eben nicht. Soll heißen: wenn jemand über mehr als eine Methode, sehr viel Erfahrung und beste Software verfügt, wird er es schaffen, Ihre Webseite zu hacken.

Die gute Nachricht ist jedoch, dass die meisten Angriffe gegen WordPress-Webseiten nicht von erfahrenen Hackern, sondern von Bots oder sogenannten Script-Kiddies durchgeführt werden. Und je mehr Maßnahmen Sie gegen das Gehacktwerden ergreifen, desto geringer werden die Chancen, dass die Hacker oder Bots erfolgreich sind.

1. Sicherheit fängt bei der Installation von WordPress an

Folgende Einstellungen in der wp-config.php dürfen auf keinen Fall fehlen:

Die Sicherheitsschlüssel in der wp-config.php

Die Sicherheitsschlüssel in der wp-config.php

WordPress bietet Ihnen auf https://api.wordpress.org/secret-key/1.1/salt/ den Service, diese Keys zu generieren. Nutzen Sie ihn daher, da diese Schlüssel wirklich zur Sicherheit Ihrer Webseite beitragen.

Tauschen Sie den generierten Zeichenblock einfach gegen den Originalblock in der wp-config.php aus.

Das Tabellenpräfix in der wp-config.php

Das Tabellenpräfix in der wp-config.php

Das Tabellenpräfix sollte auf keinen Fall auf dem Standard „wp_“ gelassen werden. Dieser Wert wird nur einmalig zugewiesen, Sie müssen sich daher nicht merken, was Sie eingeben. Je kryptischer der Wert, desto besser. Beispiel: WdFtVXeeDff_wp_

Zugriff von außen auf die wp-config.php verbieten

Damit erst gar nicht die Chance für Hacker entstehen kann, auf diese wirklich wichtige Datei zugreifen zu können, verbieten wir jetzt per .htaccess den Zugriff von außen.

# Zugriff auf wp-config.php verbieten
<files wp-config.php>
Order deny,allow
deny from all
</files>

Übrigens müssen sich .htaccess und wp-config.php im selben Verzeichnis befinden.

Standard-Administrator löschen

Als nächstes sollten Sie den Standard-Administrator admin, der von WordPress bei der Installation angelegt wird, löschen. Denn vom Standard-Admin mit der von WordPress zugewiesenen ID #1 gehen auch die Bösewichter und Bots aus. Die müssten dann also nur noch Ihr Passwort erraten und dann…

Legen Sie als erstes über Benutzer => Neu hinzufügen einen neuen Administrator an, der nicht Admin oder Administrator heißt. Dann loggen Sie sich aus. Anschließend loggen Sie sich mit den neuen Daten wieder ein und löschen den alten Account.

Wählen Sie ein sicheres Passwort

Je populärer die Webseite ist, desto größer stehen die Chancen, gehackt zu werden. Wenn Sie ein schwaches Passwort wählen, machen Sie es den bösen Buben nur noch leichter.

Das Passwort sollte mindestens 7 Zeichen lang sein. Um es sicherer zu machen, verwenden Sie Groß-/Kleinschreibung, Ziffern und Symbole wie ! ” ? $ % ^ & ).

Ich persönlich bin etwas paranoider, meine Passwörter sind 25 Zeichen lang.

Die Autor CSS-Klasse aus den Kommentaren entfernen

Standardmäßig fügt WordPress den Loginnamen als Klasse zu den Kommentaren hinzu (siehe Bild ganz oben). Um das zu verhindern, fügen Sie einfach folgenden Code in Ihre functions.php ein:

// Security: Hide Usernames from Classes

function andys_remove_comment_author_class( $classes ) {
foreach( $classes as $key => $class ) {
if(strstr($class, "comment-author-")) {
unset( $classes[$key] );
}
}
return $classes;
}

add_filter( 'comment_class' , 'andys_remove_comment_author_class' );

Als nächstes sollte noch die WordPress-Version aus dem Headbereich des HTML-Quelltextes entfernt werden, da anhand der Versionsnummer Sicherheitslücken herausgefunden werden können. Folgenden Codeschnipsel schreiben Sie dazu ebenfalls in die functions.php.

// Security: Hide WordPress Version in Sourcecode Head
remove_action('wp_head','wp_generator');

2. WordPress-Installation und Plugins immer zeitnah updaten

Mit der Veröffentlichung einer neuen WordPress-Version steigen auch die Chancen, dass ältere Versionen gehackt werden. Denn mit jedem neuen Release werden die Schwachstellen beschrieben, die mit eben diesem Release gefixt wurden.

Auch Plugins sind immer wieder das Einfalltor für Angriffe. Deswegen achten Sie bitte darauf, WordPress und alle Plugins immer auf den neuesten Stand zu bringen.

Das Script TimThumb.php zur Bildverkleinerung

Das wirklich nutzbringende Script timthumb.php hatte in letzter Zeit einige Sicherheitslücken, die von Hackern brutal ausgenutzt wurden. Aus diesem Grund ist es extrem wichtig, dieses Script immer auf dem neuesten Stand zu halten. Viele kommerzielle und auch nichtkommerzielle Themes nutzen dieses hervorragende Script. Das ist jedoch dem stolzen Besitzer einer WordPress-getriebenen Webseite meist nicht bewusst. Um herauszufinden, ob auch Ihre Webseite dieses Script nutzt, sollten Sie sich das Plugin Timthumb Vulnerability Scanner installieren. Die jeweils neueste Version von TimThumb.php können Sie sich via Googlecode herunterladen.

3. Sichern Sie den Adminbereich ab

Der Adminbereich ist das Herz einer WordPress-Installation. Ist diese Hürde erst einmal genommen, kann ein Hacker alles mit der Webseite anstellen, was er will. Zum Beispiel alles löschen…

Erst vor kurzem wurde der Premium WordPress-Theme Provider woothemes.com gehackt. Die komplette Datenbank sowie alle Backups wurden von den Hackern auf dem Server gelöscht. Lesen Sie hier, wie es woothemes ergangen ist.

Um eine solche Katastrophe zu verhindern, sind nur einige kleine Schritte notwendig.

Nutzen Sie das Plugin „Limit Login Attempts“

Das Plugin Limit Login Attempts bietet Ihnen gleich mehrere Vorteile. Erstens reduziert es die Anzahl der möglichen Login-Versuche, zweitens ändert es die überdetaillierten Fehlermeldungen (bei nicht-erfolgreichen Loginversuchen) von WordPress ab.

Standardmäßig bietet WordPress Ihnen so viele Loginversuche an, wie Sie benötigen. Bei einem Login-Fehler zeigt es Ihnen akribisch auf, ob Benutzername oder Passwort falsch waren. Limit Login Attempts ändert die Fehlermeldung dahingehend, dass nur noch anzeigt wird, dass die Eingabe fehlerhaft war. Es wird jedoch nicht mehr deutlich, was genau der Fehler war.

Die Einstellungen des Limit Login Attempts Plugins

Ein weiterer Vorteil ist, dass das Plugin jeden Hackversuch mit der IP-Adresse, von der der Angriff ausging, protokolliert. Dies kann man anschließend nutzen, um die betreffenden IP-Adressen per .htaccess zu sperren.

Limit Login Attempts speichert die IP-Adressen, von denen Hackversuche ausgegangen sind

Einen fehlerhaften Loginversuch stellt das Plugin nun wie folgt dar:

Darstellung eines Login-Fehlers mit dem Plugin Limit Login Attempts

Schützen Sie den Adminbereich doppelt

Der Adminbereich einer WordPress-Webseite ist das schwächste Glied in der Kette. Wer diese Hürde nimmt, ist in Ihrer Webseite und kann alles damit anstellen, was er will…

Die Idee ist, den Adminbereich mittels eines vorgeschalteten Passwortes bereits zu schützen, bevor er aufgerufen werden kann.

Der Adminschutz mit .htaccess und .htpasswd

Die Einrichtung eines solchen, zusätzlichen Schutzes geht relativ leicht vonstatten.

Als erstes gilt es eine leere .htpasswd Datei zu erzeugen. Hierzu erstellt man mit einem reinen Texteditor eine leere Datei, nennt sie .htpasswd.txt und lädt sie in das Hauptverzeichnis des Servers. Im Anschluss benennt man sie auf dem Server in .htpasswd um und lädt sie auf den heimischen Rechner runter. Nun erzeugen wir mit dem Htpasswd Generator eine Kombination aus Benutzername und Passwort und speichern sie in die .htpasswd. Sie lässt sich mit dem Editor öffnen und speichern. Diese Datei wird nun in das Hauptverzeichnis des Servers zurück geladen.

Nun ergänzen wir die .htaccess Datei, die ebenfalls im Hauptverzeichnis des Servers liegt, mit einigen wenigen Zeilen Code.

<Files wp-login.php>
  AuthName "Admin-Bereich"
  AuthType Basic
  AuthUserFile /pfad/zu/.htpasswd
  require valid-user
</Files>

<FilesMatch "(.htaccess|.htpasswd|wp-config.php|liesmich.html|readme.html)">
  order deny,allow
  deny from all
</FilesMatch>

Wichtig ist, bei dem obigen Code darauf zu achten, dass der korrekte Pfad zur .htpasswd angegeben wird. Nun ist der Administrationsbereich doppelt gut geschützt.

Codebeispiel und Quelle: „Mehr Sicherheit für WordPress durch den Admin Schutz“ (ebiene.de von Segej Müller nicht mehr online)

Zusammenfassung

Durch die Kombination aller oben aufgeführten Maßnahmen haben wir nun eine recht hohe Sicherheitsschwelle erreicht. Ein Eindringen in die WordPress-Webseite wird nur noch wirklichen Könnern und Spezialisten gelingen. Ich hoffe, durch diesen Artikel meinen Beitrag zu einer verbesserten Sicherheits-Philosophie geleistet zu haben.

(dpe)

Kategorien
Tipps, Tricks & Tutorials WordPress

Advanced WP Columns: mehrspaltiger Content im WordPress-Blog

Mehrspaltiger Content ist mit WordPress nicht ohne zusätzliche Plugins zu layouten. Gerade in Designs, die an Print-Magazine erinnern sollen, ist mehrspaltiger Satz jedoch nahezu unverzichtbar. Ganz frisch meldet sich ein neuer Vertreter der Mehrspalten-Plugins im WordPress-Repository. Der Serbe Vladica Savic stellte gestern seinen Vorschlag zum Thema unter dem Namen „Advanced WP Columns“ vor. Advanced WP Columns steht unter der GPL-Lizenz zur kostenlosen Nutzung bereit. Savic freut sich aber jederzeit über Spenden. Wir haben uns das Plugin angeschaut.

Advanced WP Columns: Erstellt Spaltenlayouts und verwaltet sie auch

Savic hat sich viel Mühe gegeben, seinem Plugin einen professionellen Auftritt zu verschaffen. Sogar eine eigene, recht ansprechende Produktwebsite nebst Video-Kurztutorial spendierte er seinem Werk. Auf der Produktwebsite findet sich ein Download-Link, unter dem man Advanced WP Columns herunterladen könnte. Da es im WordPress-Repository ebenfalls verfügbar ist, ziehe ich jedoch den Weg der Installation über das WP-Backend vor.

Hier sucht man unter „Plugins installieren“ schlicht nach dem Namen und installiert den ersten Eintrag in der Suchliste. Nach der Installation muss das Plugin noch aktiviert werden. Nach der Aktivierung findet sich unter dem Menüpunkt „Einstellungen“ ein Zusatz namens „Advanced Columns“. In den Optionen können neben Standard-Startwerten auch Angaben gemacht werden, die für eine optimale Anpassung an das eingesetzte Theme sorgen. Insbesondere lassen sich Klassen vergeben, die dann via CSS referenziert werden können.


Advanced WP Columns: Einstellungen-Dialog im Backend

Sind die Optionen angepasst, was grundsätzlich optional ist, findet sich im WYSIWYG-Editor ein zusätzliches Icon, welches sich beim Hovern als „Advanced Columns Manager“ ausweist. Ein Klick darauf öffnet ein modales Fenster, in welchem man die Zahl der Spalten, die Container-Gesamtbreite in Pixeln und den Spaltenabstand definiert. Darunter finden sich im unmodifizierten Standard Inputfelder für zwei Spalten, sowie ein Feld namens „Selected Plaintext“. Jetzt besteht die Möglichkeit, Content in den entsprechenden Spalten zu erfassen.


Advanced WP Columns: Nur über den WYSIWYG-Editor nutzbar

Das Feld „Selected Plaintext“ ist nur in bestehenden Artikeln relevant, denn auch die können nachträglich mit Spaltensatz versehen werden. Hierzu würde man in einem Beitrag den Text markieren, der mehrspaltig werden soll und danach das Icon für den Columns Manager klicken. Der selektierte Text würde jetzt im unteren Eingabefeld angezeigt und könnte so leicht in die verschiedenen Spalten verteilt werden. Übrigens kann die Zahl der Spalten auch nachträglich geändert werden. Anders als so manch anderes Plugin bestückt Advanced WP Columns Posts nicht mur mit Spaltencontent, sondern verwaltet diesen auch.


Advanced WP Columns: Der Editor, das Herzstück des Plugins

Das Layout wird mittels CSS Inline-Styles hergestellt, was die nachträgliche Entfernung des Spaltensatzes etwas aufwändiger gestaltet. Da sind andere Plugins, etwa Magazine Columns, freundlicher zu wechselhaften Layoutern. Magazine Columns fügt lediglich Tags ein, was den zusätzlichen Vorteil hat, dass das Tagging auch aus dem HTML-Editorfenster heraus möglich ist. Andererseits ist sichtbares Tagging natürlich dann nicht gut, wenn der Kunde und nicht der Experte den Backend-Editor nutzt. Verständlicher für Nur-Schreiber ist sicherlich Advanced WP Columns, speziell dann, wenn es vom Webdeveloper sauber vorkonfiguriert wurde.


Advanced WP Columns: Video-Kurztutorial

Fazit: Advanced WP Columns ist ein zuverlässig arbeitendes, intuitiv bedienbares Plugin, das auch Autoren mit wenig technischem Sachverstand fehlerfrei bedienen können. Wenn man sich auf das Konzept einlassen kann, macht man mit dem serbischen Newcomer nichts falsch.