簡體   English   中英

查詢一年前的最新 Wordpress 帖子

[英]Query latest Wordpress post from a year ago

是否可以查詢一年前的 Wordpress 帖子,或距該日期最近的帖子。

我想要一個“回顧”功能,允許用戶查看我們一年前談論的內容。

我試過翻閱法典,但還沒有找到任何靈感。 有任何想法嗎?

您可以使用WP_Query運行查詢,該查詢將為您找到帖子的子集。 因為date_query函數可以處理strtotime可以識別的任何值,所以為了方便起見,您可以使用“-1 年”。

<?php
$args = array( 
    'post_count' => 1,
    'date_query' => array( array( 'before' => '-1 year' ) ),    
    'posts_per_page' => 1
);
$lookback = new WP_Query( $args ); 

while ( $lookback->have_posts() ) : ?>

    <div>
    <h1>One year ago you posted:</h1>
    <?php $lookback->the_post(); ?>
    </div>

<?php endwhile; ?>

以下應該工作(未經測試):

global $wpdb;
$nearest_one_year_ago = $wpdb->get_var("SELECT id
FROM $wpdb->posts
ORDER BY ABS( DATEDIFF( post_date, ".date("Y-m-d",strtotime("-1 year", time())." ) ) 
LIMIT 1");

$post = get_post($nearest_one_year_ago);

// ... go on

說明:只需為您的復雜查詢問題找到一個有效的 SQL 查詢,然后使用 $wpdb。 但是通常使用 WP_Query 會更好,只要它可以完成。

更多信息: SQL 查詢顯示最近的日期? https://www.w3schools.com/sql/func_datediff.asp https://codex.wordpress.org/Class_Reference/wpdb

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM