Die mysteriöse Blogrolle

In den vergangenen Tagen habe ich vermehrt Anfragen zu der Blogrolle (siehe rechts unten in der Sidebar) erhalten. Wie mache ich das? Wie baue ich das? Wieso sind die per Zufall drin? Wieso weshalb warum?! Wer nicht fragt bleibt dumm. Und daher möchte ich der Öffentlichkeit natürlich Rede und Antwort stehen. Ich gebe hiermit das Geheimnis preis: Das ist der Code!

<?php
$aBLOGROLL = array(
  "Telagon Sichelputzer" => "http://www.sichelputzer.de",
  "LoungeMix" => "http://loungemix.de"
 );
$aBLOGROLL_RAND = array_rand($aBLOGROLL, 22);
foreach ($aBLOGROLL_RAND as $KEY => $VAL) {
  echo "<li><a class=\"blogroll\" href=\"";
  echo $aBLOGROLL[$aBLOGROLL_RAND[$KEY]];
  echo "\">";
  echo $aBLOGROLL_RAND[$KEY];
  echo "</a></li> ";
}
?>

Das ganze Snipplet wird einfach mit einer include-Funktion aufgerufen. Sehr unsauber, aber dafür äußerst Effektiv, da keine Datenbankabfragen dafür gestartet werden und so insbesondere bei shared-hosting Providern für ein paar wertvolle Millisekunden sprechen. Freut euch - das ist hiermit mein erstes Open Source Snipplet für alle RSS-Süchtigen Blogrollbastler! Bitte erwähnt mein Blog auch ruhig mal bei euch… danke! ;)

Link speichern...

10 Responses to “Die mysteriöse Blogrolle”


  1. 1 Martin Mar 6th, 2007 at 23:44

    Zauberei…

    Seit wann sind denn includes unsauber? Oder meinst du, dass die Blogs von Hand eingetragen werden?

  2. 2 Mike Schnoor Mar 6th, 2007 at 23:53

    Im Prinzip beides… doch eher der Array, denn dieser händische Array ist alles andere als perfekt… alles wirkt für mich eher wie PHP-back-to-the-roots von 2002 ;)

    Wobei sich ja alles eigentlich durch ein komplettes Plugin für Wordpress ersetzen lässt, was aus den Blogroll-Link Werten der Datenbank etwas zaubert. Doch dann hat man DB Last und und und und und…

  3. 3 jimlib Mar 7th, 2007 at 17:12

    Erst mal danke für deine Mühe! ;-) Allerdings funktioniert das bei mir nicht. Es kommt immer diese Fehlermeldung:

    Warning: array_rand() [function.array-rand]: Second argument has to be between 1 and the number of elements in the array in /var/www/html/web53/html/wp-content/themes/default_de/sidebar.php on line 72

    Warning: Invalid argument supplied for foreach() in /var/www/html/web53/html/wp-content/themes/default_de/sidebar.php on line 73

    Was bedeutet das bzw. wo könnte das Problem liegen? Ich bin eben leider kein PHP-Fachmann… :-(

  4. 4 Mike Schnoor Mar 7th, 2007 at 17:19

    Ach so na klar - die “22″ ist aus meinem Code - ich zeige in meiner Blogrolle in der Sidebar 22 URLs an. Wenn Du meinen Code übernimmst, hast Du im Array aber nur 2 Einträge (TS&LM). Füge mal 50 Einträge in den Array hinzu, nehme eine schönere Zahl statt 22 (oder einfach ohne den Zusatz) und alles ist gut. ;)

  5. 5 jimlib Mar 7th, 2007 at 18:05

    Ah ok. Werde ich nachher ausprobieren. Scheint ja dann eine etwas umfangreichere Arbeit zu werden.

    Jetzt weiß ich dann auch, was mit der Aussage im ersten Kommentar gemeint ist.

    Danke für die Hilfe!

  6. 6 Basti Mar 8th, 2007 at 12:09

    Wieso einfach, wenn´s auch umständlich geht *g*

    Seit Version 2.1 verfügt WordPress über einen neuen Template-Tag: wp_list_bookmarks()

    Damit geht´s dann super einfach, eine dynamische BlogRolle zu erstellen.

    z.B. wp_list_bookmarks('categorize=0&orderby=rand&limit=22&title_li=0');

    erstellt eine BlogRolle mit 22 zufälligen Einträgen.

  7. 7 Mike Schnoor Mar 8th, 2007 at 12:12

    Die Performance von 1 Array, 1 random Funktion und foreach-echo Statements ist wesentlich schneller als beim Auslesen aus der Datenbank - die Query-Summe steigt intensiv, wenn es über 450 Einträge in der Blogrolle sind. Bei 10-20 ist das unkritisch, aber sobald die Zahl der Verlinkungen steigt, geht’s mir gegen den Strich mit dem Speed ;)

  8. 8 Basti Mar 8th, 2007 at 13:07

    Kommt immer auf die Query an ;)

  1. 1 jimlibs blog » Blog Archiv » links for 2007-03-08 Pingback on Mar 8th, 2007 at 07:27
  2. 2 jimlibs blog » Blog Archiv » Blogroll-Problem gelöst Pingback on Mar 8th, 2007 at 22:38

Leave a Reply

Hier finden sich Hinweise zu manuellen Trackbacks und sogar zu Kommentaren mit werblichem Charakter.





Subscribe to Bloglines TopBlogs.de

© Copyright 1997-2007 by Mike Schnoor. All rights reserved. Telagon Sichelputzer is powered by WordPress: RSS Beiträge und RSS Kommentare
Über uns | Archiv | Kontakt | Plugins | Login | Datenschutz | Impressum