1

我有一个新闻页面,根据单击菜单中的哪个类别动态加载帖子。这是通过 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);  
            }  
        });  
    };  

我完全不知道应该做些什么来解决这个问题。

4

1 回答 1

0

问题可能出在 AJAX 请求的呈现 URL 中吗?看起来它在“currentLang”字段之前缺少一个“&”符号。

例如'&category="+category+"currentLang="+curLang',应该是'&category="+category+"¤tLang="+curLang'

于 2016-05-10T05:53:09.860 回答