301 Redirects für gelöschte Seiten
Durch neue Möglichkeiten der internen Fehleranalyse war es uns in der letzten Woche möglich, viele 404-Seiten mit 301 Redirects auf existierende Seiten umzuleiten. Neben den internen Analysen halfen uns vor allem die Google Webmaster Tools, dort insbesondere der Bereich Crawl errors. Die Tools werden von Google kostenlos zur Verfügung gestellt - es ist lediglich eine einmalige Verifikation der Websites nötig. Die Probleme können bis zu 2 Wochen zurückverfolgt werden. Neben den aufgetretenen Fehlern werden auch Zusatzinformationen bereitgestellt.
Hilfreich ist z. B. die Aufzählung der verlinkenden Seiten, durch welche es zu 404-Fehler kommt.
![]()
Xmarks - Top 10 Site
SenSEO Firefox Extension - Official Website is a Top Site in Firebug Extensions.
SenSEO - Neue Features
In der neuen Version von SenSEO habe ich die Überprüfung der Keyworddichte anhand von Prozentwerten ersetzt. Statt dessen wird lediglich überprüft, ob die Keywords einige Male im Inhalt der Seite zu finden sind. Die Prozentwerte waren das mit Abstand umstrittenste Feature von SenSEO. Im Netz lassen sich diesbezüglich viele gute Quellen finden (z.B. Aaron Wall, Aarron Walter). Die neue Überprüfung orientiert sich an der Aussage von Matt Cutts zu dem Thema (0:12:40).
Weiterhin ist ein kleines Twitter Gimmick enthalten. Liefert die Bewertung der Seite ein A (mehr als 90 von 100 Punkte) wird ein Link mit einer Twitter-Message angezeigt.
Neue SenSEO Rich Snippet Vorschau
Etwas später als bei Twitter angekündigt, kommt heute der Artikel zur Implementierung der Rich Snippet Vorschau in SenSEO.
Das Feature
Das Google Webmaster Central Blog hat in letzter Zeit immer wieder die Darstellung neuer Mikroformate in den Google SERPs beworben (der offizielle Name ist Rich Snippets). Zu den unterstützen Mikroformaten zählen unter anderem Personen, Ereignisse, Bewertungen oder auch Rezepte. Wie das dann aussehen kann, zeigt sich am Beispiel der Suche nach "thai green mango salad".

Das zusätzliche Bild und die Bewertungs-Skala werden von Google dargestellt, weil die Macher von about.com ihre Rezepte mit speziellen Auszeichnungen versehen haben. Um diesen und anderen Entwicklern im Vorfeld eine Möglichkeit zu bieten, diese Daten zu testen, bietet Google das Rich Snippets Testing Tool als Google Webmaster Tool an. Vor einigen Tagen hatte ich nun die Idee, dieses Tool in SenSEO 1.4.0 zu integrieren. Ein solche Vorschau bietet sich an, da SenSEO als Extension auf On-Page Optimierungen ausgerichtet ist. Läßt man von SenSEO eine Rich Snippet Vorschau der erwähnten Rezept-Seite generieren, sieht diese so aus:

Die Umsetzung
Die Umsetzung der Vorschau basiert im Wesentlichen auf dem Yahoo-Service YQL. Mit YQL ist es möglich, Inhalte einer fremden Seite zu extrahieren und in die eigene Website (oder Extension) zu integrieren. Diese Möglichkeit habe ich genutzt, um von der aktuell im Browser angezeigten Seite im Hintergund eine Vorschau mit dem Rich Snippet Testing Tool zu erstellen und diese in SenSEO zu integrieren. Die gesamte Umsetzung geschieht mit JavaScript direkt im Browser - serverseitige Scripte sind nicht nötig.
Zu Beginn wird ein XHR-Request erzeugt, welcher mit Hilfe von YQL aus dem Google Tool die Vorschau für das Rich Snippet extrahiert:
var req = new XMLHttpRequest();
req.open('GET', "http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20html%20where%20url%3D%22http%3A%2F%2Fwww.google.com%2Fwebmasters%2Ftools%2Frichsnippets%3Furl%3D" + encodeURIComponent(content.window.location) + "%22%20and%20xpath%3D'%2F%2Fdiv%5B%40class%3D%22onebox%22%5D'", true);
Als Response wird ein XML-Dokument geliefert, in dem der Code-Schnipsel der aufgerufenen Webseite verpackt ist. Um an diesen Schnipsel zu kommen, nutze ich die XPath-Implementierung des Firefox:
var xmlDoc = req.responseXML;
var nsResolver = xmlDoc.createNSResolver( xmlDoc.ownerDocument == null ? xmlDoc.documentElement : xmlDoc.ownerDocument.documentElement);
var nodesSnapshot = xmlDoc.evaluate('/query/results/node()', xmlDoc, nsResolver, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null );
Um die so entstandenen XML-Knoten in das Dokument integrieren zu können, müssen diese im letzten Schritt in einen String serialisiert werden:
var xmlString = (new XMLSerializer()).serializeToString(nodesSnapshot.snapshotItem(0));
SENSEO.Panel.panelDocument.getElementById('snippet-container').innerHTML = xmlString;
Fazit
Durch diese Lösung erspare ich mir das "Nachprogrammieren" des Rich Snippet Testing Tools. Die Generierung der Vorschau wird somit weiterhin von diesem Tool erledigt. Unterstützt Google in Zukunft neue Mikroformate, werden diese auch sofort in SenSEO angezeigt. Ein Schwachpunkt dieser Lösung ist die Selektion des Code-Schipsels anhand von HTML-Elementen. Sollten die Entwickler von Google den Aufbau ihres Dokuments ändern, könnte die Selektion von einer Minute zur Nächsten scheitern und die Vorschau wäre hinüber. In einem solchen Fall ist eine neue Version von SenSEO mit angepasster Selektion nötig.
Twitter-Multikulti
Die letzten Tage hat es Twitter-Followers gehagelt. Schön zu sehen, dass es bei den SenSEO-Interessierten international zugeht. Allein die Follower der letzen Tage kommen aus Deutschland, USA, Indien, Holland, Israel und Japan.

Auch bei der Alexa-Statistik geht es multikulturell zu:

Die Besucher-Landkarte von Google Analytics zeigt, dass sich die Besucher von www.sensational-seo.com auf die ganze Welt verteilen:
Highcharts - Diagramme mit JavaScript erstellen
Ich habe eben die Bücher Presentation Zen und Slide:ology durchgeblättert. Highcharts ist eine JavaScript-Library, welche es erlaubt, Diagramme in dem Stil zu erstellen, wie er von den Büchern empfohlen wird.
Highcharts is a charting library written in pure JavaScript, offering an easy way of adding interactive charts to your web site or web application. Highcharts currently supports line, spline, area, areaspline, column, bar, pie and scatter chart types.
Rezension: Bekenntnisse eines Redners
Ich habe das Buch von Scott Berkun in der deutschen Übersetzung von Peter Klicman in Vorbereitung auf die International PHP Conference gelesen.
Scott warnt bereits im Prolog davor, dass sein Buch für all jene ungeeignet sein könnte, die nicht immer gern die Wahrheit hören. Dieser Warung läßt er 10 Kapitel folgen, die persönlich und eigenwillig seine Erfahrungen und Erlebnisse als Redner schildern. Daraus leitet er zahlreiche Ratschläge für Neulinge und Profis ab, die sich, wie er, auf ein Podium begeben. Scott nimmt die Angst vor Anfängerfehlern, indem er an Beispielen zeigt, dass Fehler ständig passieren und diese nur allzu natürlich sind ("Vermeiden Sie den Fehler, keine Fehler machen zu wollen."). Er gibt Tipps, wie man mit der Nervosität umgehen kann, die sich in Konfrontation mit einer großen Menschenmenge (auch bei ihm) einstellt. Auf amüsante Weise unternimmt er dabei einen Ausflug zu den Höhlenmenschen und der Organisation unseres Gehirns. Er schreibt über häßliche Kronleuchter und großartig konzipierte Amphitheater, wenn er über schwierige Räume aufklärt. Auch mit der Höhe seines Jahreseinkommens hält er nicht hinterm Berg, und zeigt, was andere in diesem Business verdienen. Der Leser erfährt weiterhin, wie er als Redner den Kontakt zum Publikum aufbaut und aufrecht erhält und welche wichtige Rolle der Aufbau der Präsentation dabei spielt. Amüsante Einblicke in Auftritte beim Fernsehen, persönliche Bekenntnisse des Autors und "handwerkliche" Tipps zu Fernbedienung, Kamera und Mikrofon runden das Buch ab.
"Bekenntnisse eines Redners" ist schonungslos ehrlich, unkompliziert und mit viel Witz geschrieben. Neben zahlreichen Fakten und sehr hilfreichen Einblicken und Ratschlägen erfährt der Leser viele persönliche Einblicke in die Arbeit und das Leben eines Redners. Diese Kombination macht meiner Meinung nach die Stärke des Buchs aus. Scotts Humor hat mir nicht nur einmal irritierte Blicke eingebracht, wenn ich kichernd und glucksend in der Ecke eines Cafes in dem Buch gelesen habe.
Archive
- Oktober 2011 (1)
- Oktober 2010 (2)
- September 2010 (4)
- August 2010 (3)
- Juli 2010 (2)
- Juni 2010 (3)
- Mai 2010 (7)
- April 2010 (4)
- März 2010 (10)
- Februar 2010 (7)
- Januar 2010 (4)
- Dezember 2009 (5)
- November 2009 (3)
- Oktober 2009 (8)
- September 2009 (2)
- August 2009 (9)
- Juli 2009 (7)
- Das Neueste ...
- Älteres ...