1,105,644 Community Members

PHP issue in my blog

Member Avatar
zglows
Newbie Poster
1 post since Apr 2009
Reputation Points: 0 [?]
Q&As Helped to Solve: 0 [?]
Skill Endorsements: 0 [?]
 
0
 

After this piece of PHP code is added to my template (Wordpress) my server goes bananas. (I see lots of load peaks, it becomes unresponsive and the site won't load until I reboot the server.)
The code just displays random posts from the database:

<?php
$random_query = new WP_Query('posts_per_page=4&orderby=rand');
while($random_query->have_posts()) : $random_query->the_post(); global $post; ?>

	<li>
	<a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><img src="http://mydomain.com/images/<?php echo get_post_meta($post->ID, 'thumbnail', true); ?>" alt="<?php the_title(); ?>" title="<?php the_title(); ?>" /></a>
	</li>

<?php endwhile; ?>
<?php wp_reset_postdata(); ?>

Does anyone know how can I optimize this piece of code to avoid having all these problems?

LastMitch
Deleted Member
 
0
 

Does anyone know how can I optimize this piece of code to avoid having all these problems?

You can read this:

http://www.wpbeginner.com/wp-tutorials/speed-up-your-wordpress-by-caching-custom-queries-using-transients-api/

as for you issue I think someone provide a nice code here:

http://wordpress.org/support/topic/wordpress-php-code-problems

Member Avatar
gabrielcastillo
Posting Whiz in Training
216 posts since Apr 2012
Reputation Points: 27 [?]
Q&As Helped to Solve: 23 [?]
Skill Endorsements: 3 [?]
 
1
 

you dont need to instanciate a new wp_query if you are in your template fine.. you just need to use query_post() function with arguments.

Here is the codex. link

 <?php
// The Query
query_posts( $args );

// The Loop
while ( have_posts() ) : the_post();
    echo '<li>';
    the_title();
    echo '</li>';
endwhile;

// Reset Query
wp_reset_query();
?> 
You
This article has been dead for over three months: Start a new discussion instead
Post:
Start New Discussion
View similar articles that have also been tagged: