• home > php > phpcms >

    修改PHPCMS V9列表排序,listorder、order排序功能的方法

    Author:zhoulujun@live.cn Date:

    phpcms文件调用默认是按照id排序的,就是按照时间顺序降序(最新的文章拍前面, 但是,我自己对文章做了排序,就无可奈何了

    phpcms文件调用默认是按照id排序的,就是按照时间顺序降序(最新的文章拍前面,

    但是,我自己对文章做了排序,就无可奈何了

    blob.png

    按照手册,就是

    blob.png

    但是:文件发表顺序,排序错了,最晚发布的文章拍最后了

    然后再查,发现,可以填0,1,2,3,因为

    $listorder = array('`id` ASC', '`id` DESC', '`listorder` ASC, `id` DESC', '`listorder` DESC, `id` DESC');

     (line:29    phpcms\modules\special\classes\special_tag.class.php)


          可以填 0 1 2 3 四个选项

          listorder="0"   等于  order="id ASC"

          listorder="1"   等于  order="id DESC"

          listorder="2"   等于  order="listorder ASC"

          listorder="3"   等于  order="listorder DESC"

    但是,还是不行,所以,自己写……

     修改PHPCMS V9相关文章、专题listorder、order排序功能的方法

    http://blog.csdn.net/zsj523/article/details/38269695

    完全是误人子弟啊,然后自己写!!


    首先,sql语句排序规则??

    SELECT t.* FROM (SELECT * FROM a ORDER BY m ) as t ORDER BY n DESC
    
    select * FROM a ORDER BY m ASC,n DESC

    我们采用第二种方式!

    ORDER BY  后可加2个字段,用英文逗号隔开。

    f1用升序, f2降序,sql该这样写

    ORDER BY  f1, f2  DESC

    也可以这样写,更清楚:

    ORDER BY  f1 ASC, f2  DESC

    如果都用降序,必须用两个desc

    ORDER BY  f1 DESC, f2 DESC

    所以,修改后的东西是……


    {pc:content action="lists" catid="$catid" num="30" order="listorder DESC,inputtime DESC" page="$page"}

    验证:

    blob.png



    转载本站文章《修改PHPCMS V9列表排序,listorder、order排序功能的方法》,
    请注明出处:https://www.zhoulujun.cn/html/php/phpcms/2016_0408_7748.html