在外页包含wordpress会扼杀页面速度——任何想法


Including wordpress on outside page is killing pagespeed- any ideas?

我正在使用php函数将我的博客页面(wordpress)中的最新文章片段包含在我的主页上,而不是wordpress。我使用的实际代码是:

<?php
// Include WordPress 
define('WP_USE_THEMES', false);
require('./fitness_blog/wp-load.php');
query_posts('showposts=1');
?>
<?php while (have_posts()): the_post(); ?>
<blockquote><h2><?php the_title(); ?></h2>
<a href="<?php the_permalink() ?>"><?php the_post_thumbnail( 'thumbnail', $attr ); ?> </a>
<p style="color:#3FF;"> <?php twentyten_posted_on(); ?> </p>
<?php the_excerpt(); ?>



<?php endwhile; ?>

我在页面上任何地方都没有其他php。。。甚至不在最顶部、页眉等处。页面的url是http://www.uniconutrition.com。当我从页面中删除这些代码时,它加载SOO的速度要快得多,所以我知道这就是加重它的原因。有什么想法吗?非常感谢

Wordpress并不是一个轻量级的工具,您加载整个环境以只显示一篇文章。你有几个选项可以加快速度。

  1. 在不加载wordpress环境的情况下,手动查询数据库以获取最新的wordpress帖子。

  2. 将所有这些代码封装在输出缓冲区中,并将帖子缓存到带有时间戳的文件中。在页面加载时检查文件及其时间戳。如果它不在那里,或者它的时间超过了5或10分钟,或者无论你更新博客的频率如何,加载wordpress,渲染帖子,并将其缓存到文件中。

我可能会选择选项1,但任何一个都会产生巨大的影响。

您应该考虑编写一个插件,将AJAX侦听器挂钩添加到WordPress中。然后,您可以发送/接收一个小的JSON数据包,并获得所需的内容,让WordPress在一个单独的线程上运行。

WordPress Codex上有很多关于编写简单AJAX侦听器插件的例子。

相关文章: