JS+CSS实现微信二维码显示

严格来说,这只是使用JS来控制DIV显示/隐藏,配合微信二维码,就显得高大上和实用多了。

演示效果,把鼠标放在右上角的微信图标上。

JS+CSS显示二维码
JS+CSS显示二维码

1,添加JS代码在</head>前;

<script type="text/javascript">
function  showImg(){
document.getElementById("wxImg").style.display='block';
}
function hideImg(){
document.getElementById("wxImg").style.display='none';
}
</script>

wxImg是二维码图片的包围DIV。

2,HTML代码如下:

<div id="kalated-weixin">

	<a href="javascript:void(0)" onMouseOut="hideImg()"  onmouseover="showImg()">
		<img class="wx" src="http://www.czqiushi.com/wp-content/uploads/2015/10/wx.png">
	</a>

</div>
	<div id="wxImg" style="display:none; right: 120px; top: 50px;back-ground:#f00;position:absolute; z-index:999;">
		<img class="wx" src="http://www.czqiushi.com/wp-content/uploads/2015/10/weixin.jpg">
	</div>

3,接下来就是调整CSS来美化外观了。

wordpress4.2 菜单里的“显示选项”无法打开

自从升级到4.2版本后,目前是4.2.2,进入 外观-菜单,是无法打开“显示选项”的。

目前来看这是WORDPRESS4.2版本的BUG,所以如果你想给菜单自定义CSS、修改target等操作,需要修复这个BUG。

暂时解决办法:

用WordPress 4.1版wordpress\wp-admin目录的nav-menus.php替换WordPress 4.2正式版的同名文件即可。

下载文件nav-menus

备忘一下:WordPress内插入百度地图

百度地图:http://api.map.baidu.com/lbsapi/creatmap/

创建地图 百度地图生成器

根据提示应该很快便能制作一个地图,注意:

1,定位中心点,当前城市需要手动切换;

2,设置地图,如果地图尺寸偏小,应该取消勾选地图缩略图

获取代码后,需要注意的几点:

1,第4行的代码必要时需要将gb2312改为UTF-8;

<meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″ />

2,分析代码,可以将JS和DIV分别加入header.php和编辑器内,但这个操作有点麻烦。

方法二(推荐):

第一步,将复制后的代码,进行如上修改后,保存为baidu-map.html;

第二步,在编辑器,插入iframe,代码类似如下:

<iframe src=”路径/baidu-map.html” scrolling=”no” border=”0″ frameborder=”0″ style=”width:508px;height:335px;”></iframe>

需要修改width 和 height,还有引用正确的路径。

利用Robots.txt优化你的WordPress站点

很多建站新手对robots.txt文件的重要作用不是很清楚,利用这篇文章普及一下WordPress站点robots.txt文件编写知识。

Robots协议(也称为爬虫协议、机器人协议等)的全称是“网络爬虫排除标准”(Robots Exclusion Protocol),网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取。

搜索引擎机器人访问网站时,首先会寻找站点根目录有没有 robots.txt文件,如果有这个文件就根据文件的内容确定收录范围,如果没有就按默认访问以及收录所有页面。另外,当搜索蜘蛛发现不存在robots.txt文件时,会产生一个404错误日志在服务器上,从而增加服务器的负担,因此为站点添加一个robots.txt文件还是很重要的。

知道Robots协议的作用后,下面具体说一下WordPress站点如何编写robots.txt文件。

WordPress站点默认在浏览器中输入:http://你的域名/robots.txt,会显示如下内容:

User-agent: *
Disallow: /wp-admin/
Disallow: /wp-includes/

这是由WordPress自动生成的,意思是告诉搜索引擎不要抓取后台程序文件。

但这是远远不够的,比较完整的WordPress站点robots.txt文件内容如下:

User-agent: *
Disallow: /wp-admin/
Disallow: /wp-content/
Disallow: /wp-includes/
Disallow: /*/comment-page-*
Disallow: /*?replytocom=*
Disallow: /category/*/page/
Disallow: /tag/*/page/
Disallow: /*/trackback
Disallow: /feed
Disallow: /*/feed
Disallow: /comments/feed
Disallow: /?s=*
Disallow: /*/?s=*\
Disallow: /attachment/

使用方法:新建一个名称为robots.txt文本文件,将上面的内容放进去,然后上传到网站根目录即可。

下载地址:http://pan.baidu.com/s/1pJHqAbp

下面分别解释一下各项的作用:

1、Disallow: /wp-admin/、Disallow: /wp-content/和Disallow: /wp-includes/

用于告诉搜索引擎不要抓取后台程序文件页面。

2、Disallow: /*/comment-page-*和Disallow: /*?replytocom=*

禁止搜索引擎抓取评论分页等相关链接。

3、Disallow: /category/*/page/和Disallow: /tag/*/page/

禁止搜索引擎抓取收录分类和标签的分页。

4、Disallow: /*/trackback

禁止搜索引擎抓取收录trackback等垃圾信息

5、Disallow: /feed、Disallow: /*/feed和Disallow: /comments/feed

禁止搜索引擎抓取收录feed链接,feed只用于订阅本站,与搜索引擎无关。

6、Disallow: /?s=*和Disallow: /*/?s=*\

禁止搜索引擎抓取站内搜索结果

7、Disallow: /attachment/

禁止搜索引擎抓取附件页面,比如毫无意义的图片附件页面。

上面只是些基本的写法,当然还有很多,不过够用了。

转载:利用Robots.txt优化你的WordPress站点

使用WordPress子主题解决频繁升级主题的困扰

一个优秀的WordPress主题是需要不停的修改和完善,有时也是从安全角度出发,所以势必要不断的推出升级版。如果从功能上来看,我们无需因升级而升级,但是如果遇到代码漏洞等问题,我们必须选择升级。但是通常我们在做网站时,都会对主题作一些小的修改,譬如说做国内站可能会涉及到清除GOOGLEAPIS等链接;针对产品展示,可能会修改single-xxx.php文件;最常见的是自定义CSS。那么在升级wordpress主题(升级WP主题其实就是把旧主题删除掉,用新主题传上去就可以了)时,采用覆盖文件方式,那我们之前修改过的内容就会丢失,由于时间久了,我们就会忘记修改过哪些内容,同时每次升级都要修改一次的体验也实在太糟糕了。

那么如何将主题升级到最新版本,而又能保留之前的修改呢?答案很简单,使用WordPress子主题功能,升级后无需再次修改原主题。下面就以Modernize主题为例,创建一个Modernize主题的子主题。

一、在WordPress主题目录(themes)新建一个主题文件夹,名称任意,比如:modernize-child(这个命名没有要求)。
二、在modernize-child目录下,创建两个文件(functions.php和style.css)并做一张图片(图片名:screenshot.png)。
三、编辑functions.php,填写以下内容:

<?php

/*
* Add your own functions here. You can also copy some of the theme functions into this file.
* WordPress will use those functions instead of the original functions then.
*/

四、编辑style.css,填写以下内容:

/*
Theme Name: Modernize Child
Description: Awesome documents in Kalated.com
Version: 1.0
Author: Kalated
Author URI: http://wenda.kalated.com
Template: modernize-v3-17
*/

@import url(“../modernize-v3-17/style.css”);
/*Add your own styles here:*/

特别注意以上代码出现的两处modernize-v3-17,这个名称必须要和父主题文件夹名称相同。这样子主题才能继承父主题的功能和正确引用CSS文件。

五、先安装父主题但不启用,再安装子主题并启用。

六、自定义CSS时,直接在上文提到的子主题的style.css内添加CSS代码即可。如果要修改源代码,必须将父主题内的相应文件复制到子主题内,再进行修改。举例如下:

1,修改modernize-v3-17/single-portfolio.php文件,将single-portfolio.php复制到modernize-child目录下,再进行相应修改;

2,修改modernize-v3-17/include/plugin/page-item.php文件,这时我们需要先在modernize-child目录下,新建include文件夹,进入include文件夹新建plugin文件夹,接着将page-item.php复制到这里,再作相应的代码修改。

对比以上两个例子,

modernize-v3-17/single-portfolio.php

modernize-child/single-portfolio.php

modernize-v3-17/include/plugin/page-item.php

modernize-child/include/plugin/page-item.php

我们可以看出,子主题的文件的路径必须和父主题的文件路径一致才可以。至此我们已经完整的创建了子主题和修改源码,在日后的升级中,只需要将modernize-v3-17删除,将新主题上传即可。

但是要注意一点,如果新升级的主题文件夹名不再是modernize-v3-17,而是变成modernize-v3-18,我们回到以上第四步的内容,需要将两处modernize-v3-17改为modernize-v3-18。

LINUX下自动导出数据库.sql文件/备份网站

最近接触了独立服务器,遇到一系列问题,CENTOS系统都装了好几遍,似乎终于OK了。针对其中的遇到的问题做一个笔记和总结及分享,也是以便日后查阅。

1,在目录/home/backup下建立文件backup.sh后,执行 chmod +x /home/backup/backup.sh ,意思是赋其执行权限,backup.sh的内容如下:

#!/bin/sh

date=`date +”%Y%m%d”`
#获取日期,将其作为压缩包后缀,以便识别。

rm -f /home/backup/filename_`date -d ‘-60 days’ +%Y%m%d`.zip
#删除60天前的备份的压缩包,可见服务器上将有60个每日备份包。

/usr/local/mysql/bin/mysqldump –opt -uroot -pPASSWORD DBNAME > /home/wwwroot/sqlfilename.sql
#使用mysqldump命令执行导出.sql,注意-uroot中root是数据库登录名(中间没有空格),-pPASSWORD中-p是参数,PASSWORD是密码。
#DBNAME是数据库名,将导出sqlfilename.sql存放到/home/wwwroot目录下。

zip -r /home/backup/filename_$date.zip /home/wwwroot/website /home/wwwroot/sqlfilename.sql
#zip命令将 [网站目录website和sqlfilename.sql] 打包,并存放到/home/backup目录下。

2,添加自动备份规则

A. 运行 crontab -e 命令,将会打开一个文件,此时相当于是用vi打开了一个文件。
vi操作需要先敲击i,进入编辑状态:
10 23 * * * /home/backup/backup.sh 粘贴进去。
接着按ESC键,敲击:wq,回车保存退出。

B. 解释一下 10 23 * * *的意思:每天的23点10分运行backup.sh脚本,如果想每天中午11:30呢,那么便是 30 11 * * * 。
可见它的规则是crontab文件的格式:M H D m d.
M: 分钟(0-59)。
H:小时(0-23)。
D:天(1-31)。
m: 月(1-12)。
d: 一星期内的天(0~6,0为星期天)。

C. 必要时需要执行以下来重启crond服务:

/etc/init.d/cron stop
/etc/init.d/cron start

或者是

service crond start #启动服务
service crond stop #关闭服务
service crond restart #重启服务

3,如果是centos系统,默认是没有zip, crontab 软件的,所以要提前安装它们。

yum install zip #安装zip

yum install vixie-cron #安装cron主文件
yum install crontabs #安装次文件

chkconfig –level 35 crond on #执行此命令,以便系统重启自动开启cron

总结:以上只是将mysql的数据库导出,并和网站文件一起压缩,存放在服务器的某个目录下。并没有实现异地(传到其它服务器上)。还需要继续扩展backup.sh即可。

进一步学习可以参考:http://www.laozuo.org/?s=%E8%87%AA%E5%8A%A8%E5%A4%87%E4%BB%BD

LNMP状态管理命令

LNMP状态管理命令:

LNMP状态管理: /root/lnmp {start|stop|reload|restart|kill|status}
Nginx状态管理:/etc/init.d/nginx {start|stop|reload|restart}
MySQL状态管理:/etc/init.d/mysql {start|stop|restart|reload|force-reload|status}
Memcached状态管理:/etc/init.d/memcached {start|stop|restart}
PHP-FPM状态管理:/etc/init.d/php-fpm {start|stop|quit|restart|reload|logrotate}
PureFTPd状态管理: /etc/init.d/pureftpd {start|stop|restart|kill|status}
ProFTPd状态管理: /etc/init.d/proftpd {start|stop|restart|reload}

如重启LNMP,输入命令:/root/lnmp restart 即可,单独重启mysql:/etc/init.d/mysql restart

LNMPA状态管理命令:

LNMPA状态管理: /root/lnmpa {start|stop|reload|restart|kill|status}
Nginx状态管理:/etc/init.d/nginx {start|stop|reload|restart}
MySQL状态管理:/etc/init.d/mysql {start|stop|restart|reload|force-reload|status}
Memcached状态管理:/etc/init.d/memcached {start|stop|restart}
PureFTPd状态管理: /etc/init.d/pureftpd {start|stop|restart|kill|status}
ProFTPd状态管理: /etc/init.d/proftpd {start|stop|restart|reload}
Apache状态管理:/etc/init.d/httpd {start|stop|restart|graceful|graceful-stop|configtest|status}

解决PHP环境Warning: scandir()问题

安装Wordpress偶尔会出现Warning: scandir()问题,分享一下解决方法:

Warning: scandir() has been disabled for security reasons in /home/wwwroot/…
Warning: Invalid argument supplied for foreach() in /home/wwwroot/…

错误。开始以为是文件权限问题,检查下来结果发现不是,改了权限没有生效,后来打开探针,发现原来是因为php里面的scandir函数被禁用了。
解决办法:
打开php.ini(路径:/usr/local/php/etc/php.ini),找到这行:
disable_functions = scandir,passthru,exec,system,chroot,chgrp,chown,shell_exec,proc_open,

proc_get_statu,ini_alter,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,

readlink,symlink,popepassthru,stream_socket_server,fsocket,fsockopen

去掉scandir保存并重起php-fpm即可。

很多函数问题,都有可能是php禁用了,大家需要的时候去掉就可以了,为了安全尽量少开启!

【治标更要治本】如何解决国内访问WORDPRESS网站奇慢的问题?

2014-09-20 0-15-13

不管是前台或后台,Wordpress网站都有机会遇到访问慢的问题。用Chrome访问网站,右键-查看元素,如果网站慢的情况下,你会看到如上图所示几个载入错误,反之不慢你看不到任何红XX。原因是GFW封锁了GOOGLE几乎所有的服务,而WORDPRESS主程序和相关的主题/插件都会用到GOOGLE托管的字体/前端公共库/GOOGLE公共库文件,问题找到了,那我们就来解决一下。

用到以下两个工具:

1,http://libs.useso.com/  360网站卫士常用前端公共库CDN服务(虽然360这事干得漂亮,但还是不喜欢它。:P)。

2,http://www.wingrep.com/download.htm    批量查找多个文件中的某个关键词(这工具不得不说,实在太牛X了)。

首先下载网站所有内容到本地,通过工具2查找关键词googleapis,分别打开这些文件,用useso批量替换googleapis(请打开工具1的网址,它有修改提示)。接着分别把这些修改的文件传到服务器上相当的目录下吧。

通常意义上来说,本节内容结束了,网站就会访问正常。但是有时候也会遇到奇怪的事,这时候我们必须用右键-查看元素来验证一下。仍然慢的话你还会看到提示错误,我遇到的情况是有一个useso的链接错误,这时候就要对照一下之前修改的几个文件,找到对应此链接的文件。直接将此链接内容注释掉(用//或/* */),狠一点就直接删除掉。记得备份!!

如仍有问题,欢迎本文下方写评论给我。