迅睿框架 版主:迅睿框架研发组
文章详情页调用数据分页规则怎么写
类型:迅睿CMS 更新时间:2025-09-02 22:05:56 栏目下的文章 调用相关文章 关键词调用

关于文章详情页分页的问题:①文章详情页的相关文章,按照具有相同关键词调用相关文章,默认显示5篇,不足5篇时随机调用当前栏目下的文章凑足5篇数量,已可以了;

我的问题是:

②当相同关键词的文章比较多时,我想实现一个分页,前端效果如下图所示,我希望点分页的各个页码时只是当前部分 分页的内容跟着翻页,而整个详情页其他内容不要变,怎么写URL规则?或者用别的什么方法能实现呢。我当前的URL规则不对,点分页时整个详情页都会跟着变而且页面也打不开。

image

代码如下:

{related module=MOD_DIR tag=$tag NOT_id=$id page=page1 pagesize=2 sbpage=1 urlrule=index.php?page=2&page1=[page] cache=86400 return=rtag}
...
{/related}
          
{note}如果相关关键词文章不够5个,则随机调用当前栏目的文章凑足5个数量{/note}
          {php $numtag = 5 - $total_rtag;}
          {if $numtag > 0}
          {module module=MOD_DIR catid=$catid num=$numtag NOT_id=$id order=rand cache=86400}
          ...
          {/module}
          {/if} </div>
          
{if $pages_rtag && ($total_rtag > 2)}
<div class="d-flex justify-content-end py-4 mt-3 shadow rounded px-3">{$pages_rtag}</div>
{/if}


回帖
  • 迅睿官方技术专家
    #1楼    迅睿官方技术专家
    2025-08-30 10:34:44
    Chrome 0
     urlrule=index.php?c=show&id=$id&page=[page]
  • 魂
    #2楼    魂
    2025-08-30 21:28:33
    Edge 0
    又有新问题 😇 ,我使用这个URL规则页码是正确了,然后用Ajax翻页时:从第一页挨个点后面的2、3、4和“下一页”直到最后一页都没有问题;但如果反过来就不显示内容了:比如翻页到第3页再点“上一页”或者数字的第1页、或第2页,就不显示内容了,就是往后翻页没有问题,往后翻页后再往前面翻页就不显示内容了,我是哪里写错了呢,或者是这个思路不对吗,代码这样的
    image
    Ajax部分:
    image
    迅睿官方技术专家
  • 魂
    #3楼    魂
    2025-09-02 16:59:46
    Edge 0
    有没有精通Ajax的大佬,Ajax翻页,本地电脑测试很好,一点问题没有;放服务器之后就出现了只能向后翻页,往前翻页就加载不出来内容了
  • 小波工作室
    #4楼    小波工作室
    2025-09-02 17:32:12
    Chrome 0
    这个要在线查才行
  • 魂
    #5楼    魂
    2025-09-02 22:04:56
    Edge 0
    找到问题了:是伪静态的问题,我文章URL伪静态了,related的urlrule是动态的,传服务器上之后nginx会强制重写URL导致往前翻页时URL被服务器认为是无效请求了,返回404;
    添加伪静态规则和重写urlrule=p-$id-page[page].html,这样就可以了。
    满意答案
  • 魂
    #6楼    魂
    2025-09-02 22:05:56
    Edge 0
    @魂:"p-([0-9]+)-page([0-9]+)\.html" => "index.php?c=show&id=$1&page=$2", //文章详情页相关文章分页