在别人博客看到了一个需要输入密码才能访问文章的功能,像下图一样

typecho也是有这个功能,不需要插件就可以实现。在编辑文章时,右边高级选项,公开度里有个密码保护可以选择

效果图

不过这样的界面不是很友好,至少标题还是要显示出来的,不然也吸引不了人
下面就来修改下代码
代码路径:
var/Widget/Abstract/Contents.php
找到这页代码,应该在740行左右,将以下三行注释掉,注释是在代码前加上“//”,另外在修改下代码,让界面友好些

//$value['title'] = _t('此内容被密码保护');

//$value['tags'] = array(); 

//$value['commentsNum'] = 0;

效果图

标题能被看到了,输入界面也友好了些,只是我不会PHP和CSS,不然也可以做美观些。。。
附修改后的代码,不懂PHP的可以看下,照这样子修改就可以了

if ($value['hidden']) {
            $value['text'] = '<form class="protected" action="' . $this->security->getTokenUrl($value['permalink'])
                . '" method="post">' .
             '<p class="easyPieChart"><input type="password" class="text" name="protectPassword" size="10" placeholder="此文章已被隐藏,请输入密码查看" style="background-color:rgb(246, 244, 236);"/>
              <input type="submit" class="submit" value="' . _t('提  交') . '" /></p>' .
             '</form>';

            //$value['title'] = _t('此内容被密码保护');
            //$value['tags'] = array();
            //$value['commentsNum'] = 0;
        }

需要特别提醒的是, 在 nginx/apache 中不要自定义 403 错误页 ,因为 nginx/apache 自定义错误页优先于 typecho,一旦设置就不会出现输密码的页面,而是显示 403 错误页了

typecho设置文章密码保护的更多相关文章

  1. centos7设置grub密码保护

    设置grub密码保护:查看grub登录用户名cat /etc/grub.d/01_users,可以看到用户名为root.通过grub2-setpasswords设置grub密码,确认密码 cat /b ...

  2. umask 权限设置文章

    文章来源 https://www.starduster.me/2014/12/29/use-umask-to-config-sftp-upload-files/ 最近遇到一点事,需要开放工作室服务器的 ...

  3. PHPCMS v9设置文章的审核功能

    对于新建的站点,如果想设置会员发布的文章必须通过审核后才能发布,则需要以下几步来完成: 1.根据需要自定义管理员角色或选择已有角色. 步骤:设置->管理员设置->角色管理->权限设置 ...

  4. 优化dedecms设置文章url自定义规则

    DEDECMS自定义URL规则的做得还是不错的,可清楚的看到URL中可用到的变量,并且这些变量包括年月日.时间戳.文章 ID.拼音+文章ID.拼音部首.栏目目录及日期加ID转换的字符串等,基本可以很好 ...

  5. 关于typecho发布文章后的错位

    今天发布了一篇文章,发布后发现,what?主页错位了,安装控制变量法知道,肯定是这篇文章有什么不可告人的秘密. 所以,顺便使用一下二分法查找一下为啥,最后找到是因为使用了---------->( ...

  6. dedecms设置文章分页后,标题会带有序号的解决方法

    至于删除分页后标题后面的序号,找到include/arc.archives.class.php 打开,找到 if($i>1) $this->Fields['title'] = $this- ...

  7. Vim PHP环境设置文章

    可能有重复: 在ubuntu 上配置vim的PHP开发环境 http://blog.csdn.net/robertaqi/article/details/6117546 手把手教你把Vim改装成一个I ...

  8. Typecho文章设置永久链接

    说明 想要给Typecho文章一个独立的url,或按照自己的格式来 这时候我们就要设置永久链接 Typecho设置文章永久链接 设置伪静态 伪静态设置要取决于是nginx还是apache,详情请参考& ...

  9. 帝国cms文章内容tags关键词设置调用方法以及tags静态化

    说实话帝国cms用起来真的不好找一些功能,就比如说帝国cms的tag标签调用.需要注意的是帝国CMS文章的关键词和tags标签并非一码事,关键词标签是设置文章的关键词的,是用来给搜索引擎说明本篇文章的 ...

随机推荐

  1. unity零基础开始学习做游戏(五)看看你的完成度,进度条了解一下?

    -------小基原创,转载请给我一个面子 上回书说道,英雄和魔王都做完了,子弹也能发射了,就是不知道啥时候能干死魔王.那小基得做个血条来展示一下,他离死不远了(•౪• ) 其实血条也可以看作是进度条 ...

  2. Centos7查看IP

    查看IP ip addr : lo: <LOOPBACK,UP,LOWER_UP> mtu qdisc noqueue state UNKNOWN qlen link/loopback : ...

  3. cocos2d-x 欢乐捕鱼游戏总结

    这几天一直都在做一个捕鱼游戏Demo,大概花掉了我快一个礼拜的时间.游戏主体是使用的cocos2d-x高级开发教程里面提供的小部分框架基本功能.然后自己加入所有的UI元素和玩法.变成了一个体验不错的捕 ...

  4. thinkphp实现文件上传

    文件上传详细讲解 http://www.thinkphp.cn/info/194.html 上传根目录不存在问题解决方法 http://www.thinkphp.cn/topic/10779.html

  5. Python 装饰器(Decorator)

    装饰器的语法为 @dec_name ,置于函数定义之前.如: import atexit @atexit.register def goodbye(): print('Goodbye!') print ...

  6. mysql中enum类型理解

    ENUM是枚举类型,它虽然只能保存一个值,却能够处理多达65535个预定义的值.下面是我写的一个mysql语句 CREATE TABLE student( id INT(11) PRIMARY key ...

  7. Mysql中MyISAM引擎和InnoDB引擎的比较

    结论 如果不清楚自己应该用什么引擎,那么请选择InnoDB,Mysql5.5+的版本默认引擎都是InnoDB,早期的Mysql版本默认的引擎是MyISAM MyISAM 和 InnoDB的适用场景 M ...

  8. springcloud禁用动注册正在运行的服务

    @EnableDiscoveryClient(autoRegister=false)或者在配置文件里spring.cloud.service-registry.auto-registration.en ...

  9. centos tftp和samba的安装与配置

    Tftp服务器的安装于配置 1 安装: 命令:#yum –y install tftp 2 安装完毕之后,将tftp服务器设置为开机启动,方法:(命令)#setup→选择system server→选 ...

  10. Scrapy爬虫框架第五讲(linux环境)【download middleware用法】

    DOWNLOAD MIDDLEWRE用法详解 通过上面的Scrapy工作架构我们对其功能进行下总结: (1).在Scheduler调度出队列时的Request送给downloader下载前对其进行修改 ...