找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1323|回复: 0

[分享] DEDECMS会员信息在个人模板info和index的调用问题

[复制链接]
发表于 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文件中的


  1. /*---------------------------------
  2. 个人资料
  3. function infos(){ }
  4. -------------------------------------*/
  5. else if($action=='infos')
  6. {
  7. include_once(DEDEDATA.'/enums/nativeplace.php');
  8. include_once(DEDEINC."/enums.func.php");
  9. $row = $dsql->GetOne("select * from `dede_member_person` where mid='{$_vars['mid']}' ");
  10. $dpl = new DedeTemplate();
  11. $dpl->LoadTemplate(DEDEMEMBER."/space/{$_vars['spacestyle']}/infos.htm");
  12. $dpl->display();
  13. }
复制代码


拷贝到index.php 经过筛选后的此位置,

  1. /*-----------------------------
  2. //会员空间主页
  3. function space_index(){ }
  4. ------------------------------*/
  5. else
  6. {
  7. require_once(DEDEMEMBER.'/inc/config_space.php');
  8. if($action == '')
  9. {
  10. include_once(DEDEINC."/channelunit.func.php");
  11. $dpl = new DedeTemplate();
  12. $tplfile = DEDEMEMBER."/space/{$_vars['spacestyle']}/index.htm";
复制代码


改写方式如下

  1. /*-----------------------------
  2. //会员空间主页
  3. function space_index(){ }
  4. ------------------------------*/
  5. else
  6. {
  7. require_once(DEDEMEMBER.'/inc/config_space.php');
  8. include_once(DEDEDATA.'/enums/nativeplace.php');/*--后添加复制过来--*/
  9. include_once(DEDEINC."/enums.func.php");/*--后添加复制过来--*/
  10. if($action == '')
  11. {
  12. include_once(DEDEINC."/channelunit.func.php");
  13. $row = $dsql->GetOne("select * from `dede_member_person` where mid='{$_vars['mid']}' ");/*--后添加复制过来--*/
  14. $dpl = new DedeTemplate();
  15. $tplfile = DEDEMEMBER."/space/{$_vars['spacestyle']}/index.htm";
复制代码

综上所述 只要在相应的位置添加以下三条数据即可

  1. include_once(DEDEDATA.'/enums/nativeplace.php');/*--后添加复制过来--*/
  2. include_once(DEDEINC."/enums.func.php");/*--后添加复制过来--*/
  3. $row = $dsql->GetOne("select * from `dede_member_person` where mid='{$_vars['mid']}' ");/*--后添加复制过来--*/
复制代码


备注:相应的其他页面只需要在 Inc/space_action.php 统一添加三条语句即可

发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;

如何回报帮助你解决问题的坛友,好办法就是点击帖子下方的评分按钮给对方加【金币】不会扣除自己的积分,做一个热心并受欢迎的人!

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 需要先绑定手机号

关闭

站长推荐上一条 /1 下一条

QQ|侵权投诉|广告报价|手机版|小黑屋|西部数码代理|飘仙建站论坛 ( 豫ICP备2022021143号-1 )

GMT+8, 2025-1-11 00:08 , Processed in 0.046341 second(s), 8 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表