针对phpcms category标签排序失效的问题,根据搜索结果,以下是一些修复方案:
修复推荐位排序问题:
打开文件 /phpcms/modules/admin/classes/push_api.class.php,找到代码 $info['id'] = $info['listorder'] = $d['id']; 并修改为 $info['id'] = $d['id'];。这样可以确保在添加或修改文章时不会改变listorder的值。
接着,打开文件 /phpcms/modules/content/content.php,在 foreach($_POST['listorders'] as $id => $listorder) { $this->db->update(array('listorder'=>$listorder),array('id'=>$id)); } 后面添加以下代码:
php//更改推荐位排序开始$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)); }}//更改推荐位排序结束
这样就能更新v9_position_data表的listorder值,修复排序问题
。
修改相关文章排序的方法:
打开根目录下的 phpcms/modules/content/classes/content_tag.class.php,找到 $r = $this->db->select($sql2, '*', $limit, '','','id'); 并修改为 $r = $this->db->select($sql2, '*', $limit, $order,'','','id');。这样可以通过PC标签的order参数来控制排序。
修改相关专题排序的方法:
打开根目录下的 phpcms/modules/special/classes/special_tag.class.php,找到 $listorder = array('id ASC', 'id DESC', 'listorderASC,id DESC', 'listorderDESC,id DESC'); 并修改为 $listorder = array('id ASC', 'id DESC', 'listorder ASC', 'listorder DESC');。这样可以通过PC标签的listorder参数来控制排序。
请根据上述步骤进行操作,这应该能够解决phpcms category标签排序失效的问题。如果还有其他问题,建议查看官方文档或寻求技术支持。
希望以上内容对你有所帮助!如果还有其他问题,请随时提问。 各类知识收集 拥有多年CMS企业建站经验,对 iCMS, Fastadmin, ClassCMS, LeCMS, PbootCMS, PHPCMS, 易优CMS, YzmCMS, 讯睿CMS, 极致CMS, Wordpress, HkCMS, YznCMS, WellCMS, ThinkCMF, 等各类cms的相互转化,程序开发,网站制作,bug修复,程序杀毒,插件定制都可以提供最佳解决方案。