2016-05-16 104 views
1

我是一个初学者,我需要一些帮助,以优化我的“所有职位”页面。保存数据库查询并每X小时自动更新一次。 WordPress的

我有一个包含我所有发布的帖子(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; 

的问题是:

我当时就想,“存储”的查询和每小时更新。我试图谷歌有关它没有成功。我会很感激,如果有人能告诉我,至少我需要搜索,因为我是这些类型的初学者。

(对不起,我英文不好)

编辑1

你们认为它是个好主意,数据从MySQL使用PHP转换成JSON和更新每隔一小时?

回答

0

可以使用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('[email protected]', 'Automatic email', 'Automatic scheduled email from WordPress.'); 
} 

你需要将它适应您的需求。

+0

我现在不在家,当我回来,病了解更多关于wp_cron()并让你知道。谢谢:) – Korstraz

+0

不客气...花点时间,并尝试它,因为你想:) – LoicTheAztec

+0

我试图读一些关于wp_cron,我可以说这不是最好的方式来做到这一点,似乎很难做到:( – Korstraz