|
发表于 2018-3-20 08:40:21
|
显示全部楼层
|阅读模式
来自 中国–河南–新乡–牧野区
DEDECMS会员信息在个人模板info和index的调用问题
会员index.php以及变量文件index_do.php都由变量控制,首页模板在index.php中改写,其他文件则在会员文件夹下Inc/space_action.php中有说明
会员信息在个人模板info和index的调用问题,好长时间没解决 论坛发帖没人回答 看了一晚上代码 自己解决了。
会员个人空间 index.htm 、 listarticle.htm不能像infos.htm模板一样使用
<?php echo GetEnumsValue('pfirst',$row['pfirst']); ?> 语句来调用自定义联动数据,会报错
会员index.php以及变量文件index_do.php都由变量控制,首页模板在index.php中改写,其他文件则在会员文件夹下Inc/space_action.php中有说明。
以下为例子,要让index.htm同样和infos.htm一样调用处联动数据,header.htm跟随模板文件的改动而相应,比如infos支持,这个页面的header.htm加在调用会成功,否则失败报错。
将Inc/space_action.php文件中的
- /*---------------------------------
- 个人资料
- function infos(){ }
- -------------------------------------*/
- else if($action=='infos')
- {
- include_once(DEDEDATA.'/enums/nativeplace.php');
- include_once(DEDEINC."/enums.func.php");
- $row = $dsql->GetOne("select * from `dede_member_person` where mid='{$_vars['mid']}' ");
- $dpl = new DedeTemplate();
- $dpl->LoadTemplate(DEDEMEMBER."/space/{$_vars['spacestyle']}/infos.htm");
- $dpl->display();
- }
复制代码
拷贝到index.php 经过筛选后的此位置,
- /*-----------------------------
- //会员空间主页
- function space_index(){ }
- ------------------------------*/
- else
- {
- require_once(DEDEMEMBER.'/inc/config_space.php');
- if($action == '')
- {
- include_once(DEDEINC."/channelunit.func.php");
- $dpl = new DedeTemplate();
- $tplfile = DEDEMEMBER."/space/{$_vars['spacestyle']}/index.htm";
复制代码
改写方式如下
- /*-----------------------------
- //会员空间主页
- function space_index(){ }
- ------------------------------*/
- else
- {
- require_once(DEDEMEMBER.'/inc/config_space.php');
- include_once(DEDEDATA.'/enums/nativeplace.php');/*--后添加复制过来--*/
- include_once(DEDEINC."/enums.func.php");/*--后添加复制过来--*/
- if($action == '')
- {
- include_once(DEDEINC."/channelunit.func.php");
- $row = $dsql->GetOne("select * from `dede_member_person` where mid='{$_vars['mid']}' ");/*--后添加复制过来--*/
- $dpl = new DedeTemplate();
- $tplfile = DEDEMEMBER."/space/{$_vars['spacestyle']}/index.htm";
复制代码
综上所述 只要在相应的位置添加以下三条数据即可
- include_once(DEDEDATA.'/enums/nativeplace.php');/*--后添加复制过来--*/
- include_once(DEDEINC."/enums.func.php");/*--后添加复制过来--*/
- $row = $dsql->GetOne("select * from `dede_member_person` where mid='{$_vars['mid']}' ");/*--后添加复制过来--*/
复制代码
备注:相应的其他页面只需要在 Inc/space_action.php 统一添加三条语句即可
|
|