Wordpress帖子没有使用WPML通过AJAX加载

时间:2014-01-28 09:21:09

标签: javascript php ajax wordpress wpml

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

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

1 个答案:

答案 0 :(得分:0)

问题可能出在AJAX请求的呈现URL中吗?看起来它错过了&#39;&amp;&#39; &#39; currentLang&#39;之前的符号字段。

例如&#39;&amp; category =&#34; + category +&#34; currentLang =&#34; + curLang&#39;,应该是&#39;&amp; category =&#34; +类别+&#34;&安培; currentLang =&#34 + curLang&#39;