WordPress.org

Ready to get started?Download WordPress

Forums

Show Posts With Future Dates (15 posts)

  1. pdlr
    Member
    Posted 6 years ago #

    Is there a parameter for the query_posts() tag that shows posts which have dates from the future? I am going to use an archive-like template page as a calendar.

    The problem is posts disappear when they have future dates.

    Thanks for any help.

  2. Michael Fields
    Themer
    Posted 6 years ago #

    pdlr,
    Yes, you should be able to use:
    query_posts('post_status=future,publish');

    This worked for me in 2.3 when called before the loop in a template page. This parameter will accept the following values - each value should be separated by a comma:

    draft
    pending
    future
    inherit
    private
    publish
  3. fivetide
    Member
    Posted 6 years ago #

    Omg I've just posted the exact same problem !

    But im total noob to php and wordpress could you please explain where I insert this ?

  4. pdlr
    Member
    Posted 6 years ago #

    I currently have this right before the loop on the archive.php template:

    <?php if (is_category()) { $posts = query_posts($query_string . '&post_status=future,publish&orderby=date&showposts=-1'); } ?>

    Past date categories are working but future date calendar catagory is still showing "Error 404 - Not Found"

    I'll keep messing with this and post the results if I get it right.

    Thanks for your help, Mfields

  5. Michael Fields
    Themer
    Posted 6 years ago #

    pdlr,
    Hi. Sorry for the mixup, but I just noticed that you said your version 2.0. I downloaded this version and the solution that I posted above will not work with your version. post_status is handled in the following manner in 2.0:

    if ( $this->is_attachment ) {
    			$where .= ' AND (post_status = "attachment")';
    		} elseif ($this->is_page) {
    			$where .= ' AND (post_status = "static")';
    		} elseif ($this->is_single) {
    			$where .= ' AND (post_status != "static")';
    		} else {
    			$where .= ' AND (post_status = "publish"';
    
    			if (isset($user_ID) && ('' != intval($user_ID)))
    				$where .= " OR post_author = $user_ID AND post_status != 'draft' AND post_status != 'static')";
    			else
    				$where .= ')';
    		}

    In other words "It's totally locked in there and there's no way to easily access it"

  6. fivetide
    Member
    Posted 6 years ago #

    I'm using wordpress-2.3.2 mfields can you help me please ?

  7. pdlr
    Member
    Posted 6 years ago #

    mfields, i noticed that is an if loop for attachment pages. where is that code? i don't seed it in my archive page.

  8. pdlr
    Member
    Posted 6 years ago #

    ok, in wp-includes/classes.php line 588:

    //only select past-dated posts, except if a logged in user is viewing a single: then, if they
    		//can edit the post, we let them through
    		if ($pagenow != 'post.php' && $pagenow != 'edit.php' && !($this->is_single && $user_ID)) {
    			$where .= " AND post_date_gmt <= '$now'";
    			$distinct = 'DISTINCT';
    		}

    Does this have anything to do with it? How can it be changed?

  9. pdlr
    Member
    Posted 6 years ago #

    OK! = )

    In the code above,

    $where .= " AND post_date_gmt <= '$now'";

    should be deleted. This will allow for future posts to be displayed in wordpress 2.0.2

  10. Michael Fields
    Themer
    Posted 6 years ago #

    pdlr,
    The code I posted was from classes.php. Is there any reason you can't upgrade? I really do not feel comfortable giving you advice on how to modify core files as this is something that I never do. My advice to you would be to upgrade to a version where this functionality is supported by query_posts(). In my experience it is best to work with WordPress - not against it :)

  11. pdlr
    Member
    Posted 6 years ago #

    I will upgrade in the next week or two, just need to patch this for the next few days. But this works just fine. Thanks for your help, mfields.

  12. arkytek
    Member
    Posted 6 years ago #

  13. millik1
    Member
    Posted 6 years ago #

    Here's my solution which I use on a number of websites to display event / gig lists with future dates, without using plug-ins or having to modify core WP files.

    http://www.keithmillington.co.uk/wordpress/?p=22

    Thanks to ‘mfields’ who put me on to the idea of exploiting the ‘post_status=future’ function in the first place.

  14. parthatel
    Member
    Posted 6 years ago #

    I'm using WP 2.6 and I tried this:

    <?php if (have_posts('post_status=future,publish')) : while (have_posts('post_status=future,publish')) : the_post(); ?>

    yet it didn't display future posts.

  15. parthatel
    Member
    Posted 6 years ago #

    ok, so i put

    <?php query_posts('post_status=future,publish'); ?>

    in my index page and it worked. But another problem came up that I can't use the NEXT and PREVIOUS links. In other words, I can't use page numbers.

    How do I fix this or use a different method to get scheduled posts?

Topic Closed

This topic has been closed to new replies.

About this Topic