discuz x2 个人资料项排序问题解决方法、添加自定义字段、修改栏目名称和介绍

第一次写文章,希望与人提供方便同时,别误人子弟,自己研究的,大家看不懂只改文件就可以了,如果发现不对的地方请回复或直接通知我,谢谢,本来想在discuz论坛上发的,不懂版规也没时间看版规,怕发错,隔小jj怎么办?

(一)个人资料项排序问题解决方法

首先说明一下情况,昨天在做网站的个人资料项时发现后台可以设置排序的(图一)数字越大越往下,但是用户页面(图2)却是一直不变,比如新添加的字段想让他排在第一,在网上找了好久都没有搜索到(或许是我不会搜索)看了大半天,看懂了点,

(图2)

(图2 修改后的效果)

个人资料排序修改原理:每个标签下的资料项(如图中宝宝资料)都是以数组后在序列号的方式储存到数据库中的,这样自然就不能再排序了(排序也是在数组中处理按字母什么的排序,这样也不方便),查看文件include/spacecp/spacecp_profile.php文件,我们观察到,它先获取每个大项下属的每个小项以数组的形式,然后根据小项获取每个小项的html代码(就是后面的文本框、下拉框了),我们在获取小项后在对对数组中的每个小项根据原理后台设置的排序进行再次排序,在让它获取html代码就搞定了。

步骤:打开spacecp_profile.php文件

在大概423行下面 紧贴(搜索下面代码也可)

$htmls = $settings = array();

上面添加如下代码:

//二次开发 <<< 个人资料修改页面各选项排序问题解决

$noorder = array(‘idcardtype‘,‘idcard‘,‘zipcode‘,‘sightml‘,‘customstatus‘,‘timeoffset‘);

$jiaoji = array_intersect($noorder,$allowitems); //计算两个数组的交集,不计算的话个人签名和时区不显示

if(empty($jiaoji)){ $query = DB::query(‘SELECT fieldid FROM ‘.DB::table(‘common_member_profile_setting‘)." WHERE fieldid IN (".dimplode($allowitems).") ORDER BY displayorder ASC");

$allowitems=array(); //清空原来的小项的数组,以便对新数组排序

while($value = DB::fetch($query)) { $allowitems[$value[‘fieldid‘]] = $value[‘fieldid‘]; } }

//二次开发 >>>*/

计算交集问题$jiaoji  是因为不过不计算的话,个人签名和地区好像不显示,交集里的其他元素我也不知道是上面懂得,反正我的效果实现了,你们看哪里有需要的地方再修改吧。

(二 )添加N多自定义字段

原来discu x2 自带的自定义只有8个,比如我今天不高兴,心里又比较变态,想在加几十个怎么办,在数据表里

(三)修改栏目名称和栏目介绍

discux 系统自带的栏目和栏目介绍是不可以修改的,我们新添添加的fieldN也是不可以修改的,要修改的话可以在数据库中一个个改,这样比较麻烦,修改方法:

打开source/admincp/admincp_members.php

搜索:

$field[‘customable‘] = preg_match(‘/^field[1-8]$/i‘, $fieldid);

只修改我们新添加的field自定义字段可以修改栏目名称和描述的方法(把[1-8]改为\d+)

$field[‘customable‘] = preg_match(‘/^field\d+$/i‘, $fieldid);

修改系统所有字段;

$field[‘customable‘] = preg_match(‘/.*/i‘, $fieldid);

这样就可以很方便的修改栏目名称和介绍了 O(∩_∩)O~

(系统原代的学历栏目可以修改了)

时间: 2024-10-13 05:12:43

discuz x2 个人资料项排序问题解决方法、添加自定义字段、修改栏目名称和介绍的相关文章

Discuz! X2.5 添加自定义数据调用模块(简单方法)

转:http://521-wf.com/archives/46.html Discuz! X2.5 添加自定义数据调用模块(简单方法) Discuz!X系列的diy功能还是相当不错的,在对其进行二次开发的过程中,或许需要加入新的数据调用模块,这样可以使你开发的功能模块也像原来的模块一样,只需要点点鼠标,填写一些简单的信息,就可以在各个页面的各个位置显示你想显示的数据啦. 以下就目前最新版X2.5做一个简答的介绍:大致可以分为以下三个步骤:一.添加数据调用程序二.后台更新diy模块分类缓存三.添加

备份:Discuz!X2伪静态后部分链接动态的解决方法

原来新浪sae不用了,备份之前的一篇文章,发布时间是2011年11月9日. 康盛创想的核心产品--Discuz! X2发布以后,测试安装了一下,整体感觉非常不错,相对于CMS来说,DZ毕竟是论坛出身,门户模块差了许多,但仍不失为地方门户的建站首选. 最近,重新上线的雪地靴之家就采用了Discuz! x2 搭建,当一切安装与设置就绪后,发现一个问题,关于伪静态问题. 问题描述: 在后台开启全部伪静态后,打开网站首页(我设置的是门户为首页)发现有的链接是静态.有的链接是动态,这是怎么回事呢?搜索了半

Unable to execute dex: method ID not in [0, 0xffff]: 65536 问题解决方法

开始一个新项目的时候,Build工程的时候一直报这个错误: 控制台报错误:Conversion to Dalvik format failed: Unable to execute dex: method ID not in [0, 0xffff]: 65536 看别人有说在project.properties里面加上dex.force.jumbo=true,尝试了一下,不成功, 后来遍访名山高人,查各种资料,各种尝试,终于成功解决了 原因可能是因为adt升级等原因,在Java_Buildpat

PhpCms V9中的{date(&#39;Y-m-d&#39;,$r[inputtime])}问题解决方法

不少朋友会碰到这个问题:在PhpCms V9中的首页或者文章内容页调用发布时间{date('Y-m-d',$r[inputtime])}调用显示1970-01-01,然后尝试用截断的方法也没有成功,应怎么办? 有朋友建议“先转换成时间格式,在截取吧”,具体代码为“{str_cut($inputtime,12,$dot='')}”,还有人说“{$updatetime} 直接用这个调用就好了”,但是很多朋友还是没有成功! 下面我来具体说明下调用不成功的真实的原因,以及解决方法! 第一,或许你是没有正

【IOS】IOS开发问题解决方法索引(一)

IOS开发问题解决方法索引(一) 1       Xcode工程调试时无法命中断点的问题 若没有勾选LLVM Compiler 1.6 –> CodeGeneration –> Generate Debug Symbols 一项,则程序调试时无法命中断点. 2       Xcode调试时查看变量的几种方法 Xcode如何查看内存中的数据 http://blog.csdn.net/evgd2288/article/details/8995779 Xcode的Debug中查看数据细节的方法 ht

XCODE5 导入项目出现问题解决方法

错误代码:No architectures to compile for (ONLY_ACTIVE_ARCH=YES, active arch=x86_64, VALID_ARCHS=armv7 armv7s) 1  xcodebuild 这个target的时候命令行报错.(yes  改为no) 2  在Archive项目时,出现了"Your build settings specify a provisioning profile with the UUID "", how

空格&amp;nbsp在不同浏览器中显示距离不一致问题解决方法

  在ie.firefox.chrome浏览器上显示的效果不太一样,主要是前面的空格宽度不同. 网上资料说不同的浏览器会有不同的默认字体,一般 IE默认字体都是宋体,而firefox和chrome的默认字体是Times New Roman,宋体是字符等宽的字体,但Times New  Roman不是字符等宽的字体,因为浏览器默认字体的不同,空格符 在不同的浏览器下面的显示宽度也不同. 例如以下代码分别以IE和chrome进行测试 [html] view plaincopy <table> &l

Discuz!X2 附件分表与主题图片表解析

1.背景: 在 Discuz! X2 中,将原有的1个附件表和1个附件描述表合并,然后分为了 11 个表,在很大程度上加强了论坛对于附件数据量的支持,同时减轻在附件记录非常多的情况下,造成服务器负载比较高的问题. 同时增加了一个主题图片表,如果一个主题的楼主贴包含有图片附件,则将会将这些附件中宽度最大的图写入到这个表. 2.附件表解释: pre_forum_attachment 附件索引表 pre_forum_attachment_0 附件分表 0 pre_forum_attachment_1

Discuz! X2如何禁止帖子发外链和签名链接

很多用discuz 的朋友们都知道,论坛一打开,很多广告.注册机等等的都来发广告,且先不说那些文章.帖子里的广告,但论坛里面的帖子签名广告就听让人烦的. 一打开论坛,进去一看,擦,那么多的广告,尤其是那些签名,看起来乱糟糟的,眼晕.毕竟自己的论坛有它自己的作用,不是像百度贴吧那种,给闲人们留的. 现在写些方法,禁用掉那些签名的链接,也同时公布出来禁止发外链的方法. 如果感觉有用,就请帮忙点击下博客的广告,支持下楼主吧. Discuz! X2为例:(1)禁止帖子链接后台-用户-用户组-编辑允许发站