Categories: Tips & Tricks

Pulling custom fields from outside the loop

In the last post “Creating a custom widget” I showed you how to create a custom widget. Well in this post I will show you how I used my custom widget to display all post with a certain custom field from outside the WordPress loop.

In the last post I used this tag:

<?php include(TEMPLATEPATH . '/includes/showcase.php'); ?>

Now I will show you what the file showcase.php has:

<ul>
<?php
global $wpdb;

$sql = "SELECT wposts.*
 FROM $wpdb->posts wposts, $wpdb->postmeta wpostmeta
 WHERE wposts.ID = wpostmeta.post_id
 AND wpostmeta.meta_key = 'gallery-url'
 AND wposts.post_status = 'publish'
 AND wposts.post_type = 'post'
 ORDER BY wposts.post_date DESC LIMIT 8";

$pageposts = $wpdb->get_results($sql, OBJECT);
$output = $pre_HTML;

foreach ($pageposts as $post) : setup_postdata($post);  ?>

<li><a href="<?php echo get_post_meta($post->ID, "gallery-url", $single = true); ?>" title="Link to <?php the_title(); ?>">
<img src="<?php echo get_post_meta($post->ID, "image", $single = true); ?>" alt="<?php the_title(); ?>" /></a></li>

<?php endforeach; ?>

</ul>

That’s it! The most important item you may want to change for your own custom field is the line : AND wpostmeta.meta_key = 'gallery-url'. Where you would change the text in bold to match your own custom field value.

Update:

Check out Austin from PressedWords comment below.

With his great advise I was able to figure out why all my attempts to use the query_post weren’t working. it came down to this line of code: <?php echo get_post_meta($post->ID, "gallery-url", $single = true); ?>, that was what I had in my code, and the $post->ID is the reason my code would not echo or print the custom field’s value. Solution? replace $post->ID with get_the_ID(). HA, so simple.

Web Master

Hi, I am Miguel, I bought this site in 2009. So I now run or manage the site. Please visit my new website or follow me on twitter @W3i.

Recent Posts

Scheduled Post Shift

I just came across an article over at WPHacks.com about a "how to" shift and…

4 hours ago

WP Realtor

The Ultimate WordPress Real Estate theme with custom developed plugins, single and multiple agents, extensive…

16 hours ago

WordPress 2.6.5

WordPress 2.6.5 is immediately available and fixes one security problem and three bugs. We recommend…

1 day ago

Comment Validation

Another plugin I am using on this site: Comment Validation by Jörn Zaefferer. From Jörn's…

2 days ago

Woopra Analytics

Woopra is the world's most comprehensive, information rich, easy to use, real-time Web tracking and…

2 days ago

WordPress Beta 3 Error

If you don't know, this site is running the latest WordPress. Which is in Beta…

2 days ago