网站菜单

自定义WordPress网站屏蔽搜索特殊关键字的办法

前天晚上看到某个网友的留言关于需要将自己的WordPress网站在搜索关键字的时候屏蔽特殊关键字,不清楚这样做法的用意。以前老左见过有这样子的插件可以解决的,只不过现在一时半会想不到是什么名字了,于是就搜索网络上有没有其他的解决办法。 这里直接通过无插件的办法自定义解决的,我们一起看看解决办法吧: 第一、添加Functions.php add_action('admin_init', 'uicss_search_ban_key'); function uicss_search_ban_key() { add_settings_field('uicss_search_key', '搜索关键词屏蔽', 'uicss_search_key_callback_function', 'reading'); register_setting('reading', 'uicss_search_key'); } function uicss_search_key_callback_function() { echo '' . get_option('uicss_search_key') . ''; } add_action('template_redirect', 'uicss_search_ban'); function uicss_search_ban() { if (is_search()) { global $wp_query; $uicss_search_key = get_option('uicss_search_key'); if ($uicss_search_key) { $uicss_search_key = str_replace("\r\n", "|", $uicss_search_key); $BanKey = explode('|', $uicss_search_key); $S_Key = $wp_query->query_vars; foreach ($BanKey as $Key) { if (stristr($S_Key['s'], $Key) != false) { wp_die('请不要搜索特殊关键字'); exit; } } } } } 这个脚本是在uicss.cn/bad-bot 这篇文章借鉴的,必须留下出处以示尊敬。添加完毕之后,我们再去WP后台看看。 第二、添加屏蔽关键字 在后台 设置-阅读 选项中,添加关键字,一行一个关键字。添加保存之后,我们这样就可以解决特殊关键字的搜索屏蔽问题。

Typecho Nginx环境根目录与子目录伪静态规则文件

一般情况下,我们会将网站程序安装在站点根目录,这样我们使用伪静态规则的时候直接调用配置文件默认的就可以实现。但是,我们也有一些时候需要将网站程序安装到二级目录(根目录下面的独立文件夹中),这样可以实现二级目录/子目录独立频道站点的效果。今天有遇到需要在子目录安装Typecho程序的需要。这里我们就将两种可能的Typecho Nginx系统下的伪静态规则分享如下。 第一、根目录Typecho 规则 location / { index index.html index.php; if (-f $request_filename/index.html){ rewrite (.*) $1/index.html break; } if (-f $request_filename/index.php){ rewrite (.*) $1/index.php; } if (!-f $request_filename){ rewrite (.*) /index.php; } } 第二、子目录伪静态规则 location /子目录文件夹/ { if (-f $request_filename/index.html){ rewrite (.*) $1/index.html break; } if (-f $request_filename/index.php){ rewrite (.*) $1/index.php last; } if (!-f $request_filename){ rewrite (.*) /子目录文件夹/index.php last; } } 如果我们是在同一个站点有2个TYPEHO或者其他程序,谁在子目录中就将子目录的规则丢进配置文件中,注意需要修改子目录文件夹名称。 最后,重启Nginx检查是否报错,如果不报错应该是没有问题的。

为您的网站添加SSL安全认证签章

为网页添加一个在页面右下角悬浮SSL安全认证签章图片,点击图片后会跳转到MYSSL的ssl证书评级页面,你也可以修改跳转路径,改成自己的图片也可以,只要你能想到的都可以前提是你要会改,关于样式看下图右下角。

Typecho获取文章最后更新时间

在介绍方法之前先讲述一下PHP的时间戳与具体时间转化的内容,有利于理解我所用到的方法 php中三个内置函数 time() //获取系统时间戳 mktime(hour,minute,second,month,day,year) //将指定时间转化为时间戳 date(时间格式,时间戳) //将时间戳转化为方便阅读的时间 time -> date: $now = time(); echo "时间戳是 " .$now; echo "创建日期是 " . date("Y/m/d h:i:s", $now); 输出:时间戳是 1458586366创建日期是 2016/3/22 2:52:46 mktime -> date: $d=mktime(2, 52, 46, 3, 22, 2016); echo "时间戳是 " .$d; echo "创建日期是 " . date("Y/m/d h:i:s", $d); 输出:时间戳是 1458586366创建日期是 2016/3/22 2:52:46 Typecho获取文章时间获取文章的发布的时间戳 $this->created(); 获取文章的发布时间 $this->date('F jS , Y \\a\t h:i a'); 输出:March 22nd , 2016 at 02:48 am 获取文章的更新的时间戳 $this->modified(); 获取文章的更新时间 echo date('F jS , Y \\a\t h:i a' , $this->modified); 输出:March 22nd , 2016 at 02:51 am 差不多就这样了,摸索了比较久才搞定。

PHP订单号的生成

前阵子,公司有个电子商务项目,需要生成订单号。当时的考虑很简单,取系统时间加上随机数,或者使用 uniqid() 方法。我们都知道,订单号最基本的要求就是唯一,这个条件必须满足。仔细考虑下上述方法,在顾客购买量少的情况下,订单重复的可能性为零,但是在购买高蜂期生成的订单号重复是很有可能发生的。所以上述方法不可靠,有待强化。 在网上找了一番,发现这位同学的想法挺不错的,redtamo,具体的请稳步过去看看,我作简要概述,该方法用上了英文字母、年月日、Unix 时间戳和微秒数、随机数,重复的可能性大大降低,还是很不错的。使用字母很有代表性,一个字母对应一个年份,总共16位,不多也不少,呵呵。 生成效果: A422694333616096唉,不过很可惜,最后项目并没有使用这种方法,说是没必要搞这么复杂, - -! 话说,不想争执,不用也没关系,我就写个笔记,以后备用。

关于PHP中 “@” 的用法

读了好多PHP程序,发现有好些地方都有用到"@"字符,问了几个网友,虽然回答的不是很清楚,但依然感谢她们。 下面就简单说说: @可以忽略错误,有抑制错误的功能,即有错不会中断执行,是错误控制操作符. 例如: function db_connect() //连接数据库 { @$db =mysql_connect('localhost','book','test'); if(!$db) throw new Exception('连接数据库失败!请重试!'); mysql_select_db('book'); return $db; } 在上面的代码中:如果连接数据库不成功的,前面的“@”就能把错误显示给抑制住,也就是不会显示错误,然后再抛出异常,显示自己定义的异常处理,添加这个只是为了让浏览者看不到不友好的页面,并不能抑制住错误,只能抑制显示错误!