Das Putzlowitsch Test- und SEO-Blog

Revierphone-Chart und Image-Map mit Shortcode

Von einigen Nutzern meiner Revierphone-Charts tauchte auch die Frage auf, wie man die URLs der Grafik anklickbar machen kann. Das ist im Prinzip ganz einfach, mit einer image-map. :-)

Eine zum jeweils aktuellen Chart passende Map liegt im selben Verzeichnis wie die Grafik und hat den Namen top-10-map.txt. Dies Datei für Revierphone kann man ganz normal aufrufen und hineinsehen. Es steht ein Imagemap drin. Wichtig ist dabei der Mapname, hier z.B. ‚gcmap-27‘, mit dem die Map von der Grafik referenziert wird.

Revierphone-Map mit WordPress Shortcode

Seit Wordperess Version 2.5 gibt es die Shortcodes mit denen man spezielle Funktionen direkt in den Inhalt einer Seite oder eines Artikels einbinden kann. Ein Beispiel ist der seitdem existierende gallery-Shortcode, mit dem man die Bilder zu einem Beitrag als kleine Galerie im Artikel anzeigen kann.

Aber auch für eigene Erweiterungen ist die Shorcode-API wunderbar und vorallem einfach einsetzbar. Für das Einlesen der Revierphone-Image-Map sind nur wenige Zeilen PHP-Code in der functions.php-Datei des Themes erforderlich:

function plw_get_chart_map( $atts, $content = null ) {
	extract( shortcode_atts( array(
		'name' => null,
	), $atts ) );
	
	if( is_null( $name ) )
		return '';

	$url = "http://chart.hbgf.de/$name/top-10-map.txt";
	$response = wp_remote_get( $url );
	if( is_wp_error( $response ) )
		return '';
	if( 200 != $response['response']['code'] )
		return '';

	return $response['body'];
}
add_shortcode( 'chartmap', 'plw_get_chart_map');

Der Shortcode erwartet den Namen der Map als Parameter name. In diesem Fall ist es ‚revierphone‘, alles klein geschrieben. Falls kein Name übergeben wurde, wird ein Leerstring zurück gegeben.

Dann wird die URL zusammengesetzt und die Map mit der WordPress-Funktion wp_remote_get eingelesen. Die Funktion gibt es erst seit WordPress 2.7, deshalb funktioniert meine Funktion erst ab dieser WordPress-Version. Man vermeidet durch Nutzung das Jonglieren mit den diversen Netzwerkfunktionen wie cURL, Streams und fsockopen. Wenn die Konfiguration stimmt, funktioniert das auch sehr gut, schließlich verwendet WordPress die Funktion selbst für alle HTTP-Requests. :-)

Nach ein wenig gegebenenfalls erforderlicher Fehlerbehandlung wird vom Shortcode-Handler die eingelesene Map zurück gegeben.

Revierphone-Chart mit klickbaren URLs

Um die Image-Map im WordPress-Artikel zu verwenden, muß an der gewünschen Stelle einfach der Shortcode mit dem map-Parameter eingegegen werden. Am besten dirket vor der Revierphone-Chart-Grafik selbst:

[chartmap name='revierphone']
<img src="http://chart.hbgf.de/revierphone/top-10.png" alt="reVierphone Top-10" usemap="#gcmap-27"/>

Wichtig ist, damit es überhaupt funktioniert, beim img-Tag das Attribut usemap. Hier ist der Name der Map so wie im map-Tag angegeben mit einem vorangestellten Doppelkreuz einzutragen, also usemap=“#gcmap-27″.

Und so sieht das dann aus:
[chartmap name=’revierphone‘]
reVierphone Top-10

Viel Spaß :-)

5 Kommentare »

Was bringen Links in Image-Maps?

Html Image Map

Eine verweis-sensitive Grafik (Image Map) ermöglicht es dem Webdesigner nicht nur ein komplettes Bild mit einem Link zu verknüpfen, sondern Teilbereiche des Bildes anklickbar zu machen und mit unterschiedlichen Links zu hinterlegen. Damit bringt es ihm und den Seitenbesuchern schon mal einen Mehrwert an Gestaltungs- bzw. Auswahlmöglichkeiten.

Links im Map für Suchmaschinen interessant?

Es stellt sich mir jedoch die Frage, und diese möchte ich hiermit an Kundige weitergeben, ob die Suchmaschinen diese Links in Maps überhaupt erfassen, berücksichtigen und werten. Ich weiß es ehrlich gesagt nicht. Man könnte nun mal wieder ein Experiment starten, aber vielleicht kennt sich damit ja einer meiner Leser aus und es ist kein großes Geheimnis.

Interessant ist auch die Frage, wie Image-Map und Image aus Sicht der Suchmaschine zusammenwirken. Werden die Alt- bzw. Titeltexte vom Map an das Bild und umgekehrt „vererbt“? Was passiert, wenn ein map quasi unbenutzt in der Luft hängt, also gar nicht von einem Bild mit usemap referenziert wird? Falls das keine Rolle spielt, könnte man damit ja schöne, unsichtbare Linklisten erzeugen. :-)

iPhone4Spiel Top-Ten jetzt anklickbar

Die iPhone4Spiel Top-10-Grafiken sind jetzt per Image-Map anklickbar geworden. Bei der normalen Top-Ten führt der Klick natürlich zur Seite selbst. Bei der Bilder-Top-Ten werden aber nicht die Bilder selbst verlinkt, sondern die Zielseiten, von denen sie referenziert, also wo sie angezeigt werde.

Was bringt das nun? Nicht wirklich viel, aber ich wollte einfach die „programmtechnische Herausforderung“ meistern, zu einem dynamisch generierten Bild auch eine dynamisch generierte Image-Map zu erstellen. :-)

2 Kommentare »