Hallo Leute,
um die meistbesuchten (views) Beiträge anzeigen zu lassen, habe ich das Plugin "Wordpress Popular Posts" installiert. Mit dessen neuen Tabellen in der Datenbank, kann ich herausfinden (auch ohne Widget), welcher Beitrag am öftesten betrachtet wurde. Das SQL Statement ist bereits 100% richtig, es liefert genau die richtigen Ergebnisse (in PHPMyAdmin getestet).
PHP
SELECT p. *
FROM wp_posts AS p
LEFT JOIN wp_popularpostsdata AS d ON p.ID = d.postid
ORDER BY d.pageviews DESC
Wenn ich dies nun aber in die Blogroll/Loop einbauen will (category.php) bekomme ich lediglich die neuesten Beiträge angezeigt. Wo liegt der Fehler?
PHP
<?php
$popular_posts = new WP_Query('SELECT p.* FROM wp_posts AS p LEFT JOIN wp_popularpostsdata AS d ON p.ID = d.postid ORDER BY d.pageviews DESC');
if($popular_posts->have_posts()): ?>
<?php while($popular_posts->have_posts()): $popular_posts->the_post(); ?>
<div class="technik-item-small">
<?php if(has_post_thumbnail()): ?>
<?php $image = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'widget-image-thumb'); ?>
<div class="block-image"><a href='<?php the_permalink(); ?>' title='<?php the_title(); ?>'><img src="<?php echo $image[0]; ?>" alt="<?php the_title(); ?>" width='90' height='90' /></a><?php echo $icon; ?></div>
<?php else: ?>
<div class="block-image"><a href='<?php the_permalink(); ?>' title='<?php the_title(); ?>'><img src="<?php bloginfo('template_directory'); ?>/timthumb.php?src=<?php bloginfo('template_directory'); ?>/images/thumbnail.png&w=90&h=90" alt="<?php the_title(); ?>" width='90' height='90' /></a><?php echo $icon; ?></div>
<?php endif; ?>
<h2><a href='<?php the_permalink(); ?>' title='<?php the_title(); ?>'><?php the_title(); ?></a></h2>
</div>
<?php endwhile; ?>
<?php endif; ?>
Alles anzeigen
Danke für eure Hilfe,
LG DjMG