X秒后自动刷新帖子列表

时间:2013-07-20 作者:Leibovich

我是wordpress的新手,我真的需要帮助。我的主站点,列出所有帖子的简历(Except),并分页。但当用户发布新帖子时,在主页上查看它的唯一方法是重新加载它。。。我想知道是否有办法自动显示新帖子,比如facebook。。。。

直到现在我才找到做这件事的方法。

我已经从索引中删除了以下行。php(在/wp-content/themes/wp\\u-blogger/中):

<?php if (have_posts()) : while (have_posts()) : the_post(); ?>

<?php include(TEMPLATEPATH."/excrept.php"); ?>

<?php endwhile; else: ?>

    <div class="featured_section">
        <div class="featured_in">
            <h3 style="margin-bottom:800px;"><?php _e(\'Nenhum post encontrado com estes critérios.\'); ?></h3>
        </div>
    </div>

<?php endif; ?>
我已经把上面的代码放进了一个负载中。php(在同一目录中),并在索引中替换它。php具有:

<script>
$(document).ready(function(){
var callAjax = function(){
$.ajax({
method: "GET",
url: "/RMON/blog/wp-content/themes/wp_blogger/load.php",
success: function(data){
$("#test").html(data);  
}
});
    }   
setInterval(callAjax,5000);
});
</script>
   <div id="test"></div>
但是运气不好。。。我收到以下错误:致命错误:调用/var/www/RMON/blog/wp-content/themes/wp\\u-blogger/load中的未定义函数have\\u posts()。php在线1

2 个回复
SO网友:les

您的答案肯定属于AJAX的范畴。如果您使用的是表单,请尝试设置onsubmit eventListener 等于return false; (加上任何其他需要的属性)如下:

<form onsubmit="return false;">
然后发送一篇帖子,并用PHP对其进行解析,根据您想要的效果和用户的输入,您会对等待的AJAX脚本做出响应,该脚本可以ajax.repsonseText 并且,根据响应是否与您要查找的内容相同,您可以设置所需HTML元素的innerHTML 在不刷新页面的情况下,与您想要的内容相等。很可能是这样的:

if(ajax.responseText != "error") {
    document.getElementById("userInputDiv").innerHTML = ajax.responseText;
}

SO网友:Mark Kaplun

这对于AJAX来说应该是微不足道的(它的发明正是为了做这类事情)。您需要一些javascript代码来发送AJAX请求,请求每X秒发送一次最新的帖子,并用返回的内容更改div的内容(或者更聪明地在新内容时添加新的div)

在服务器端,您需要添加一个处理程序来处理特定的请求并返回最新帖子的内容。请参阅此codex页http://codex.wordpress.org/AJAX_in_Plugins 学习如何以正确的方式进行。

结束

相关推荐

是否使用PRE_GET_POSTS排除发布类型?

我正在使用pre\\u get\\u posts进行自定义分类法归档显示。现在,我添加了一个帖子类型“photo”,它与默认的帖子类型共享相同的分类法。如何通过更新现有函数排除分类法归档循环获取的“照片”帖子?function my_breakfast_query ( $query ) { // not an admin page and is the main query if (!is_admin() && $query->is_main_query()){&#x