0

我目前正在开发一个应用程序来从 wordpress 网站检索提要并以 jquery 移动列表格式列出单个帖子。下面是JS代码:

$(document).ready(function () {
    var url = 'http://howtodeployit.com/category/daily-devotion/feed/';
    $.ajax({
        type: "GET",
        url: document.location.protocol + '//ajax.googleapis.com/ajax/services/feed/load?v=1.0&output=json_xml&num=1000&callback=?&q=' + encodeURIComponent(url),
        dataType: 'json',
        error: function () {
            alert('Unable to load feed, Incorrect path or invalid feed');
        },
        success: function (data) {
            var postlist = data.responseData.feed.entries;
            var html = '<ul data-role="listview" data-filter="true">';
            for (var i = 0; i < 6; i++) {
                var entry = postlist[i];
                console.log(entry);
                html += '<li>';
                html += '<a href="#articlepost" onclick="showPost(' + entry.id + ')">';
                html += '<div class="etitle">' + entry.title + '</div>';
                html += '<div class="esnippet">' + entry.contentSnippet + '</div>';
                html += '</a>';
                html += '</li>';
            }
            html += '</ul>';
            $("#devotionlist").append(html);
            $("#devotionlist ul[data-role=listview]").listview();
        }
    });
});

function showPost(id) {
    $('#articlecontent').html("Loading post...");
    $.getJSON('http://howtodeployit.com/category/daily-devotion/?json=get_post&post_id=' + id + '&callback=?', function (data) {
        var html = '';
        html += '<h3>' + data.post.title + '</h3>';
        html += data.post.content;
        $('#articlecontent').html(html);
    });
}

当我点击显示的 6 个帖子中的任何一个时,只会显示第一个帖子的内容,而不是单个帖子的内容。

4

1 回答 1

0

我是如何解决这个问题的?

第 1 步:从我的 WordPress 永久链接设置中,我选择了自定义结构并添加了/%postname%/%post_id%这意味着我的“链接”元素的 RSS XML 输出结果将采用以下格式:

<myurl>/<postname>/<postID> (http://howtodeployit.com/xxx/111/)

第2步:为了让我更容易而不是编写正则表达式查询,我使用了这样的拆分命令:

var postlink = entry.link;
var id = postlink.split(/\//)[4];

(///)[4]将简单地按斜杠数拆分 URL,并且只占用我的 postID 所在的第 4 位。

我希望这对我职位的其他人有用

于 2013-10-10T14:37:30.577 回答