织梦二次开发

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 188|回复: 0

[入门知识] 织梦模板中隐藏字段仅对会员显示

[复制链接]

61

主题

63

帖子

836

积分

管理员

Rank: 9Rank: 9Rank: 9

金币
38
贡献
735
发表于 2019-10-29 15:04:12 | 显示全部楼层 |阅读模式
织梦模板中隐藏字段仅对会员显示功能如何处理?一朋友私信请求问题。


在织梦模板中,做些改动,也是可以实现的。例如:电话号码,下载地址等等。

前提是织梦开启会员功能,已经有了自定义字段。

一、建立文件 ajax_loginsta_c.php

建立名称为ajax_loginsta_c.php的php文件,放到/member/目录下,内容如下:

  1. <?php
  2. require_once(dirname(__FILE__)."/config.php");
  3. AjaxHead();
  4. if($myurl == '')
  5. {
  6. exit('');
  7. }
  8. if ($cfg_ml->fields['rank'] >= '20')
  9. {
  10. $row = $dsql->GetOne(" Select * From `dede_addonarticle` where `aid`=$val ");
  11. echo $row['字段英文名'];
  12. }
  13. ?>
复制代码


说明,上边三处根据自己情况修改。 1,上述中数字20,指的是会员级别值,织梦默认注册会员是10,在后台调整会员级别时可以自己设置

2,上述dede_addonarticle,是默认文章模型的附加表名,你用的别的模型请对应附加表;

3、字段英文名,这个在你新增字段时会有对应的英文名称。

二、织梦模板文件修改

1、首先模板头部引入文件

  1. <script language="javascript" type="text/javascript" src="{dede:global.cfg_cmsurl/}/include/dedeajax2.js"></script>
  2. <script language="javascript" type="text/javascript">
  3. <!--
  4. function CheckLogin_c(){
  5.       var taget_obj = document.getElementById('_userlogin_c');
  6.   var req = document.getElementById('hid').value;
  7.   myajax = new DedeAjax(taget_obj,false,false,'','','');
  8.   myajax.SendGet2("{dede:global.cfg_cmspath/}/member/ajax_loginsta_c.php?val="+req); DedeXHTTP = null;}
  9. -->
  10. </script>
复制代码


2、在你要显示自定义字段的位置引入

  1. <span id="_userlogin_c"><a href="/member/index_do.php?fmdo=user&dopost=regnew">请注册后查看!</a></span>
  2.         <input type="hidden" value="{dede:field.aid/}" id="hid" />
  3.         <script language="javascript" type="text/javascript">CheckLogin_c();</script>
复制代码




这样就实现了!说明:上述 span 标签内的内容可以自己定义,id值不能修改。





回复

使用道具 举报

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

本版积分规则

QQ|织梦二次开发

GMT+8, 2019-12-8 06:40 , Processed in 0.182352 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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