Skip to content

Seite lädt und lädt und lädt wegen Fremdeinbindung

Screenshot lädt... miradlo bloggtSolange es nur ein Link ist, den man einbindet ist alles gut. Für Services wie blogosccop bei dem man vergleichen kann, wieviele Besucher das eigene Blog im Vergleich zu anderen, ähnlichen Blogs hat, wird jedoch ein Bild eingebunden, um die Aufrufe zählen zu können.

Das ist normalerweise gut und fällt kaum auf, wenn das jeweilige Bild in der Fußzeile ist. Es gibt sichtbare und unsichtbare Bilder, auch beim Design fällt also nichts auf. Ungeschickt ist jedoch, falls blogoscoop mal nicht erreichbar ist. Die eigene Seite ist da, sie ist vollständig geladen, doch in der Ladeanzeige hört es nicht auf weiterzuladen (siehe Bild). Ja, Kleinkram, aber mich nervt das. ;)

WordPress

In WordPress hatte ich das schon länger gelöst, den Ansatz zum Code hatte ich irgendwann mal gefunden als es mich grad nervte, und dann minimal angepasst:

<?php						
$url = 'url_zum_service';
    $context = stream_context_create( array(
        'http'=>array(
        'timeout' => 0.5
        )
    ));
    $fp = fopen($url, 'r', false, $context);
    if ( !$fp ) {
        //schnief $url nicht da, gib Leerzeichen aus
        echo " ";
    }
    else {
        echo "<li><a href='url_zum_eigenen_link_beim_service'>
            <img src='pfad_zum_gewünschten_Zählbild' alt='' /></a></li>";
    }    					
?>  

Bei WordPress habe ich diesen Teil statt der ursprünglichen Einbindung direkt in die footer.php des Theme gepackt.

Serendipity

Bei s9y klappt das so nicht, denn mitten ins Smarty-Template lässt sich nicht einfach php-Code schreiben. Ich war sicher, das wollte schon vor mir mal jemand und siehe da im s9y-Forum gab's dazu einen Beitrag, wie es geht. Zusammen mit Roland klappte es dann auch schnell.

Anzupassen, bzw. zu erstellen waren drei Dateien im eigenen Template:

selbstgebaut.php oder wie die Datei heißen soll, erstellen:

 <?php	
    global $selbstgebaut;
	$selbstgebaut = " ";					
	$url = 'http://pfad_zum_bild';
	$context = stream_context_create( array(
	  'http'=>array(
	    'timeout' => 0.5
	  )
	));
	$fp = fopen($url, 'r', false, $context);
	if($fp){
		$selbstgebaut =  '<a href='url_zum_eigenen_link_beim_service'>'
		                  .'<img src='pfad_zum_gewünschten_Zählbild' alt=''" '
                          .'alt="" '
                          .'width="1" '
                          .'height="1" />';
	}						
?> 

index.tpl an der Stelle, an der bisher der Link stand:

{$selbstgebaut} 

config.inc am Ende ergänzen:

 
include_once($_SERVER['DOCUMENT_ROOT']."/pfad_zu_templates/genutztes_template/selbstgebaut.php");
$serendipity['smarty']->assign('selbstgebaut', $selbstgebaut;


Trackbacks

Keine Trackbacks

Kommentare

Noch keine Kommentare

Kommentar schreiben

Die angegebene E-Mail-Adresse wird nicht dargestellt, sondern nur für eventuelle Benachrichtigungen verwendet.

Um maschinelle und automatische Übertragung von Spamkommentaren zu verhindern, bitte die Zeichenfolge im dargestellten Bild in der Eingabemaske eintragen. Nur wenn die Zeichenfolge richtig eingegeben wurde, kann der Kommentar angenommen werden. Bitte beachten, dass Ihr Browser Cookies unterstützen muss, um dieses Verfahren anzuwenden.
CAPTCHA

Umschließende Sterne heben ein Wort hervor (*wort*), per _wort_ kann ein Wort unterstrichen werden.
Standard-Text Smilies wie :-) und ;-) werden zu Bildern konvertiert.
BBCode-Formatierung erlaubt
Gravatar, Twitter, Favatar Autoren-Bilder werden unterstützt.
tweetbackcheck