缓存Google Web 字体

WordPress 终于也升级到了4.0,默认主题会加载google web font,这导致wp加载异常的慢。

鉴于google 的部分网站长期处于被Q的状态。我朝子民还是尽量自备“梯子”,以便出墙。

在这里推荐红杏的chrome插件,简单实惠,不用复杂的设置,不用到处找代理,安装即可用。

红杏 按照这个链接购买红杏,你和我可以获取10天的奖励。不用谢。

回到正题

新版的WordPress为了优化主题,会加载open sans的字体。所以在页面的head中可以看到类似这样的链接:

通过特殊手段打开这个文件,我们可以看到类似这样的css代码:

@font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: 300;
src: local('Open Sans Light'), local('OpenSans-Light'), url(http://fonts.gstatic.com/s/opensans/v10/DXI1ORHCpsQm3Vp6mXoaTSUUniRZcd_wq8DYmIfsw2A.woff2) format('woff2');
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
}

这段css代码会去加载google font的静态站点。那些没有“梯子”的人们,博客就会异常的慢。因为打不开google font的静态站点。为了响应博主们的号召,解决google 字体的问题,博主开发了Cache Google Font插件。

Cache Google Font插件会去查找类似的链接,直接下载css文件到本地,然后根据css文件中的链接去下载google font,并缓存到本地。是不是很智能?:)。

欢迎大家试用。

Cache Google Font插件已经上传到WordPress 的插件目录

项目托管在GitHub上,如果使用中遇到bug,请直接提Issues

wordpress 3.0 中使用session

wordpress在处理query variables时,会对$_GET和$_POST变量进行处理,大概是这样子:对$_GET和$_POST数组进行遍历,将数据的key处理为php变量,举个例子,有一个值为$_GET['category_name'] or $_POST['category_name']的query variables,wordpress处理后就会把它变为$category_name变量,这样就可以使用$category_name变量了。

然后就会华丽的忽略SESSION。在3.0版本中在wp-includes/load.php下第23行,唯独没有Session变量!
[cce_php]
// Variables that shouldn’t be unset
$no_unset = array( ‘GLOBALS’, ‘_GET’, ‘_POST’, ‘_COOKIE’, ‘_REQUEST’, ‘_SERVER’, ‘_ENV’, ‘_FILES’, ‘table_prefix’ );
[/cce_php]

那我要想在wordpress中使用SESSION,该怎么办咧?

我们可以使用Filter Reference,手动开启SESSION

具体代码如下,例如我想在single模板下特定的文章页面使用Session

[cce]
//开启SESSION
add_action('init','session_manager');
function session_manager(){
session_start();
}
add_filter('single_template','session_single');
function session_single(){
//判斷特定的文章頁面
if(is_single('108') || is_single('106') ||is_single('74') || is_single('131') || is_single('128')){
$_SESSION[session_id()] = true;
}
}
[/cce]

参考资源:

Enabling Sessions in WordPress 3.0

How To: Enable the Use of Sessions On Your WordPress Blog

wordpress对请求的处理 简单架构

WordPress Code Flow

wp-setting.php文件详解

视频短代码

在WordPress中有很多种方法插入视频,当WordPress自带的插入视频又比较笨,当然也有一些插件像WordPress Video Plugin,smart-video,这些插件用起来也很不 “听话”,你说我首页要输出摘要的,你也播放视频,这就不靠谱了…..

所以就自己写了一个插件,添加了几个短代码,可以添加国内的视频。

1. 支持视频网站的列表:

  • 优酷
  • 土豆
  • 搜狐
  • 腾讯视频
  • 乐视
  • 酷6
  • 56

2. 支持直接粘贴视频地址,Video Short Code插件会自动转为视频短代码。支持以上视频网站,暂时不支持搜狐视频。

Update:2013.4.4


关于如何查找视频的code,以youku视频为例
例如http://player.youku.com/player.php/sid/XXXXXXX/v.swf
XXXXXXX为视频代码
使用方法

Update:2013.4.5
Video Short Code插件上传到WordPress的插件目录,可在WordPress后台直接搜索Video Short Code,进行安装。

Update:2014.9.16

  1. 更新插件到1.1
  2. 支持直接粘贴部分视频网站的视频URL。

项目托管在GitHub上,如果使用中遇到bug,请直接提Issues