记录日常点点滴滴,欢迎来到我的小站。

0%

前阵子小V接到某客户反馈,说是怀疑网站是不是被黑了,没买多久的空间网站空间就用掉了1.2G多。当时小V也觉得奇怪,虽然客户的wordpress网站是图片站,不过小V看了下文章数量和每篇文章的图片平均大小,应该占用那么多空间啊?当时觉得非常奇怪,正好前天好机油源码集合找小V更换友链的关键词,小V突然想到源码以前曾经找过小V询问过wordpress自动产生的缩略图占用大量网站空间问题。小V立即登录客户的空间查看,果然是缩略图在作祟。wordpress在后台写文章时通过通过“添加媒体”上传,或者直接在“多媒体”中上传的图片都会产生三个缩略图版本,原意是为了方便用户快速的插入不同尺寸的缩略图。

1
2
3
4
5
6
7
function v7v3_remove_image_size($sizes) {
unset( $sizes['small'] );
unset( $sizes['medium'] );
unset( $sizes['large'] );
return $sizes;
}
add_filter('image_size_names_choose', 'v7v3_remove_image_size');
阅读全文 »

同get_post_meta()一样,用于返回文章的自定义字段值得一个函数,只不过get_post_custom()函数使用起来更简单,如果在循环中使用你甚至不需要设置任何参数。

其实get_post_custom()函数的基础实现与get_post_meta()大同小异,在这里不做过多赘述,

get_post_custom()使用

1
get_post_custom($postid);
阅读全文 »

wordpress大概从wp-3.8开始会自动加载Open Sans字体,并引用Google上面的CSS样式。而最近谷歌经常打不开,导致网站访问速度过慢,严重的会拖慢几十秒。Open Sans字体主要用于WP站点管理员登陆后顶部功能条的字体样式,而对于国内用户来说,Google会出现经常打不开或者访问速度过慢的情况,所以会拖延站点的打开速度。当然,如果没有登录后台直接访问站点,不会出现加载字体的问题。 通过观察代码可以看到,WP是这样加载字体的,在script-loader.php(wp-3.9)的580行代码进行加载。

1
2
3
<link rel="stylesheet" id="open-sans-css" href="//fonts.googleapis.com/css?
family=Open+Sans%3A300italic%2C400italic%2C600italic%2C300%2C400%2C600&amp;
subset=latin%2Clatin-ext&amp;ver=3.9.1" type="text/css" media="all">

那该怎么去掉呢?方法主要有4个:插件过滤、functions.php过滤、一键替换程序代码、GoAgent翻墙

阅读全文 »

get_the_ID() 返回当前文章的ID号,此标签必须在主循环里。

用法:

示例:

eg1:

1
2
3
4
5
6
7
8
9
10
11
12
13
<?php

$id = get_the_ID();

$dropdown = "<select name='dropdown-".$id."' >";

$dropdown.="<option id='option1-".$id."'>Option 1</option>";

$dropdown .= "</select>";

echo $dropdown;

?>
阅读全文 »

在PHP5.3.3 中安装wordpress 3.9 ,在安装时出现错误:Strict Standards: PHP Strict Standards: Declaration of Walker…..的解决办法:

出现错误提示:Strict Standards: PHP Strict Standards: Declaration of Walker_Page::start_lvl() should be compatible with that of Walker::start_lvl() in E:\Webroot\wordpress\wp-includes\classes.php on line 1199 PHP Strict Standards: Declaration of Walker_Page::end_lvl() should be compatible with that of Walker::end_lvl() in E:\Webroot\wordpress\wp-includes\classes.php on line 1199 PHP Strict ……..
错误原因:
这是由于 php 5.3版本后。要求继承类必须在父类之后定义。否则就会出现Strict Standards: PHP Strict Standards: Declaration of …. should be compatible with that of …. 的错误提示。也就是说必须父类在前,继承类在后。
错误参考页面。bugs点php点net/bug.php?id=46851 (不能发表带链接的网址) 上面清楚地解释了出现此类错误的具体原因。
解决办法:在wordpress3.0.1 文件中,找到 wp-admin\setup-config.php 文件。在require_once('../wp-includes/compat.php'); 上面添加一句:
error_reporting(E_ALL & ~(E_STRICT | E_NOTICE));
问题解决。
这句话的意思是错误报告设置:显示所有错误,但是除了严格错检查或者错误报告。也就是说PHP5.3.3 不执行严格错误检查。也不显示错误提示。跳过严格错误检查。

WordPress自带的搜索功能其实比Google自定义搜索更加智能,尤其是文章内链比较多的博客。但是使用Google自定义搜索可以减少WordPress数据库的查询,对于共享主机来说好处也是明显的。当然,Google自定义搜索的内容也受制于Google对WordPress的收录情况。

第一步:整合 Google 自定义搜索之前肯定必须要先让 Google 为你服务,通过访问 http://www.google.com/cse/ 创建你的搜索引擎。创建完毕后进入“外观”面板,选择“全宽”的布局模式。保存后进入“获取代码”,获得你的 Google 自定义搜索代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
<!-- Put the following javascript before the closing </head> tag. -->
<script>
(function() {
var cx = '015818537936328944739:nkbsvpppu5k';
var gcse = document.createElement('script'); gcse.type = 'text/javascript'; gcse.async = true;
gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') +
'//www.google.com/cse/cse.js?cx=' + cx;
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(gcse, s);
})();
</script>

<!-- Place this tag where you want both of the search box and the search results to render -->
<gcse:search></gcse:search>
阅读全文 »

今天在网上找了半天,都没有找到比较好的关于如何升级wordpress的教程,终于费了九牛二虎之力,终于把自己的博客升级了,下面就写一下关于如何手动升级wordpress的教程。

手动升级wordpress教程分以下五步战略:

1、备份wordpress资料,特别建议,为安全起见。(本人升级的时候没有备份资料,但是把数据库备份了,关于如何备份可以看我的博客介绍。)

2、下载最新版的wordpress 4.7,当然你也可以去wordpress官网去下载。

3、删除主机上的wp-includes和wp-admin目录。

4、把解压在本地电脑的wordpress文件夹中除了wp-content目录外的所有文件都上传并覆盖到你博客主机相对应的位置。遇到是否覆盖时,选择全部覆盖就是了。

5、运行http://你的博客地址/wp-admin/upgrade.php,执行升级。

好了,按照以上方法,保证完全成功手动升级wordpress