Wordpress: Artikelinfos wie Views, Update-Infos und Gesamtzahl von Shares in ein Widget packen

Teilen

Auf Mastodon teilen

Gib deinen Mastodon-Server oder deine vollständige Adresse ein. Beides funktioniert.

Der Server wird nur in deinem Browser gespeichert.

Für den Fall, dass das Wetter überraschenderweise bald novembermäßig wird, hier auf die Schnelle mal ein Tipp, wie man ein paar Artikelinformationen in ein Sidebar-Widget packen kann. Es geht hier um drei Informationen, die man traditionell entweder unter den Artikel oder in den Meta-Informationen platzieren würde.

Die Anzeige der 3 Informationen ist nur in der Artikelansicht sinnvoll, da sich die Auswertung ja auch nur darauf beziehen. Man benötigt also entweder ein Plugin zur Steuerung der Anzeige des Widgets (z.B. Widget-Logic) oder regelt das, wie im Beispiel mit etwas PHP-Code.

1.) Anzahl der Aufrufe eines Artikels (Views)
2.) Wann wurde der Artikel zuletzt geändert (Update)
3.) Wie oft wurde der Artikel geteilt (Twitter, Facebook, Google+)

Zuerst braucht man ein PHP-fähiges Widget. Ich nutze im Backend den Editor „WP Edit Pro“, der auch diese Möglichkeit vorhält. Es gibt im Netz Codestückchen, die Widgets PHP-fähig machen. Diese könnte man ggf. via Toolbox von Sergej Müller in Gang setzen.

Zunächst also der Code für ein Widget, den man dort einfach einfügt (CSS H4 muss dem Theme entsprechend angepasst werden).

<?php if ( is_single() ) { ?> <h4 class="widget-title">Artikelinfo</h4>Dieser Artikel wurde bereits <?php setPostViews(get_the_ID()); echo getPostViews(get_the_ID())-1;?> mal gelesen.
<br />
Letzte Änderung des Beitrages am:
<!-- START DISPLAY UPDATE INFO -->
<?php if(strtotime($post->post_modified) - strtotime($post->post_date) > 86400)
echo "" ;
the_modified_date('j.m.y');?>
<!-- END DISPLAY UPDATE INFO --><br />
Insgesamt wurde dieser Beitrag <?php echo do_shortcode('[totalshares] '); ?> mal geteilt.

<?php }?>

So sieht der Code für die Ermittlung der Gesamtanzahl der Shares aus:

function getTotalShares($atts) {
extract(shortcode_atts(array(
'cache' => '3600',
'url' => 0,
'f' => 0,
'bgcolor' => '#ffffff',
'bordercolor' => '#ffffff',
'borderwidth' => '0',
'bordertype' => 'solid',
'fontcolor' => '#7fc04c',
'fontsize' => '55',
'fontweight' => 'normal',
'padding' => '1'
), $atts));

$shareHash = "$cache.$url.$f.$bgcolor.$bordercolor.$borderwidth.$bordertype.$fontcolor.$fontsize.$fontweight.$padding";
$totalShareRecord = 'totalshares_' . $shareHash;
$cachedposts = get_transient($totalShareRecord);
if ($cachedposts !== false) {
return $cachedposts;

} else {

if (!$url) $url = get_permalink($post->ID);

$json = file_get_contents("http://api.sharedcount.com/?url=" . rawurlencode($url));
$counts = json_decode($json, true);
$return = $counts['Twitter'] + $counts['Facebook']['total_count'] + $counts['GooglePlusOne'];
if ($f) $return = '
' . $return . '';
set_transient($totalShareRecord, $return, $cache);
return $return;
}
}
add_shortcode('totalshares','getTotalShares');

Hier noch der Code für die Views (ebenfalls z.B. einsetzen über die Toolbox von Sergej Müller):

// function to count views.
function setPostViews($postID) {
$count_key = 'post_views_count';
$count = get_post_meta($postID, $count_key, true);
if($count==''){
$count = 0;
delete_post_meta($postID, $count_key);
add_post_meta($postID, $count_key, '0');
}else{
$count++;
update_post_meta($postID, $count_key, $count);
}
}

// function to display number of posts.
function getPostViews($postID){
$count_key = 'post_views_count';
$count = get_post_meta($postID, $count_key, true);
if($count==''){
delete_post_meta($postID, $count_key);
add_post_meta($postID, $count_key, '0');
return "0 ";
}
return $count.' ';
}
Merkliste

Kommentare

Was meinst du dazu?

Kommentieren auf diesem Blog

  • Text wird lokal zwischengespeichert
  • Antworten können per E-Mail abonniert werden
  • Kommentar kurzzeitig bearbeitbar oder löschbar

Nach dem Absenden kannst du deinen Kommentar noch 10 Minuten bearbeiten oder löschen.Danach ist keine Änderung oder Löschung mehr möglich.
Herman van Veen – Offenes Geheimnis
Zuletzt gehört
Offenes Geheimnis
Herman van Veen · Fallen oder Springen
Zuvor
The Rosenberg Trio – Deine Küsse sind süßer als
Deine Küsse sind süßer als
The Rosenberg Trio · Deine Küsse Sind Süsser
Davor
Rebekka Bakken – Little Drop of Poison
Little Drop of Poison
Rebekka Bakken · Little Drop of Poison