Typecho根据访客cookies显示隐藏访客基本信息

这个标题我也不知道起得是否准确,姑且就这样子叫吧。Typecho的默认主题,都是没有自动隐藏访客信息的,意思就是说,访客第一次输入基本信息留言后,那昵称,邮箱,网址,还是光秃秃在那里,不会自动的收缩起来。我也不知道什么时候开始,也纠结这个问题了。想着,要是能收缩起来该多好啊~

于是就有了开始搜索的过程,最终也是在其他人的博客发现了教程,在冰剑博客发现了教程。

 从主题的 comments.php 文件中得知:

<?php $this->remember(''); ?>

 是输出访客信息的。通过测试发现,这个是个输出函数,不能用来做判断。这个函数还有一个参数 $return ,作用是是否返回值,参数值是布尔类型,false为不返回,true为返回,默认为false。有了这个就好做了,先进行判断,看看浏览器中是否有访客的 Cookie ,如果存在的话就隐藏访客信息,并且输出有好的提示,不存在的话就直接删除资料填写框,下面看代码。

 在模版下的 comments.php 文件中找到 form 表单这一块,用一个div把资料填写的部分(昵称、EMAIL、WEBSITE)包含起来,比如:

<?php if($this->remember('author',true) != "" && $this->remember('mail',true) != "") : ?>
<p class="title welcome">
<?php _e('欢迎'); ?><strong><?php $this->remember('author'); ?></strong><?php _e('童鞋归来,'); ?><a class="edit_author" href="#"><?php _e('编辑资料 »'); ?></a>
</p>
<div class="author_info" style="display:none;">
<?php else : ?>
<div class="author_info">
<?php endif ; ?>
<p class="title">
<label for="author"><span class="required">*</span><?php _e('昵称代号'); ?></label>
</p>
<p>
<input type="text" name="author" id="author" class="text" size="15" value="<?php $this->remember('author'); ?>" />
</p>
<p class="title">
<label for="mail"><?php if ($this->options->commentsRequireMail): ?><span class="required">*</span><?php endif; ?> <?php _e('电子邮件'); ?></label>
</p>
<p>
<input type="text" name="mail" id="mail" class="text" size="15" value="<?php $this->remember('mail'); ?>" />
</p>
<p class="title">
<label for="url"><?php if ($this->options->commentsRequireURL): ?><span class="required">*</span><?php endif; ?> <?php _e('博客地址'); ?></label>
</p>
<p>
<input type="text" name="url" id="url" class="text" size="15" value="<?php $this->remember('url'); ?>" />
</p>
</div>

代码的意思就是,查看 Cookie 中的author、email是否为空,不为空的话就隐藏资料框并显示欢迎语句,如果为空的话就显示资料框。

Typecho 访客信息显示隐藏

就这么几句代码,隐藏显示的功能就完成了,剩下的就是添加JS,把那个“编辑资料”的A标签给加上功能。这个就交给你们去折腾了吧,或者看灰狼博客的JS文件。

Typecho 访客信息显示隐藏

相关文章:http://www.binjoo.net/post/1025

查看 JavaScript comments Typecho的相关文章

转载本站原创文章请注明:文章转自 灰狼IT路,链接: http://itlu.org/articles/1930.html

已有 12 条评论

  1. 来学习一下

  2. 欢迎 天长地久 童鞋归来,编辑资料 »

    我的显示是这个

    童鞋,两个字上面还可以做文章哦

    1. 你有什么想法呢?

      1. 兄台,
        施主,
        阁下,
        大人,
        贱贱,

      2. 难道有手工定义,谁是施主,谁是阁下?感觉有点不靠谱。随机也不是很好。这个没有记录会员信息,无法去定义每个“会员”的属性

  3. 技术文,各种膜拜。

    1. 比较简单的技术文吧

  4. 面临节日快到了先祝贺楼主节日快乐,祝贺楼主幸福,圆满,安康一家团聚重阳节快乐
    www.ltxxzs.com 北京幼儿园装饰

    1. 1,你所说的节日,重阳节,14号已经过了。2,来我这里打这种广告是完全没效果的。3,别浪费你的时间了,真的。

  5. 这个不错啊

  6. 很棒,已经用上了。感谢博主

    1. 非常高兴可以帮助到你。话说你的域名后缀也太小众了吧

添加新评论