wL Social Buttons 0.2


Ich habe ein wenig weiter an dem Plugin wl Social Buttons für WordPress gearbeitet. Neben der verkleinerten JS-Funktion (Danke an Oliver) und dem Entfernen einiger rudimentären Funktionen funktioniert jetzt auch endlich der Google +1 Counter. Dazu setze ich vorerst (zusätzlich zur bisherigen Funktion) auf die API von api.dm.tl, solange ich keinen besseren Weg gefunden habe. Die bisherige Funktion im SocialDataGrabber von macx scheint leider nicht zu funktionieren.

Auf diese neue API bin ich über diesen Artikel aufmerksam geworden. Der Dienst funktioniert zwar, aber ist schlecht bis gar nicht dokumentiert. Leider bietet der Dienst auch keinerlei Transparenz, mit der man die Funktionsweise und die Seriosität der Ergebnisse überprüfen könnte. Und man weiß nicht, ob die Webseite nicht von heute auf morgen abgeschaltet wird. Von daher bin ich noch ein wenig vorsichtig und werde mich weiteren Lösungen umsehen.

Das Plugin befindet sich weiterhin in der Entwicklung. Wer es aber ausprobieren oder forken möchte, kann es sich hier downloaden:

Download wl Social Buttons 0.2

Wenn ihr Ideen, Vorschläge oder Fehler habt, würde ich mich über einen Hinweis freuen.


7 Antworten zu “wL Social Buttons 0.2”

  1. Vorschlag:
    Du kannst das gesamte CSS rausnehmen und in eine externe Datei speichern und dann so laden:

    wp_register_style('wlsocial', plugins_url('style.css', __FILE__));
    wp_enqueue_style( 'wlsocial');

    <?php echo WLSB_PLUGIN_DIR; ?>/img/ kannst Du dabei gegen img/ tauschen.

    Das gleiche gilt für das Javascript, dass Du dann auch im footer laden kannst.

    wp_register_script( 'wlsocial', plugins_url('style.css', __FILE__), array(), false, true);
    wp_enqueue_script( 'wlsocial' );

    Ich bin jetzt nicht so der WordPress Fachmann, aber laut der Api müsste das funktionieren und Du hättest etwas mehr Ordnung. 🙂

    • Werde ich aufnehmen. Allein schon deshalb, um später eine Möglichkeit offen zu lassen, mit der man alle CSS-Angaben der Plugins in einer Datei zusammenfassen kann. So kann dann später das CSS-File von wl Social Buttons mit wp_deregister_style() am Einbinden gehindert werden.

  2. Ich hab mal 10 Minuten gebastelt und das ist dabei raus gekommen. Es scheint, als wenn der Button von google teilweise sehr unterschiedliche Ergebnisse ausgibt und relativ oft auch 0. Ich hab es jetzt so gelöst, dass so lange angefragt wird, bis es nicht 0 ist oder 20 Versuche abgehakt wurden. Bisher funktionierte es bei allen URLs, aber die Ergebnisse können auch schon mal um ein paar 100 abweichen.

    function gplus_counter($url)
    {
    for($i=0;$i<20;$i++)
    {
    $test = file_get_contents('https://apis.google.com/js/plusone.js');

    if(preg_match('/\'(.*?)\'/i',$test,$regs))
    {
    $jsh = urlencode(str_replace("\/", "/", $regs[1]));
    $test = file_get_contents('https://plusone.google.com/u/0/_/+1/fastbutton?url=&'.urlencode($url).'&size=standard&count=true&annotation=&hl=en-US&jsh='.$jsh);

    if(preg_match('/(.*?)/i',$test,$regs)){
    if($regs[1]!='0') return $regs[1];
    }
    }
    }
    return '0';
    }
    echo gplus_counter('http://www.facebook.com/').''; // 29.1k
    echo gplus_counter('http://www.google.com/').''; // 30.8k
    echo gplus_counter('http://www.msn.com/'); // 580

    • Vielen Dank. 🙂
      Ich habe die Funktion etwas verbessert und integriert. Ein Update kommt wahrscheinlich noch heute raus.