首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Instagram API / Flickity Carousel

Instagram API / Flickity Carousel
EN

Stack Overflow用户
提问于 2020-04-24 23:49:43
回答 1查看 227关注 0票数 0

尝试将其集成到一个站点上:https://github.com/mangcoding/instagram-feeder我对API的了解还不够多,无法让它在用户名而不是标签上工作。我想这可能和下面这行有关: let instaData = data.edge_hashtag_to_media.edges;

有没有人知道我能做什么,谢谢!

代码语言:javascript
复制
<script charset="utf-8">
        (function ($) {
            $(window).on('load', function () {
                var limit = 20;
                $.instagramFeed({
                    'tag': 'data', // want this to be 'username': 'data', 
                    'get_data': true,
                    'callback': function (data) {
                        let instaData = data.edge_hashtag_to_media.edges;
                        instaData.slice(0, limit).filter(x => x.node.edge_media_to_caption.edges.length > 0)
                            .forEach(item => {
                                let node = item.node;
                                let source = $("#instagram-template").html();
                                let template = Handlebars.compile(source);
                                let taken = new Date(node.taken_at_timestamp * 1000)
                                    .toDateString().substr(4);
                                //change format to month date,year
                                let created = taken.slice(0, 6) + ',' + taken.slice(6);
                                let context = {
                                    link: "https://www.instagram.com/p/" + node
                                        .shortcode + "/",
                                    image_url: node.display_url,
                                    countLikes: node.edge_liked_by.count,
                                    caption: node.edge_media_to_caption.edges[0].node
                                        .text,
                                    created: created
                                };
                                let html = template(context);
                                $("#instagramFeed").append(html);
                            });
                        $('#instagramFeed').flickity({
                            cellAlign: 'left',
                            wrapAround: true,
                            pageDots: false,
                            setGallerySize: false,
                            prevNextButtons: true,
                            arrowShape: { "x0": 20, "x1": 60, "y1": 40, "x2": 60, "y2": 35, "x3": 25 }
                        });
                    }
                });
            });
        })(jQuery);
    </script>
EN

回答 1

Stack Overflow用户

发布于 2020-04-26 00:19:21

弄清楚了:

设instaData = data.edge_owner_to_timeline_media.edges;

vs

设instaData = data.edge_hashtag_to_media.edges;

代码语言:javascript
复制
<script charset="utf-8">
        (function ($) {
            $(window).on('load', function () {
                var limit = 20;
                $.instagramFeed({
                    'username': 'myusername',
                    'get_data': true,
                    'callback': function (data) {
                        let instaData = data.edge_owner_to_timeline_media.edges;
                        instaData.slice(0, limit).filter(x => x.node.edge_media_to_caption.edges.length > 0)
                            .forEach(item => {
                                let node = item.node;
                                let source = $("#instagram-template").html();
                                let template = Handlebars.compile(source);
                                let taken = new Date(node.taken_at_timestamp * 1000)
                                    .toDateString().substr(4);
                                //change format to month date,year
                                let created = taken.slice(0, 6) + ',' + taken.slice(6);
                                let context = {
                                    link: "https://www.instagram.com/p/" + node
                                        .shortcode + "/",
                                    image_url: node.display_url,
                                    countLikes: node.edge_liked_by.count,
                                    caption: node.edge_media_to_caption.edges[0].node
                                        .text,
                                    created: created
                                };
                                let html = template(context);
                                $("#instagramFeed").append(html);
                            });
                        $('#instagramFeed').flickity({
                            cellAlign: 'left',
                            wrapAround: true,
                            pageDots: false,
                            setGallerySize: false,
                            prevNextButtons: true,
                            arrowShape: { "x0": 20, "x1": 60, "y1": 40, "x2": 60, "y2": 35, "x3": 25 }
                        });
                    }
                });
            });
        })(jQuery);
    </script>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61412311

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档