我有一个新闻页面,其中的帖子根据单击菜单中的类别动态加载。这是通过 Javascript/AJAX 完成的。该网站是多语言的,我使用 WPML 在语言之间切换。这在网站上的任何地方都工作得非常好,但是当我尝试通过 AJAX 专门回显其他语言的帖子时,它就不起作用了。
即使类别 ID 正确,它也绝对不会显示任何内容。
我在AJAX中使用的代码如下;
query_posts( array('posts_per_page' => $posts, 'paged' => 1, 'category__in' => $selectedCategory, 'lang' => $curLang));
现在我已经测试了当前语言是否没有被正确解析,但即使静态放入“en”也没有改变任何事情,它仍然不会通过 Ajax 回显英文帖子。然而,该代码在常规的旧 PHP 文件中运行良好。
我用来填充变量以传递给 AJAX 的 javascript 如下:
var load_posts = function(postMax, category){
$.ajax({
type : "POST",
dataType : "html",
url : siteurl + "ajax/?postMax="+postMax+"&numPosts=6&pageNumber="+page+"&category="+category+"currentLang="+curLang,
beforeSend : function(){
},
success : function(data){
if(page <= 6){
content.empty();
content.append(data);
$('.more-link').each(function(){
var tempLink = $(this).attr('href');
$(this).parent().parent().parent().parent().children('a').attr('href', tempLink);
});
loading = false;
if(page === 3){
$('#nieuwsContent').css("padding-top", "10px");
}
page++;
}
},
error : function(jqXHR, textStatus, errorThrown) {
alert(jqXHR + " :: " + textStatus + " :: " + errorThrown);
}
});
};
我完全不知道应该做什么来解决这个问题。
最佳答案
问题是否出在 AJAX 请求的呈现 URL 中?看起来“currentLang”字段之前缺少“&”符号。
例如 '&category="+category+"currentLang="+curLang',应为 '&category="+category+"¤tLang="+curLang'
关于javascript - Wordpress 帖子无法使用 WPML 通过 AJAX 加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21401450/