【发布时间】:2015-05-25 16:50:40
【问题描述】:
我在我的投资组合中使用 ajax 加载更多,它运行良好,但是当我将投资组合作为首页时遇到问题,加载更多不再工作,它显示相同的帖子
这是js中加载更多的代码
var isoElem = jQuery('.masonry-images');
if(isoElem.length > 0) {
var elem = isoElem[0];
var iso = new Isotope( elem, {
itemSelector: '.work-image',
});
}
var page = 1;
var loadMorePosts = jQuery('#load-more-posts').text();
function loadMore() {
page++;
jQuery.ajax({
type: "GET",
url: './page/' + page,
beforeSend: function () {
jQuery('#load-more-posts').html("<i class='fa fa-spinner fa-spin'></i>");
},
complete: function () {
},
success: function (data) {
var $data = jQuery(data).find('.single-blog,.work-image');
if ($data.length > 0) {
jQuery('#load-more-posts').html(loadMorePosts);
jQuery('#blog-posts,#portfolio-posts').append($data);
if(isoElem.length > 0) {
iso.appended($data);
}
$data.css("display", "none");
$data.fadeIn("slow");
}
else {
jQuery('#load-more-posts').html('No More Posts');
}
},
error: function () {
jQuery('#load-more-posts').html('No More Posts');
}
});
}
jQuery('#load-more-posts').click(function(e) {
e.preventDefault();
loadMore();
});
您可以在“http://illyrianthemes.com/themes/vicenza/”现场尝试,当我删除 WordPress 的首页时,这里不起作用,然后完美运行,例如检查四列“http://illyrianthemes.com/themes/vicenza/four-columns/”。
最好的问候
【问题讨论】:
-
我认为 wordpress 使用 admin-ajax.php 处理 AJAX 调用?我已经有一段时间没有在 wp 中使用 ajax 了,但是您应该本地化脚本并在您的 url 中调用它以及一个可以为您提供帖子的函数(在 php 中)。 codex.wordpress.org/AJAX_in_Plugins
-
主要问题是,只有当我将页面设为首页时,它才有效,当它是常规页面时,它工作得很好。
-
那么有永久链接的东西应该是问题所在。
-
是的,一定是这样的,也许它只加载在动态页面而不是静态页面(首页 - 静态)
标签: javascript php jquery ajax wordpress