保存数据库查询并每隔 X 小时自动更新一次。 WordPress的

Save a database query and update it automatically every X hours. Wordpress

我是初学者,我需要一些帮助来优化我的 "All Posts" 页面。

我有一个页面包含我所有已发布的帖子 (300+)。我用这段代码显示它们:

while ( $the_query->have_posts() ) : $the_query->the_post(); ?> 
    <a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>">
    <?php the_title();?></a>
        <?php 
            global $wpdb;
            $postid = $post->ID;
            $postTit = $wpdb->get_var( "SELECT posttitle FROM wp_posts WHERE ID=" . $postid);
            echo "{$postTit}";
        ?>
    <div class="comments">
        <?php 
            global $wpdb;
            $postid = $post->ID;
            $commCount = $wpdb->get_var( "SELECT comment_count FROM wp2_posts WHERE ID=" . $postid);
            echo "{$commCount }";
        ?>
    </div>
<?php endwhile;

问题是:

我想 "store" 查询并每小时更新一次。我试图 Google 一些关于它的东西但没有成功。如果有人至少可以告诉我我需要搜索什么,我将不胜感激,因为我是这类事情的初学者。

(抱歉英语不好)

编辑 1

你们认为使用 PHP 将数据从 MySQL 转换为 JSON 并每小时更新一次是个好主意吗?

您可以使用wp_cron()功能进行自动保存和更新:

if ( ! wp_next_scheduled( 'my_task_hook' ) ) {
  wp_schedule_event( time(), 'hourly', 'my_task_hook' );
}

add_action( 'my_task_hook', 'my_task_function' );
function my_task_function() {
  wp_mail( 'your@email.com', 'Automatic email', 'Automatic scheduled email from WordPress.');
}

您需要根据自己的需要对其进行调整。