web-dev-qa-db-ja.com

将来の投稿のリストをクリックした後、ログインしていないユーザーが将来の投稿を見ることを許可する

私はこのようなカスタムテンプレートで将来設定されるページをリストアップすることができました:

query_posts('post_type=page&post_status=future&posts_per_page=100&order=asc&orderby=date&meta_key=_wp_page_template&meta_value=show.php');

しかし、そこにリストされているページの1つをクリックしようとすると、404(ログインしていないユーザーとして)が表示されます。

今後のページを表示するようにテーマ別のpage.phpテンプレートを変更する方法

私たちはすでにfunction.phpでたくさんのものを使っていて、この特定のタイプの投稿のための特別なページテンプレートを持っています...

functions.phpを使ってadd_filterに以下を追加してみましたが、役に立ちませんでした。

function show_future_where($where) {
    return $where . ' AND (wp_posts.post_status = \'publish\' OR wp_posts.post_status = \'future\')';
}

ところで、私は将来の日付で自動的に投稿を設定することについての投稿が「公開された」状態で上書きされるのを見ましたが、それをうまく動かすことができませんでした。

ページテンプレートを編集できる場合、他にできることはありますか?

それが助けになれば、私は3.3を使っています。

ありがとう。

1
Chris Butler

$my_query = new WP_Query(array(
    'post_status' => 'future',
    'order' => 'DESC',
    'posts_per_page' => 1,
));
while ($my_query->have_posts()) {
    $my_query->the_post();
    the_date();
    echo ' - ';
    the_title();
}
wp_reset_postdata();

or this: http://wordpress.org/extend/plugins/show-future-posts-on-single-post/

1
Jennifer M John