Verfasst am 23.07.2009 18:41:35 Uhr Ob im Freenet-Weblog auch Backlinks funktionieren? Endlich habe ich an einem praktischen Beispiel in einem anderen meiner Tagebücher verstanden, was backlinks sind, die google angeblich in seine Bewertung mit einbezieht. Vermutlich funktionieren sie unter freenet nicht, weil man mit JavaScript arbeiten muss. Aber vielleicht teste ich es auf meiner Tagebucharchiv-Seite. Backlinks sind keine Links im herkömmlichen Sinne, sondern die Links der Besucher. Das heisst, falls der Webmaster von http://drpagel.log.ag/2009_07_2009_07_23_weblog.html#Beitrag2 einen Link» auf http://tb-archiv.drpagel.de/TB_2009-07-23Beitrag2.html angelegt hat, so ist dies nur ein Link. Auch ein Gegenlink» http://drpagel.log.ag/2009_07_2009_07_23_weblog.html#Beitrag2 des Webmasters von http://tb-archiv.drpagel.de/TB_2009-07-23Beitrag2.html ist nur ein einfacher Link und noch kein Backlink. Ich glaube: erst wenn wirklich jemand diesen Link angeklickt hat und auf meiner zugehörigen Tagebucharchivseite gelandet ist, so wird er über ein JavaScript "Referrer" erfasst und dort als Backlink gelistet und google findet, wie ist noch unklar, diese Backlinks. Vielleicht wird durch das JavaScript ein von google anerkannter Backlink-Counter gefüttert, der diesen Vorgang in einer von google gelesenen Liste festhält. P.S.: natürlich gibt es 10 Fehlermeldungen wegen invalidem HTML-Code auf der Original-Referenzseite http://drpagel.blogger.de/stories/1079765/ , die mich zu diesem Backlink-Test inspiriert haben. (dp)(0,25h) nachfolgend: Javascript-TESTBEREICH "Backlinks"Wenn man etwas testen möchte, muss man seinen Test verstehen. Oftmals versteht man aber erst durch learning-by-doing. So geht es mir jetzt. Javascript kennt die Variable document.referrer. Falls gerade javascript zugelassen ist, müsste man hier seine Referenzseite lesen:
Anschließend wird ein in einer nachfolgenden mit "for (var" beginnenden For-Schleife benötigter Counter "cnt" initialisert und einer Variablen "prefix" ein konstanter Hilfstext zugewiesen. Klar ist, dass zu Ende der for-Schleife, aus der man auch eine Javascript-Funktion machen könnte, eine Backlink-Liste ausgegeben wird. Doch was passiert vorher? Zunächst war diese Schleifenart für mich neu. Man nennt sie for-in-Schleife. Sie läuft so lange, wie es verfügbare Objekteigenschaften gibt. In der for-Schleife wird einer Hilfsvariable "ref" das erste (oder "solange der Vorrat i reicht" nachfolgende) referrers-Feldinhalt zugewiesen. Damit erbt "ref" auch alle Bezeichnungen (hier "url", "text", "count") von "referrers[i]" und es ist nun klar woher "ref.count" seine Information bezieht, nämlich von "referrers[i].count". Einer Hilfsvariable "text" wird der zugehörige Text(URL) zugewiesen. Falls in einer wahren (erfüllten) if-Bedingung "continue" steht, wird sofort der nächste Schleifendurchgang gestartet, falls dort "break" steht, wird die Fortführung der for-Schleife sofort abgebrochen. (dp)(6h (24.7.2009)) Nun bin ich Tor noch nicht viel schlauer als zuvor!Das javascript findet heraus, wie oft ein Wagenrücklaufzeichen "\r" in dem gesamten zu durchsuchenden Bereich von "def" vorkommt und ersetzt es ("replace") durch ein Zeilenvorschubzeichen "\n". Die Fundstellen werden intern in einem Array gespeichert. Der String in "def" wird dann an den Stellen mit Zeilenvorschubzeichen in einzelne Strings zerlegt ("split"). In meinen Beipielen keine Wagenrücklaufzeichen, weswegen auf die "this.items" die Strings des Bezeichner "def" unverändert übertragen werden, so das z.B. das erste "this.items = 'http://.*google.*?'" ist.Anschließend wird eine test-Funktion für einen String "str" gestartet. Der logische Operator ! prüft, ob ein Ausdruck unwahr ist. Der Ausdruck if (!str) trifft zu, falls "str" gleich null, 0, ein Leerstring oder undefiniert ist. Da in diesem ganzen test-Block kein Element "str" gesetzt wird, fragt sich, wo ist "str" definiert? Es wird einmal in "Antville.encode", zum anderen in "Antville.Query" und in "Antville.decode" erzeugt bzw. manipuliert. Der javascript-Bezeichner "instanceOf" in einer if-Abfrage prüft, ob ein Objekt eine Instanz eines Prototyp-Objektes ist (ab JavaScript-Version 1.4). In unserem Beispiel wird geprüft, ob "def" ein "Array" ist - nein: 'http://.*google.*?' ist kein Array. Na, dann ist's ja gut. Der erste Wert der Variable "re" nach der Zuordnung durch "RegExp" ist "/http://.*google.*?/i". Der Buchstabe i gibt an, dass Groß- und Kleinschreibung nicht berücksichtigt werden soll. Aber der step-by-step-Ablauf der unbenannten (rekursiven) Test-Funktion ist noch unverstanden. Zur Zeit sehe ich noch nicht, dass die "re"-Ausdrücke (wie beispielsweise der letztgenannte) irgendwo verwendet werden, um im Test die "referrers[i]" (hier: 0≤i≤1) zu verifizieren (z.B.: "http://www.google.de/search?q="+referrers[0]). Vermutlich bin ich jetzt bereits betriebsblind. Nach einer kleinen Pause ist nun die test-Funktion grob verstanden. Würde man diese Testseite von einer Suchmaschinen-Fundliste aus angeklickt haben, dann würde der lange URL-String, z.B. http://www.google.de/search?hl=de&client=firefox-a&rls=org.mozilla%3Ade%3Aofficial&q=tb-archiv.drpagel.de&btnG=Suche&meta= für die Anzeige von "text" wie folgt gekürzt: "Search request:" tb-archiv.drpagel.de Die Analysewebseite "http://wieistmeineip.de" hätte diesen Verweis so formuliert: Sie waren eben auf (google) und haben nach "tb-archiv.drpagel.de" gesucht Eine referrer-Liste mit mehr als einem Eintrag kann damit aber noch nicht angelegt werden. Merke: Es gibt kein Instant-Verständnis! (dp)(7,25h (25.7.2009)) Nun bin ich Tor etwas schlauer als zuvor!Beim Öffnen der Original-Referenzseite wird nur ein Cookie von blogger.de mit
Referrers in the last 24 hours of drpagel - blogger (dp)(0,35h) ANMERKUNG: Das script-Element darf nicht innerhalb eines table-Elemenes stehen. Erlaubt ist aber, es innerhalb eines td-Elementes zu platzieren. Daher kann das table-Starttag und -Endetag auch mit Hilfe von "document.writeln" ausgegeben werden. (validome sei Dank!) archiviert (tbid2818.559): (dp) 23.07.2009 (+0,75h (+favicon +flagcounter +2navi +w3c_LiCh)) | ||