搜索
当前所在位置: 首页>网站问题

pbootcms使用api接口实现Ajax无刷新加载更多文章

发布时间:2023-12-03 01:11:38 作者:超级管理员 点击:70 【 字体:

实现方法

pbootcms自带了API接口,我们可以通过这个API接口http://IP/api.php/list/ 调取分页所需的数据。

我建议这种分页,不要一上来就全部使用Ajax获取数据,因为Ajax是不会被百度收录的。

我建议的做法是,在列表页先使用模板标签输出一些数据。例如:

<div class="newslist">
    <ul>
    {pboot:list num=6}
    <li>
        <a href="[list:link]">[list:title]</a>
    </li>
    {/pboot:list}
    </ul>
    <a href="javascript:;" class="loadmore">加载更多</a>
</div>

先读取6条数据,让搜索引擎最少能抓取到最新的6条文章。

然后再使用Ajax去调取剩余的新闻内容,实现点击加载更多的效果。

下面就是核心AJAX调取API数据部分代码

<script>
    $(function(){
        var Page = 1;
        // 每页展示12个
        var Num = 6;
        $(document).on('click','.loadmore',function(){
            // 页数
            Page++;
            $.ajax({
                type: 'POST',
                url: '/api.php/list/{sort:scode}/page/' + Page + '/num/' + Num + '/order/sorting',
                dataType: 'json',
                data: {
                    appid: '{pboot:appid}',
                    timestamp: '{pboot:timestamp}',
                    signature: '{pboot:signature}',
                },
                success: function( response, status ){
                    console.log(response);
                    var Data = response.data;
                    if( response.code ){
                        //获取数据成功
                        var Html = '';
                        jQuery.each( Data, function( index, value ){
                            //构建HTML
                            Html +=  '<li>';
                            Html +=  '    <a href="'+ value.contentlink +'">'+ value.title +'</a>';
                            Html +=  '</li>';
                        });
                        // 为了测试,延迟1秒加载
                        setTimeout(function(){
                            // 插入数据到页面,放到最后面
                            $('.newslist ul').append(Html);
                        },500);
                    }else{
                        $('.loadmore').slideUp();
                    }
                },
                error: function(xhr, type){
                    console.log('Ajax error!');
                }
            });
        });
    });
</script>

简单解释一下这个代码,从第二页开始读取,每次读取6条。为什么从第二页开始读取?因为前面我们已经在模板里输出6条数据啦。


注意事项

请注意在后台开启WebAPI,如下图。


其中API强制认证,可以按你的实际情况选择启用。


阅读全文
相关推荐

pbootcms多个二级域名怎么填写授权码?

pbootcms多个二级域名怎么填写授权码?
pbootcms多语言绑定多域名,授权码可以去pbootcms官方免费获取,然后进入后台使用半角逗号隔开填写即可。那么我的二级域名太多,成百上千个甚至上万个怎么办?这种情况如果您感觉一个一个填写太麻烦,建议购买万能授权码。...

工信部通报!这些App、SDK正在侵害你的权益:共计22款

工信部通报!这些App、SDK正在侵害你的权益:共计22款
近日,工信部发布关于侵害用户权益行为的APP(SDK)通报(2023年第6批,总第32批)。工信部表示,工业和信息化部高度重视用户权益保护工作,依据《个人信息保护法》《网络安全法》《电信条例》《电信和互联网用户个人信息保护规定》等法律法规,持续开展APP侵害用户权益专项整治行动。近期,工信部组织第三方检测机构对群众...

pbootcms被挂马网站被黑被攻击被篡改快照被劫持怎么办的解决办法

pbootcms被挂马网站被黑被攻击被篡改快照被劫持怎么办的解决办法
近期经常有朋友反应pbootcms网站被挂马被黑被攻击被篡改快照被劫持跳转博彩网站怎么办?经常被黑,处理多次不彻底可联系我们技术人员微信。解决方法思路下面我们通过以下几种方法去分析及解决这个问题。1、如果使用的pbootcms版本比较老,我们可以先清理掉程序中的木马文件,然后进行程序升级,直接升级到官方最新版即可。有...

pbootcms列表序号从2、3、4或者其他数字开始

pbootcms列表序号从2、3、4或者其他数字开始
需求描述我们需要给文章列表显示一个序号,特殊情况下,序号可能需要从2,3或者4开始。示例代码{pboot:listscode=*}<ahref="[list:link]">[list:ioperate=+1]、[list:title]</a>{/pboot:list}代码解释[list:i]代码计数是从1开始,我们直接利用pbootcms的运算符[list:i op...

钟表js代码,css时钟样式模板

钟表js代码,css时钟样式模板
一款钟表js代码,css时钟样式模板,该模板利用css+js,拟态化风格设计,指针钟表样式,100%响应。...

pbootcms上一篇下一篇的没有了怎么修改成别的文字?

pbootcms上一篇下一篇的没有了怎么修改成别的文字?
修改方法{content:precontentnotext='nomore'}{content:nextcontentnotext='nomore'}将代码中的no more改成您需要的文字即可。...

session文件夹自动清理时间从3天间隔修改为1天

session文件夹自动清理时间从3天间隔修改为1天
修改文件/core/basic/Check.php找到代码if($subDay>3){把3改为1即可。官方3.2.4版本已经将3天改为默认1天,您也可以直接将程序升级到官方最新版本。...

网站域名被QQ拦截提示:当前网页非官方页面拦截的解决办法

网站域名被QQ拦截提示:当前网页非官方页面拦截的解决办法
今天网友提醒,站长网的链接被QQ屏蔽拦截了。提示:当前页面非官方页面,请复制到浏览器打开。如图:原因:这是因为QQ方面的诈骗信息特别多,所以腾讯官方索性就直接屏蔽了所有的外部链接。让站长们通过申述来逐一开放。这种方法确实可以节约大部分的审核检测时间。诈骗网站也不会自讨没趣去申述。只有正规网站的站长才回去...

pbootcms使用sql标签实现统计网站留言总数

pbootcms使用sql标签实现统计网站留言总数
pbootcms V3.2.4版本已经不再支持该标签,此代码对pbootcms V3.2.4以上的版本无效。仍需要使用此标签的朋友,可以把/apps/home/controller/ParserController.php文件中的parserSqlListLabel函数相关代码注释去掉即可继续使用。直接上代码,前台模板中使用如下代码:{pboot@sqlsql="selectcount(id)a...

pbootcms调取友情连接列表代码

pbootcms调取友情连接列表代码
适用范围全站任意地方均可使用标签作用用于依次输出指定分组的友情链接模板代码{pboot:linkgid=*num=*}<ahref="[link:link]"title="[link:name]"><imgsrc="[link:logo]"></a>{/pboot:link}控制参数gid=* 分组,必填,用于控...
返回顶部