Neuigkeiten – es darf geshoppt werden
Mal zwischendurch eine kleine Meldung zum Blog. Es gibt mal wieder etwas Neues. Oben im Menü ist ein neuer Punkt namens “Shop” hinzugekommen. Ich habe gestern mal in meinem Amazon Partneraccount einen kleinen aStore, so nennt Amazon seine Custom-Shops, zusammengeklickt.
Die Produkte kommen demnach nicht von mir, sondern von diversen Händlern. Der Shop hier im Blog ist quasi eine von mir getroffene Auswahl an Artikeln aus dem Amazon-Sortiment.
Zu finden gibt es zum einen Artikel, die ich selbst besitze und mit gutem Gewissen empfehlen kann, und zum anderen Artikel, die ich für empfehlenswert und themenrelevant halte.
Wenn ihr etwas kauft, kommen mir davon im Schnitt 5-10% Provision zugute. Mit einem Einkauf über den Shop könnt ihr mich somit gewissermaßen unterstützen. Unter anderem finden sich auch Sony Ericssons LiveView und der TP-Link WR703N Router im Shop, welche ich hier im Blog ausführlicher vorgestellt und behandelt habe.
Im Endeffekt spekuliere ich darauf, dass eventuell der ein oder andere Verkauf im Zusammenhang mit den passenden Artikeln zustande kommt. Mehr als einen Link kostet es mich ja nicht und somit wäre es einfach verschenktes Potenzial.
Sollte es klappen, freue ich mich, über jeden Cent, der als Dank für meine Arbeit zurückkommt. Sollte es nicht klappen, kann ich immerhin sagen, dass ich es probiert habe.
404Checkr – Links automatisch auf Gültigkeit testen
Dieser Artikel ist wieder einmal einer kleinen Eigenkreation gewidmet. Nachfolgend soll es um ein kleines Tool von mir gehen, welche ich, wie in den meisten Fällen, aus der Not heraus geschaffen habe. So war ich letztens auf der Suche nach einer Möglichkeit eine große Liste an Links zu überprüfen und tote Links möglichst einfach zu erkennen.
Die Problemstellung
Spätestens ab 20-30 Links macht das per Hand einfach keinen Spaß mehr und ist mehr als zeitintensiv. Deshalb habe ich ein kleines Programm in C# geschrieben, mit welchem beliebig viele Links auf ihre Gültigkeit überprüft werden können. Das Tool habe ich auf den Namen 404Checkr getauft, wobei sich 404 auf den HTTP-Statuscode 404 bezieht, welcher besagt, dass eine Seite/Datei nicht aufgefunden werden konnte.
Was bietet der 404Checkr
Der 404Checkr kann eine beliebig große Liste an Links verarbeiten. Diese kann entweder von Hand oder per Copy und Paste eingegeben werden. Danach kann ausgewählt werden, mit wie vielen Threads analysiert werden soll. Das heißt praktisch, wie viele Seiten parallel überprüft werden sollen. Der Idealwert hierfür steht immer in Abhängigkeit mit der Internetanbindung.
Weiter kann eingestellt werden, nach wie vielen Sekunden ein Timeout-Fehler erhoben wird. Dies kann nützlich sein, wenn man nur Seiten als “ok” eingestuft haben möchte, die innerhalb einer bestimmten Zeit Antworten. Je nach Anwendungszweck mag eine Seite zwar technisch erreichbar sein, jedoch praktisch unbrauchbar, wenn sie erst nach 15-20 Sekunden antwortet.
Sind diese Einstellungen getroffen, kann die Analyse der Links mit einem Klick gestartet werden. Den aktuellen Fortschritt der Überprüfung hat man anhand eines Ladebalkens sowie einer textbasierten Ausgabe jederzeit im Überblick.
Wenn die Überprüfung abgeschlossen ist, können die Ergebnisse entweder als schlichtes .txt-Dokument oder als .csv-Datei exportiert werden.
Download und Hinweise
Natürlich könnt ihr die Software kostenlos downloaden und benutzen. Solltet ihr sie jedoch kommerziell (also zum Beispiel in eurer Firma), so würde ich mich über eine Kontaktaufnahme oder eine kleine Spende per Paypal freuen.
Download: 404Checkr (v. 1.0.0.0)
Screencast – 404Checkr in Aktion
Quellcode und Entwicklerinfos
Im Gegenteil zu manchen meiner anderen Projekte bin ich diesmal so frei, euch den Quellcode zur Verfügung zu stellen. Wer möchte, kann gerne neue Funktion schreiben oder noch ein bisschen an der Performance arbeiten. Solltet ihr tatsächlich etwas Neues aus dem Projekt aufbauen, würde ich mich über einen Kommentar oder eine Mail freuen. (Man sieht ja immer gerne, was andere noch so für Ideen haben, auf die man selbst nicht gekommen ist. Zudem entstehen manchmal auch wirklich spannende Diskussionen aus solchen Situationen heraus.)
Noch zwei Hinweise, bevor es den Downloadlink für das Visual Studio Projekt gibt.
- Ich sagte, ihr könnt gerne etwas Neues aus dem bestehenden Projekt schaffen. Was ich nicht so gerne sehe, ist, wenn ihr lediglich meinen Namen aus dem Projekt entfernt, euer Logo hinzufügt und das Programm dann als “eure Idee/Erfindung” verkauft. Ich sage das an dieser Stelle bewusst, da ich in letzter Zeit öfter mal derartige Anfragen bekomme.
- Erwartet nicht zu viel. Das Programm ist quasi zwischen zwei Kaffeetassen entstanden. Wenn ihr euch im Code verlauft, kann ich dafür nicht haftbar gemacht werden. ;)
Download: 404Checkr (v. 1.0.0.0) – Visual Studio 2012 Solution
OpenSSH Tutorial – Teil 3: Login mit Public- und Private-Key
Nachdem wir im ersten Teil einen Open-SSH Server aufgesetzt und im zweiten Teil die grundlegende Konfiguration zur Absicherung vorgenommen haben, wollen wir nun im dritten Teil die Anmeldung per Schlüsseldatei (nachfolgend auch “Key”) konfigurieren.
Die SSH-Key Authentifizierung basiert auf dem Prinzip der asymmetrischen Verschlüsselung. Wir benötigen also ein Schlüsselpaar aus öffentlichem (public) und privatem (private) Schlüssel. Der öffentliche Schlüssel wird dann auf dem OpenSSH-Server hinterlegt und der private Schlüssel geht an den Client.
Oberstes Gebot dabei ist es, den privaten Schlüssel wirklich immer geheim zu halten. Kommt jemand anderes in den Besitz des privaten Schlüssels, kann er sich damit auf eurem Server einloggen.
Als kleine Hürde kann man den Private-Key selbst auch noch einmal mit einem Passwort versehen. Dennoch gilt, ist der Private-Key nicht mehr “privat”, so sollte schnellstens dafür gesorgt werden, dass das Gegenstück, der entsprechende Public-Key, vom OpenSSH-Server entfernt wird.
Um ein Schlüsselpaar zu generieren, gibt es mehrere Möglichkeiten. Zwei davon möchte ich nachfolgend weiter erläutern. Eine Möglichkeit ist die Erstellung mittels des Kommandozeilen-Tools “ssh-keygen”. Dieses kommt bei der Installation von openssh mit und ist somit unter Linux verfügbar. Bei dem OpenSSH for Windows Paket, war zum Zeitpunkt meiner Tests, das Tool leider nicht dabei.
Wer lieber mit einer grafischen Oberfläche arbeitet, sollte sich die zweite vorgestellte Möglichkeit ansehen. Mittels des Programms “PuttyGen” lässt sich das benötigte Schlüsselpaar auch ohne Kommandozeile und unter Windows erstellen.
Schlüsselpaar mittels ssh-keygen erzeugen
Eine Möglichkeit ein Schlüsselpaar zu erzeugen ist die Verwendung von ssh-keygen. Dieses Tool ist jedoch leider nicht bei der OpenSSH für Windows Installation enthalten. Entweder besorgt ihr euch also Zugriff auf einen Linux Rechner oder führt ssh-keygen auf dem Linux-Server aus, auf dem euer OpenSSH-Server läuft.
Hinweis: Dies solltet ihr aber nur tun, wenn ihr wirklich sicher seid, dass niemand anderes auf den Server Zugriff hat. Das wäre zum Beispiel bei einem Mediaserver bei euch im LAN der Fall, wenn ihr alle Netzwerknutzer kennt und der Server keinen Internetzugriff hat. Vor allem bei Shared-Server-Umgebungen solltet ihr hingegen Vorsicht walten lassen und den Key lieber lokal/clientseitig generieren lassen.
Um ein neues Schlüsselpaar mit ssh-keygen zu generieren, benötigt ihr folgenden Befehl.
ssh-keygen -t rsa -b 4096
Der Parameter -t gibt hierbei das Verschlüsselungsverfahren an. (Für SSH Version 2 wäre statt RSA, wie hier im Beispiel, auch DSA gültig.) Der Parameter -b gibt die Schlüssellänge in Bits an.
Während der Ausführung des Befehls werdet ihr nach einem Passwort gefragt. Hier gilt es, einen guten Kompromiss zwischen Komplexität und Aufwand für die jeweilige Eingabe des Passworts zu finden.
Wichtig: Zwar besteht auch die Option gar kein Passwort einzugeben, davon ist aber dringend abzuraten. Gebt ihr kein Passwort ein, so genügt einem Angreifer, wie in der Einleitung dieses Artikels beschrieben, lediglich der Schlüssel, um sich auf eurem Server einzuloggen! Vergebt ihr ein Passwort, so muss der Angreifer dieses erst knacken, bevor er sich einloggen kann. Der Zeitrahmen um das Passwort der Schlüsseldatei zu knacken sollte wiederum genügen, um den Public-Key von eurem Server zu entfernen und ein neues Schlüsselpaar anzulegen.
Nach der Generierung des Schlüsselpaars habt ihr nun 2 Dateien erhalten.
id_rsa id_rsa.pub
Die Datei mit der Endung .pub ist euer Public-Key und gehört auf den Server. Falls noch nicht vorhanden legt ihr einen Ordner namens “.ssh” in eurem Home-Verzeichnis an und kopiert die rsa_id.pub Datei in diesen Ordner.
sudo mkdir -p ~/.ssh sudo mv id_rsa.pub ~/.ssh
Abschließend müsst ihr euren Public-Key noch in eine Datei namens authorized_keys einfügen. Dies könnt ihr mit folgendem Befehl tun.
cd ~/.ssh sudo cat id_rsa.pub >> authorized_keys
Schlüsselpaar mittels PuttyGen erzeugen
Wer keinen Zugriff auf einen lokalen Linux-Rechner hat und den Key nicht serverseitig generieren möchte, der kann z.B. auch PuttyGen nehmen. Dies ist ein Schlüsselgenerator aus der Putty-Suite. PuttyGen könnt ihr kostenlos herunterladen. Eine Installation ist nicht nötig.
Nach dem Start wählt ihr im unteren Panel die Länge des Schlüssels in Bits und das Verschlüsselungsverfahren aus. Danach klickt ihr auf “Generate”, um die Schlüsselgenerierung zu starten. Um die Generierung zu beschleunigen, könnt ihr mit der Maus willkürlich auf der PuttyGen-Oberfläche umherfahren. Die Bewegungen werden als Zufallsdaten genommen und in die Berechnung des Schlüssels mit einbezogen.
Ist der Schlüssel erstellt, solltet ihr noch ein Passwort für den Private-Key anlegen. Dies schützt euch wie gesagt bei Diebstahl des Schlüssels. (Zumindest für eine gewisse Zeit.) Das Passwort schreibt ihr einfach in die Felder “Key passphrase” und “Confirm passphrase”, welche nach der Generierung des Schlüssels sichtbar werden.
Nach dem Festlegen des Passworts können Private- sowie Public-Key mittels der beiden Save-Buttons gespeichert werden. Der Public-Key muss nun auf euren OpenSSH-Server übertragen werden (z.B. per USB-Stick, SSH/SCP, FTP etc.).
Einmal auf dem Server angekommen, muss der Key in eine Datei namens “authorized_keys”, die sich in dem Ordner ~/.ssh befinden sollte, geschrieben werden.
Habt ihr noch keine Keys dort gespeichert, so müsst ihr den Ordner erst anlegen.
sudo mkdir -p ~/.ssh sudo mv id_rsa.pub ~/.ssh
Anschließend fügt ihr den Public-Key dann in die authorized_files Datei ein.
cd ~/.ssh sudo cat id_rsa.pub >> authorized_keys
Anpassen der OpenSSH Server-Konfiguration
Im letzten Schritt muss noch die Konfiguration des OpenSSH-Server angepasst werden, sodass dieser den Login per Schlüsseldatei erlaubt. Öffnet hier zu die sshd_config.
sudo vim /etc/ssh/sshd_config
Und ändert die Zeile, die mit “PasswordAuthentication” beginnt, wie folgt ab.
PasswordAuthentication no
Durch diese Einstellung wird der Login per reinem Passwort untersagt und nur noch Nutzer mit Schlüsseldateien können sich einloggen. Somit werden sämtliche Bruteforce- und Passwortlisten-Attacken unbrauchbar.
Um die Änderungen zu übernehmen müsst ihr die sshd_config noch speichern, schließen und dann die geänderten Einstellungen einmal im OpenSSH-Dienst neuladen. Dies geht wie folgt.
sudo service ssh reload
Nun steht serverseitig alles, was wir für den Login mittels Schlüssel-Dateien brauchen. Nachfolgend möchte ich noch ganz kjurz zeigen, welche Parameter bzw. Einstellungen nötig sind, um sich mit einem Client und Schlüssel-Datei auf einem SSH-Server einzuloggen.
Mittels Private-Key und OpenSSH einloggen
Der Login mit einem Private-Key funktioniert sowohl mit OpenSSH als auch mit OpenSSH for Windows. Der benötigte Befehl ist dabei fast identisch mit dem, welchen ich euch im ersten Teil der Artikelserie gezeigt habe. Es kommt lediglich noch ein Parameter “-i” hinzu.
ssh meinbenutzername@meineip -p meinport -i "PfadZuMeinemPrivateKey"
“meinbenutzername” ist der Name des Accounts auf dem SSH-Server, in den ihr euch einloggen wollt.
“meineip” kann entweder die IP-Adresse des Servers sein oder alternativ auch der Hostname.
“-p meinport” ist optional und sollte angegeben werden, wenn ihr den Port geändert habt, auf dem euer SSH-Server läuft. “”PfadZuMeinemPrivateKey” muss je nach Betriebssystem angegeben werden. Unter Windows mit Backslashes und unter Linux logischerweise mit Slashes. Beispiel Windows: “C:\meinekeys\id_rsa”. Beispiel Linux: “~/meinekeys/id_rsa”.
Mittels Private-Key und Putty einloggen
Um sich mit Putty und dem eigenen Private-Key einzuloggen, muss der Private-Key in den Einstellungen von Putty angegeben werden. Dies geht im Menüpunkt “Connection->SSH->Auth”. Jedoch benötigt Putty den Key in seinem eigenen PPK Format. Sollte euer Private-Key also mit ssh-keygen generiert worden sein, so müsst ihr diesen zuerst umwandeln. (Wenn ihr dies schon getan habt könnt ihr den nächsten Absatz überspringen.)
Um den Private-Key in das PPK-Format umzuwandeln, benötigen wir wieder das Tool “PuttyGen”. Nach dem Start von “PuttyGen” kann im Menü über “Conversions->Import key” der Private-Key eingelesen werden. Mittels des Buttons “Save Private-Key” lässt dieser sich dann im PPK-Format speichern.
Wenn ihr nun den Private-Key im PPK-Format vorliegen habt, öffnet ihr Putty. Dort wählt ihr eure Verbindungseinstellungen aus oder gebt neue an und wechselt vor dem Login in den Menüpunkt “Connection->SSH->Auth”. Hier könnt ihr in dem Feld “Private key file for authentication:” den Pfad zu eurem Private-Key angeben. Das war es auch schon. Wenn ihr euch nun per Putty einloggt, wird der Login mittels Key-File vorgenommen.
Fazit
Somit wären wir am Ende der dreiteiligen Artikelserie. Ich hoffe ihr konntet ein bisschen was lernen und euch haben die Artikel gefallen. Wenn ihr noch Fragen habt oder Anregungen für einen weiteren Artikel, dann lasst es mich in den Kommentaren wissen.
Standard-Browser in C# auslesen
Nachfolgend soll es darum gehen, wie man den Pfad zum Standard-Browser unter Windows in C# herausfindet. Dies macht zum Beispiel immer dann Sinn, wenn man eine Datei mittels Process.Start() im Standard-Browser öffnen möchte.
Zwar könnte man davon ausgehen, dass jeder Windowsnutzer auch den Internet Explorer installiert hat und man somit einfach diesen zum Anzeigen von Dateien benutzen sollte, jedoch erhöht es nicht unbedingt das Vertrauen des Users in die eigene Applikation. So wäre zumindest ich als Benutzer meines Programms davon genervt, wenn dieser immer den Internet Explorer anstelle des Firefox, welchen ich als Standard-Browser festgelegt habe, starten würde.
Nun gibt es zwei Möglichkeiten den Standard-Browser in C# zu öffnen. Beide haben Ihre Vor- und Nachteile.
Variante 1 – Process.Start() mit URL als Startpfad
Die einfachste Variante den Standard-Browser zu starten, ist es einfach mittels der Process-Klasse einen neuen Prozess zu starten. Als Startpfad für den Process wird die zu öffnende Url übergeben.
string url = "http://google.de"; Process.Start(url);
Diese zwei Zeilen reichen aus, um die angegebene Url im Standard-Browser zu öffnen. Problematisch wird es jedoch, wenn in der Variable “url” keine gültige Url steht. In diesem Fall kann es zu einer Exception kommen, da das .NET-Framework nicht unbedingt weiß, mit welcher Anwendung der übergebene Parameter gestartet werden soll.
Dies kann zum Beispiel sein, wenn ihr keinen Einfluss auf den Url-Parameter habt und, egal was dort drin steht, die Url oder Datei im Standard-Browser öffnen wollt. Hierfür ist Variante 2 geeignet.
Variante 2 – Den Standard-Browser in C# auslesen
Um in jedem Fall den Standard-Browser zu öffnen und diesen im Zweifelsfall entscheiden zu lassen, ob er die Url/Datei öffnen oder anzeigen kann, ist es nötig den Pfad des Standard-Browser zu kennen. Hierzu könnt ihr folgende kleine Funktion benutzen, die den Pfad des Standard-Browsers aus der Registry ausliest.
private static string GetStandardBrowserPath()
{
string browserPath = string.Empty;
RegistryKey browserKey = null;
try
{
//Überprüfe den Pfad für Windows XP
browserKey = Registry.ClassesRoot.OpenSubKey(@"HTTPshellopencommand", false);
//Wenn kein XP Pfad gefunden wurde, überprüfe den Pfad für Windows Vista und neuer
if (browserKey == null)
{
browserKey = Registry.CurrentUser.OpenSubKey(@"SoftwareMicrosoftWindowsShellAssociationsUrlAssociationshttp", false); ;
}
//Wenn ein Pfad ein gefunden wurde, schneide eventuelle Parameter am Pfad ab
if (browserKey != null)
{
//Entferne Hochkommata
browserPath = (browserKey.GetValue(null) as string).ToLower().Replace(""", "");
//Schneide evtl. Parameter ab
if (!browserPath.EndsWith("exe"))
{
browserPath = browserPath.Substring(0, browserPath.LastIndexOf(".exe") + 4);
}
//Schließe Registry-Schlüssel
browserKey.Close();
}
}
catch
{
//Wenn kein Standard-Browser gefunden wurde, gebe leeren Pfad zurück
return string.Empty;
}
//Gebe Browser-Pfad zurück
return browserPath;
}
Diese Funktion wird nun wieder mittels der Process.Start()-Funktion genutzt. Die Url wird dieses mal jedoch als Parameter und nicht als Stardpfad übergeben.
string url = "http://google.de";
string browserPath = GetStandardBrowserPath();
if (string.IsNullOrEmpty(browserPath))
{
MessageBox.Show("No standard browser found!");
}
else
{
Process.Start(browserPath, url);
}
Fazit
Das war es auch schon. Wenn ihr also sicher seid, dass die Urls in einem validen Format vorliegen, so solltet ihr Variante 1 nutzen. Wenn ihr dies nicht sicherstellen könnt oder vielleicht Dateien in eurem eigenen Format oder mit eurer eigenen Dateiendung öffnen wollt, so ist Variante 2 geeignet. Bei Variante 2 sollte jedoch bedacht werden, dass eure Applikation, je nach User-Kontext, in dem Sie ausgeführt wird, explizit Administrationsrechte benötigt!
Wie geht ihr mit dem “Problem” um? Habt ihr auch eine Lösung, die auf der Registry beruht oder geht ihr vielleicht einen ganz anderen Weg?
Meine Top 7 WordPress SEO Plugins
Gestern war Donnerstag. Das heißt, es gibt mal wieder eine neue Blogparade von webmasterfriday.de. Diese Woche fragt Martin, ob und wenn ja, welche SEO-Plugins wir in unseren Blogs verwenden. Da ich das Thema ganz spannend finde, mache ich mal wieder mit.
Nachfolgend gibt es also meine persönliche WordPress SEO-Plugin Topliste, die ich auch hier auf code-bude.net verwende. Anzumerken ist, dass alle Plugins, die ich verwende, kostenlos verfügbar sind.
All in One SEO Pack
Fast 14 Millionen Blogger können sich nicht irren. (So oft wurde das Plugin im WordPress Plugin Verzeichnis heruntergeladen.) Beim All in One SEO Pack ist der Name Programm. Das Plugin kann eine ganze Reihe an Optimierungen an eurem Blog durchführen. Ich persönliche nutze es nur zur automatischen Generierung von Meta-Tags. [Zum Plugin]
BWP Google XML Sitemaps
Mit BWP Google XML Sitemaps wird das Erstellen der XML-Sitemaps zur Indexierung bei Google ein Kinderspiel. Besonders schön an dem Plugin finde ich, dass nicht nur eine riesige sitemap.xml Datei erstellt wird, sondern eine sitemapindex.xml, die wiederum auf weitere Sitemap-Dateien verweist. So kann eingestellt werden, dass separate Sitemaps für Tags, Kategorien, Seiten, Artikel, etc. erstellt werden. Auch lässt sich einstellen, dass eine Sitemap zum Beispiel maximal X Links enthält. Gibt es mehr Links für diese Sitemap, so wird sie gesplittet und natürlich jeweils in der sitemapindex.xml verlinkt. Und nicht vergessen, die sitemapindex.xml in den Google Webmaster Tools im Menüpunkt “Optimierung->Sitemaps” einzutragen! [Zum Plugin]
Do Follow
NoFollow oder DoFollow? Das ist fast schon eine Glaubensfrage. Das DoFollow Plugin wandelt die automatisch erstellten NoFollow-Links in eurem Blog in DoFollow-Links um. Kurze Nachhilfe: Links, die mit dem NoFollow Tag versehen sind, werden von Suchmaschinen nicht weiter verfolgt. Was habe ich davon? Nichts! Meiner Meinung nach schadet es nicht, wenn eine Suchmaschine die von mir verlinkten Inhalte beachtet und durch meinen Link (als Backlink) eventuell aufwertet. Bringen tut mir das allerdings auch nichts. Wenn jedoch mehr Leute so denken, dann besteht auch die Chance auf mehr Backlinks für den eigenen Blog. Außerdem tut ein DoFollow nicht weh. In dem Sinne – schaut euch das Plugin ruhig mal an. [Zum Plugin]
Lazy Load
Das Lazy Load Plugin ist kein SEO Plugin im klassischen Sinne. Ich liste es hier trotzdem aus folgendem Grund. Das Plugin sorgt dafür, dass Grafiken und Bilder erst (dynamisch per Javascript) nachgeladen werden, wenn der Benutzer in den bestimmten Bereich der Seite scrollt. Bilder, die außerhalb des Sicht- bzw. Scrollbereichs liegen, werden somit erst mal nicht geladen, sondern erst dann, wenn diese in den Viewport (Sichtbereich) gelangen. Dies beschleunigt die Seitenladezeit, je nach Anzahl und Größe der eingebundenen Bilder erheblich. Und die Seitenladezeit soll ja wiederum auch ein Kriterium beim Suchmaschinenranking sein… [Zum Plugin]
Mobile Smart
Das Mobile Smart Plugin bringt eine Browserweiche für mobile Endgeräte mit. Wenn man in seinem Blog bereits ein Responsive Theme einsetzt, also eines, was sich dynamisch an die Größe des Endgeräts anpasst, dann ist dieses Plugin überflüssig. Auf code-bude.net zum Beispiel, habe ich jedoch noch ein nichts responsives Theme im Einsatz, sodass ich eine Lösung für mobile Endgeräte brauchte. Und die heißt Mobile Smart. Im Plugin gibt man ein zweites Theme an, welches statt des Standardthemes geladen werden soll, wenn ein Nutzer mit einem mobilen Gerät auf die Seite kommt. [Zum Plugin]
TagKeywordFinder
Der TagKeywordFinder ist ein von mir selbst entwickeltes Plugin und hilft beim Verschlagworten (Taggen) von Artikeln und Seiten. Normalerweise schlägt WordPress nur Tags vor, die schon einmal im eigenen Blog verwendet wurden. Hier greift der TagKeywordFinder ein. Fängt man an, einen Begriff in das Tag-Feld in WordPress einzutippen, so gleicht mein Plugin diese Eingabe mit Googles Suggest Funktion ab. Das ist auch jene, die im Google Suchfeld genutzt wird. Man bekommt also beim Eintippen der Tags, direkt Vorschläge für weitere Tags, basierend auf den häufigsten Google Suchen. Wer es noch nicht kennt, ist hiermit offiziell aufgefordert, mal einen Blick auf mein kleines Schmuckstück zu werfen! [Zum Plugin]
wpSuggest
Dieses Plugin funktioniert ähnlich meinem TagKeywordFinder und war die gedankliche Vorlage für mein obiges Plugin. Es greift ebenfalls auf die Google Suggest Funktion zu und macht zur Eingabe passende Vorschläge. Jedoch diesmal nicht für die Tags, sondern für die Überschrift einer Seite/eines Artikels. [Zum Plugin]
Und nun die Frage aller Fragen, welche Plugins benutzt ihr? Oder habt ihr euch noch gar keine Gedanken über das Thema gemacht? Über eure Kommentare würde ich mich wie immer freuen!







