Probleme mit dem Yigg-Button

Ab und an gibt es Probleme mit der Anzeige des Yigg-Buttons [1] hier im Blog und da dies gestern wieder der Fall musste ich mal was dagegen tun. Da ich nur bestimmte Artikel über ein benutzerdefiniertes Feld mit dem Button versehe (Variante von TomK32 [2]) und diesen auch nur in der Kommentar-Ansicht anzeige, kann es eben mal passieren, dass mein Blog nicht fertig lädt, sobald der Yigg-Server nicht antwortet. Das ist natürlich unschön und nervt etwas.
Also was hilft da am besten als eben kurz vor der eigentlichen Anzeige des Buttons ein Socket-Verbindung zum Yigg-Server zu öffnen und nachzuschauen ob dieser erreichbar ist.

Bei mir sieht das dann so aus:
Vorher:

1
2
3
4
5
6
7
8
<?php if(get_post_meta($post->ID, 'yigg')) : ?>
<div class="yiggbutton">
<script>
yigg_url = '<?php the_permalink()?>';
</script>
<script src="http://yigg.de/emb_ycount.js"></script>
</div>
<?php endif; ?>

Nachher:

1
2
3
4
5
6
7
8
9
10
11
12
<?php if(get_post_meta($post->ID, 'yigg')) : ?>
<?php
$fp = @fsockopen ("webtools.yigg.de", 80, $errno, $errstr, 5);
if ($fp) : ?>
<div class="yiggbutton">
<script>
yigg_url = '<?php the_permalink()?>';
</script>
<script src="http://yigg.de/emb_ycount.js"></script>
</div>
<?php endif; ?>
<?php endif; ?>

Die Socket-Verbindung hat ein Timeout von 5 Sekunden, das macht sich dann beim Laden der Seite nicht so bemerkbar und hält nicht lange auf.

[1] Yigg.de – Community News & More
[2] Der yigg-button, ganz easy — TomK32

7 Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.