专栏首页李维亮的博客PHPCMS推荐位文章列表手动排序

PHPCMS推荐位文章列表手动排序

一些比较重要的文章我们通常会设置为推荐,但是即使都是推荐的文章,也分重要程度的,如何把最重要的放到第一,把相对不重要的排序到后面呢? 首先来看下我写的推荐位文章列表代码

{pc:content action="position" posid="2" order="listorder DESC" num="10"}
{if $data}
{loop $data $v}
<li><a href="{$v['url']}">{$v['title']}</a></li>
{/loop}
{/if}
{/pc}

我本意是希望推荐序号为2的文章,能够按照listorder这个字段来进行排序,也就是后台文章列表最左侧的排序的数字,但是不尽人意的是根本就是无效的。咱们只能去数据库一探究竟了! 打开数据库查看v9_position_data表,结果你会发现,表中listorder字段跟id是一样的。找到造成这种情况的原因,并解决问题。 打开文件:/phpcms/modules/admin/classes/push_api.class.php 大概在136行,找到

$info['id'] = $info['listorder'] = $d['id'];

替换为

$info['id'] = $d['id'];

这样一来添加文章或者修改文章的时候就不会改动listorder的值了。 但单单这样还不行,因为推荐标签在取数据的时候,是根据v9_position_data表的listorder来排序的,但后台更新文章排序的时候,并没有更新v9_position_data这个表的listorder,所以得加上这个功能。 打开文件:/phpcms/modules/content/content.php 大概在460行,找到

foreach($_POST['listorders'] as $id => $listorder) {
      $this->db->update(array('listorder'=>$listorder),array('id'=>$id));
}

在上面的后面加上

//更改推荐位排序开始
   $this->db_config = pc_base::load_config('database');
   $tablepre = $this->db_config['default']['tablepre'];
   $this->db->table_name = $tablepre."position_data";
   foreach($_POST['listorders'] as $id => $listorder) {
    $r = $this->db->get_one(array('id'=>$id));
    if($r['posid']){
      $this->db->update(array('listorder'=>$listorder),array('id'=>$id,modelid=>$modelid));
    }
   }
 //更改推荐位排序结束

现在才算是完美的解决了,PHPCMS推荐位文章列表手动排序的问题。调用的代码我从一开始就写出来了,赶快动手实践一下吧!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • PHPCMS模板制作精髓

    以上标签首页不能调用,分类页和文章页都可以。从某种意义上讲 CAT = CATEGORYS[catid] 但是CATEGORYS是二维数组,可以在任意位置调用。...

    李维亮
  • Phpcms V9 栏目列表调用文章点击量及评论数量方法

    今天在搞Phpcms做站时,需要在列表页、首页调用文章列表调用文章的点击量和评论排行,那么怎么才能做到在Phpcms v9首页、频道页、列表页、推荐位等页面获取...

    李维亮
  • PHPCMS开发常用标签

    《Scratch3魔法编程》一书采用了多平台协作的教学方式,设计中还有一个对应的工具网站。本来采用的方案是静态页+scratchGUI的开源版本部署,但是计划有...

    冠军宝爸
  • PHPCMS文章置顶功能的解决方案

    我个人喜欢把PHPCMS当作博客来用,而作为一个博客,怎能少了文章置顶功能呢?其中用PHPCMS实现置顶功能非常简单,无非是修改下推荐位的名称为置顶,然后在文章...

    李维亮
  • PHPCMS用SQL语句对文章进行批量删除

    在批量删除文章前,首先得熟悉用数据库增加一篇文章时变动的有哪些表,所以请先看我以前写的一篇文章 PHPCMS数据库入库模块制作教程 先手动在PHPCMS后台添加...

    李维亮
  • 专属| Dell遭受黑客攻击

    日前,戴尔发布公告称:“检测并瓦解了一场针对 Dell.com 的网络攻击,未经授权的攻击者试图窃取戴尔的客户信息,但仅限于姓名、电子邮件地址、以及散列(哈希)...

    漏斗社区
  • Phpcms随机文章

    Phpcms默认不支持随机文章调用,必须自己动手实现,以下代码只有 order=”rand()”,其它与正常调用一样。调用代码如下:

    李维亮
  • 笔记:PHPCMS常用标签2

    以下内容来自https://blog.csdn.net/duzhenxun/article/details/89922490

    冠军宝爸
  • PHPCMSV9深度整合百度编辑器ueditor

    支持到PHPCMS V9.1.18 前段时间由于结婚,耽搁了ueditor 1.2.2的整合,实在抱歉。最近几天熬夜整合了ueditor 1.2.3,依然是亮点...

    李维亮
  • 一次与fineCMS的偶遇 - fineCMS getshell漏洞

    这个不是0day,我手里也没0day,算是一个漏洞的二次审计,一篇随便写写的记录文,还请各位大牛多多交流。 0x01 偶遇 有一个目标站,扫了一下旁站...

    phith0n
  • phpcms全站最新文章和随机文章

    代码解析这里用到的是数据库语句,调用 v9_news a 和 v9_news_data 两个表,按文章发布时间倒序排序。if pages 表示如果有分页,则调用...

    李维亮
  • 看不懂代码也能做网站(一)---效果演示以及环境搭建

    论坛:Discuz(文章只用来介绍如何搭建,支持正版,搭建练习请遵守官方规则)

    代码哈士奇
  • Phpcms v9漏洞分析

    最近研究源码审计相关知识,会抓起以前开源的CMS漏洞进行研究,昨天偶然看见了这个PHPCMS的漏洞,就准备分析研究一番,最开始本来想直接从源头对代码进行静态分析...

    FB客服
  • PageAdmin企业网站制作中踩过的坑

    PageAdmin是一套很不错的网站内容管理系统,也是国内最知名的net网站管理系统之一,功能强大、安全稳定,是许多大型门户网站建设解决方案之一,其基于.Net...

    用户4831957
  • 程序员必须掌握的算法有哪些?谈谈这这几年学过的算法

    由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决...

    帅地
  • [神盾推荐系统]在手Q动漫Feeds流推荐实现PRFM算法

    本文将介绍排序学习技术与推荐算法结合的 Pairwise 方法及其具体实现。

    Techeek
  • phpcms上传导致getshell详解及案例

    这篇文章好几天前写了,给协会里新成员普及知识,看大家也都玩的差不多了,就发表到博客里,增加一点噱头和访问量,哈哈~

    phith0n
  • 这份GitHub 2.3k星的ML论文清单拿好,工作用得上

    在工作中动手实施自己的ML项目之前,了解领域里的前沿进展,吸收前人的经验,是很有必要的。

    量子位
  • SIGIR20最佳论文:通往公平、公正的Learning to Rank!

    SIGIR2020 的 best paper 终于出炉,这次获奖论文是 Controlling Fairness and Bias in Dynamic Lea...

    石晓文

扫码关注云+社区

领取腾讯云代金券