所有主流浏览器都支持visibility属性,visibility的默认值是:visible可见。
visibility:hidden的效果是隐藏,但是跟display:hidden不一样visibility隐藏但是保留占有文档流,而display:hidden隐藏即不占有文档流。
所有主流浏览器都支持visibility属性,visibility的默认值是:visible可见。
visibility:hidden的效果是隐藏,但是跟display:hidden不一样visibility隐藏但是保留占有文档流,而display:hidden隐藏即不占有文档流。
有些wordpress站长每次一次文章时都会在意有没有人去关注时都会添加一个统计阅读插件,其实完全没有必要去安装wordpress插件这个累赘,考虑wordpress安全性我们使用纯代码实现此功能。
1,修改functions.php
把下列代码添加进functions.php里,保存,然后上传(记得把原文件重命名作为备份)
[code]function getPostViews($postID){
$count_key = ‘post_views_count’;
$count= get_post_meta($postID, $count_key, true);
if($count==”){
delete_post_meta($postID,
$count_key);
add_post_meta($postID,
$count_key, ‘0’);
return
“0 View”;
}
return
$count.’ Views’;
}
function
setPostViews($postID) {
$count_key
= ‘post_views_count’;
$count
= get_post_meta($postID, $count_key, true);
if($count==”){
$count
= 0;
delete_post_meta($postID,
$count_key);
add_post_meta($postID,
$count_key, ‘0’);
}else{
$count++;
update_post_meta($postID,
$count_key, $count);
}
}[/code]
2,修改single.php
把下列代码加进single.php
[code]<?php setPostViews(get_the_ID()); ?>
<?php echo getPostViews(get_the_ID()); ?>[/code]
3,修改archive.php,sidebar.php
这里根据自己情况需要,archive.php是分类目录sidebar.php是边侧栏,如果需要它们也实现效果就可以把下面的代码加到文件里面。
[code]<?php echo getPostViews(get_the_ID()); ?>[/code]
添加完成保存文件上传回空间,这里在跟一些不是很熟练的站长说下,修改或者添加php代码一定要做好备份,php语言的格式不是这么容易的,加错地方或者格式不会网站直接报错,有这些备份还可以返回添加前的样子,没有这些备份那就麻烦了,没有备份,你就准备重新安装一个全新的wordpress然后在下载相对应的主题,从里面把这些文件下载出来替换掉错误的文件。
在使用wordpress建站的时候我们会发现在上传同命名文件的时候两个名字一样的文件上传时后者会覆盖之前的文件,
这样会导致图文不一致,这样对于使用老版本的wordpress站长来说是一个麻烦,但是升级就会把原来优化修改过的代码覆盖掉,
其实使用两种方法可以解决如下:
第一种方法:
找到wordpress程序的根目录下的/wp-admin/includes/file.php文件,编辑,找到以下代码,如下图所示 (你也可以使用搜索功能,搜索Move the file to the uploads dir)
[code]// Move the file to the uploads dir
$new_file = $uploads[‘path’] . “/$filename”;
if ( false === @ move_uploaded_file( $file[‘tmp_name’], $new_file ) )
return $upload_error_handler( $file,
sprintf( __(‘The uploaded file could not be moved to %s.’ ), $uploads[‘path’] ) );[/code]
2、将上述代码替换为:(当然你也可以装上述代码注释,方便以后还原)
[code]// Move the file to the uploads dir
$new_file = $uploads[‘path’] . “/”.date(“YmdHis”).floor(microtime()*1000).”.”.$ext;
if ( false === @ move_uploaded_file( $file[‘tmp_name’], $new_file ) )
return $upload_error_handler
( $file, sprintf( __(‘The uploaded file could not be moved to %s.’ ), $uploads[‘path’] ) );[/code]
保存file.php,这样就可以实现wordpress上传图片自动重命名了。
以上代码意思就是,保存后覆盖原文件,那么上传文件就会以“年月日时分秒+千位毫秒整数”的格式重命名文件。这就再也不用担心图片文件名相同而覆盖了原文件。
第2种方法:
在我们wordpress网站模板目录(wp-content\themes\模块文件名\)下的functions.php中加入以下代码 ,直接放在functions.php文件的最后(注意是 ?> 之前,如下图)就可以。
[code]function new_filename($filename) {
$info = pathinfo($filename);
$ext = empty($info[‘extension’]) ? ” : ‘.’ . $info[‘extension’];
$name = basename($filename, $ext);
return substr(md5($name), 0, 20) . $ext;
}
add_filter(‘sanitize_file_name’, ‘new_filename’, 10);[/code]
保存functions.php,就可以了。
以上代码将文件名称在上传过程中就自动重命名了。名字规则为系统自动生成的一个32位的MD5加密文件名。(因为32位文件名有点长,所以我们在substr(md5($name), 0, 20) 中截断了将其设置为20位).
PS:两种方法各有所长,第一种方法不会因为更换模板而导致失效,第二种方法如果更换模板就需要重新加入代码。