任何问题请联系WX:uu16853

买模板送网站采集器 让你轻松放开双手运营网站!

购买更多有优惠!

无缝整合 Google 自定义搜索框到 WordPress

第一次登场,先跟大家自我介绍下。本人昵称 Packy,是一名小小站长,响应 Denis 兄的号召来与大家分享WordPress的技巧。要说WordPress的基础肯定是比不过 Denis 兄的,但是我滴折腾欲望非常强,擅长在 Google 翻箱倒柜后整合各家所长,本地测试有效果后才会来郑重的发布文章哟。 言归正传,今天我给大家分享的是无缝整合 Google 自定义搜索框的技巧。早在08年 Denis 就写过一篇整合Google自定义搜索到WordPress中的教程,可以达到强化搜索、减轻数据库读取和赚取利润的各种好处。其中的第6步是用 Google 的搜索框代替主题本身的搜索框,但是现在使用国外主题和付费主题的朋友越来越多了,这类主题都有一共同效果——界面UI棒!拥有精美搜索框的主题也不在少数,如果让你放弃原先精美的搜索框,而用 Google 那简单单一的搜索框是不是会有点不舍呢? 不用担心,接下来 Packy 教你一步步无缝整合 Google 自定义搜索框,可以在不修改原搜索框的前提下使用 Google 强大的自定义搜索功能。 如果你是第一次整合Google自定义搜索,可以按照我的步骤来;如果你对代码较了解,可以根据你的需要选择性的看。 第一步:注册并获取 Google 自定义搜索代码 整合 Google 自定义搜索之前肯定必须要先让 Google 为你服务,通过访问 http://www.google.com/cse/ 创建你的搜索引擎。创建完毕后进入“外观”面板,选择“全宽”的布局模式。保存后进入“获取代码”,获得你的 Google 自定义搜索代码: <!– Put the following javascript before the closing </head> tag. –> <script> (function() { var cx = ‘015818537936328944739:nkbsvpppu5k’; […]

WordPress 教程:创建多人博客作者页面

根据前面的 WordPress 技巧:创建博客作者页面 的介绍,今天咱们来完成一个适合多人博客的作者存档页面。可以显示作者的网站,邮箱和个人履历等这些资料,让读者更多地了解这个作者。 第一步:添加适合你博客的资料选项。 添加符合自己需求的资料选项比如: Twitter、Facebook、Google+、新浪微博、腾讯微博、搜狐微博、我的豆瓣、QQ 空间和删除不符合自己需求的资料选项比如: YIM AIM Jabber 资料选项,在 functions.php 文件中添加如下代码: add_filter( ‘user_contactmethods’, ‘ts_add_contact_fields’ ); function ts_add_contact_fields( $contactmethods ) { $contactmethods[‘twitter’] = ‘Twitter’; $contactmethods[‘googleplus’] = ‘Google+’; $contactmethods[‘facebook’] = ‘Facebook’; $contactmethods[‘weibo’] = ‘新浪微博’; $contactmethods[‘tencent’] = ‘腾讯微博’; $contactmethods[‘sohu’] = ‘搜狐微博’; $contactmethods[‘douban’] = ‘我的豆瓣’; $contactmethods[‘qzone’] = ‘QQ空间’; unset( $contactmethods[‘yim’] ); unset( $contactmethods[‘aim’] ); unset( $contactmethods[‘jabber’] ); […]

WordPress 插件:“即将推出” Widget

出于维护博客更新频率,或精雕细琢文章时督促自己及时完成,我们会在 WordPress 中把该篇文章设为“定时发布”(Schedule)。如果能在网站显示出这些预定发布的文章,应该会吸引读者继续关注你的博客吧? 思路 把即将推出的文章显示在侧边栏是个好办法,不过很多主题都只能以小工具的形式在侧边栏添加内容。所以,不得言的办法,仍稍显不便。实际上,这个功能和 WordPress 中内置的近期文章 Widget 十分相似。 在 WordPress 的 wp-includes/default-widgets.php 第503行(WordPress 3.3.1,其他版本可能不同)处找到相关代码。 关键语句 找到代码: $r = new WP_Query(array(‘posts_per_page’ => $number, ‘no_found_rows’ => true, ‘post_status’ => ‘future’, ‘ignore_sticky_posts’ => true)); 将 publish 改为 future,应该就可以实现功能。 修改后的完整代码 经过一番尝试,改好的 widget 类代码如下: /** * Upcoming_Posts widget class */ class WP_Widget_Upcoming_Posts extends WP_Widget { function __construct() { $widget_ops […]

WordPress 技巧:自定义后台用户联系方式

在 WordPress 后台,个人设置(Profile)中,除了可以设置电子邮件和 Website 之外,还可以设置自己的联系方式,比如 AIM, Yahoo IM, Jabber/Google Talk。但是除了 Gtalk 之外,其他两个中国人基本不用,那么如何去掉我们基本不用的 AIM 和 Yahoo IM,并加上国人常用的 QQ, MSN 和飞信呢? 其实在 WordPress 中实现这样的功能是非常容易的,只需要调用下 custom_contactmethods 这个 WordPress Filter 既可以实现在后台支持常用的 QQ, MSN 和飞信等联系方式,代码如下: <?php /* Plugin Name: Custom Contact Plugin URI: http://wpjam.com/ Description: 自定义博客的联系方式,从 WordPress 默认的 AIM, Yahoo IM 改为中国常见的 QQ, MSN 和飞信。 Version: 1.0 Author: Neekey Author […]

WordPress 批量替换插件 Search & Replace 和中文包

Search and Replace(搜索和替换)是一个允许你搜索和替换数据库中任意文本的 WordPress 插件。 Search and Replace 介绍 Search and Replace 使用非常简单,在后台插件添加页面,搜索 Search and Replace,点击安装并激活之后,到后台 > 工具 > 搜索和替换就能使用到这个插件,然后就可以对 WordPress 数据库中那个数据表中哪个字段进行替换操作,你只需要输入想搜索和替换的文本,点击替换即可。 WordPress 批量替换插件 Search & Replace 这个插件在对博客内容进行大批量相同修改动作的时候,特别有用,比如博客的图片更换了服务器,图片地址都更改了,就可以使用这个插件一次性修改所有的图片地址。 Search and Replace 存在的风险 但是这个插件同样也在存在着风险,因为它是直接使用 SQL 进行文本替换,它直接操作修改了数据库,并且这样的修改时不可撤销的,所以不建议 WordPress 初级用户使用这个插件,对于 WordPress 有一定熟悉的用户,建议使用这个插件进行操作之前,对数据库进行备份,这样万一出错还有修正的机会。 Search and Replace 是直接使用 MySQL 的 Replace 进行替换操作的,所以这个插件是大小写敏感的,并且不支持使用正则表达式进行文本替换,所以这是这个插件小小的一个缺憾,但是它完整的界面和易用性,保证了它能够完成了我们大部分的批量文本修改替换工作,并且这个插件只在后台使用,所以使用之后我们可以直接关闭它,完全不会占用任何系统资源。 Search and Replace 中文版 因为经常使用这个插件,所以就给这个插件制作了中文包,下载地址:Search & Replace 和中文包。 […]

使用 SSH 导入和导出数据库

一般我们是使用 PHPMyAdmin 进行数据库的操作,但是 PHPMyAdmin 是基于 PHP 构建的一个程序,对文件的大小有限制,而有时我们的数据库又特别大,怎么办呢?其实我们还可以通过 SSH 进行数据库导入和导出的操作。 使用 SSH 导出数据库 mysqldump -u 数据库用户名 -p 数据库密码 –add-drop-table –complete-insert 数据库名 | gzip > db_wpjam.sql.gz 导出数据库为 db_wpjam.sql.gz 使用 SSH 导入数据库 先把 db_wpjam.sql.gz 解压缩: gzip -d db_wpjam.sql.gz 然后导入: mysql -u 数据库用户名 -p 数据库密码 数据库名 < db_wpjam.sql.gz –default-character-set=utf8 标签:SSH WordPress 数据库

WordPress 技巧:获取日志中的第一个链接

我们知道 WordPress 日志格式(Post format)中有个 link 的格式,如果你的主题启用了 Post format 功能并且使用了 Link 这个格式,那么你想这篇日志直接链接到日志中的第一个链接。 function get_content_first_link( $content = false){ if ( $content === false ) $content = get_the_content(); preg_match_all(‘/<a.*?href=[\'”](.*?)[\'”].*?>/i’, $content, $links); if($links){ return $links[1][0]; }else { return false; } } 将上面的代码复制到当前主题的 functions.php,然后使用下面的方式引用: <h2><a href=”<?php echo get_content_first_link(get_the_content()); ?>”><?php the_title(); ?></a></h2> 标签:WordPress 技巧

WordPress 技巧:获取日志中的第一个图片地址

我们知道 WordPress 有个日志缩略图的功能(特色图像),需要你自己上传一张图片或者选择已有的图片,然后设置为特色图像,这样就可以在博客首页或者其他地方即可使用。但是这样比较麻烦,需要每次都要上传或者选择下,是否可以有更简洁的方法,其实我们还可以直接获取日志中的第一张图片。 function get_content_first_image($content){ if ( $content === false ) $content = get_the_content(); preg_match_all(‘|<img.*?src=[\'”](.*?)[\'”].*?>|i’, $content, $images); if($images){ return $images[1][0]; }else{ return false; } } 将上面的代码复制到当前主题的 functions.php,然后使用下面的方式引用: <img src=”<?php echo get_content_first_image(get_the_content()); ?>” alt=”<?php the_title_attribute(); ?>” /> 标签:WordPress 技巧

WordPress 技巧:获取上下篇日志的链接、标题、特色图像

我们知道 WordPress 官方提供了 previous_post_link()与 next_post_link() 这两个函数标签来制定当前文章所属分类里面的上下篇文章,但是如果要获取上下篇文章的其他参数,比如链接、标题、特色图像,实现下图的效果:我们该如何处理呢? 涉及到 WordPress 函数标签 get_next_post get_previous_post get_permalink get_the_title get_the_post_thumbnail 实现代码 <div class=”post-PrevNext”> <?php $current_category = get_the_category();//获取当前文章所属分类ID $prev_post = get_previous_post($current_category,”);//与当前文章同分类的上一篇文章 $next_post = get_next_post($current_category,”);//与当前文章同分类的下一篇文章 ?> <div class=”previous_post_link”> <?php if (!empty( $prev_post )): ?> <a href=”<?php echo get_permalink( $prev_post->ID ); ?>”><?php echo get_the_post_thumbnail( $prev_post->ID, ”, ” ); ?></a> 上一篇: <a href=”<?php echo get_permalink( […]

WordPress 技巧:在后台仪表盘显示待审日志列表

前面更换域名的日志中提到我爱水煮鱼将引入更多的作者来给大家介绍 WordPress 和其他互联网开源技术,目前供稿的作者的权限都是投稿者(contributor),它们写好日志之后,状态是待审的,这样就产生了一个问题,有时候是不会注意到有日志需要审核的,所以最好的办法就是在 WordPress 后台的首页(就是仪表盘)直接显示待审日志列表: add_action(‘wp_dashboard_setup’, ‘wpjam_modify_dashboard_widgets’ ); function wpjam_modify_dashboard_widgets() { global $wp_meta_boxes; if(current_user_can(‘manage_options’)){ //只有管理员才能看到 add_meta_box( ‘pending_posts_dashboard_widget’, ‘待审日志’, ‘pending_posts_dashboard_widget_function’,’dashboard’, ‘normal’, ‘core’ ); } } function pending_posts_dashboard_widget_function() { global $wpdb; $pending_posts = $wpdb->get_results(“SELECT * FROM {$wpdb->posts} WHERE post_status = ‘pending’ ORDER BY post_modified DESC”); echo ‘<ul>’; foreach ($pending_posts as $pending_post){ echo ‘<li><a href=”‘.admin_url().’post.php?post=’.$pending_post->ID.’&action=edit”>’.$pending_post->post_title.'</a></li>’; } echo ‘</ul>’; […]

支持全平台的 WordPress 视频插件:WPJAM Video

前面我介绍过使用 WordPress 的 Embed 功能快速插入优酷视频,不过通过这样方式插入的代码是 Flash 代码。而 iOS 系统一直不支持 Flash,所以很多 WordPress 用户写博客的时候,在插入优酷视频的 Flash 代码之后,都要添加一段话,比如:iOS 用户请点该链接查看,这样用户体验非常差,读者看视频也非常不方便。 WPJAM Video 介绍 优酷全站支持 iPad 和 iPhone,所以我研究了下优酷的 HTML5 播放器,开发这个插件,让 WordPress 博主能够非常方便在文章中插入优酷视频,支持全平台播放,在 PC 上使用 Flash 播放器播放,在 iPhone 和 iPad 上使用 HTML5 播放器播放,并且还支持缓存插件。 WPJAM Video 使用 WPJAM Video 使用也是非常简单的,它是基于 WordPress Shortcode API 实现的: 下载 WPJAM Video。 解压之后上传到插件目录,并激活。 通过以下方式添加视频: 默认情况下,视频是 480 宽,400 高,如果你要把宽度和高度设置为 […]

微博“赞” WordPress 插件:让你快速嵌入新浪微博“赞”按钮

在微博 Web 版和微博手机客户端相继上线赞按钮之后,新浪微博现在推出了可嵌入到第三方网站的赞按钮。 通过微博赞按钮,让你的用户轻松表达态度,当用户在你的站点上某个网页点击了赞按钮后,同时会同步一条包含网页内容的动态信息到微博显示。 使用微博“赞”按钮有什么好处? 1. 随时随地轻松表达态度 用户浏览网页,发现喜欢的内容,通过“赞”按钮只需轻松点击一下,即可表达心情,方便快捷 2. 发现好友 “赞”按钮同时会显示已表达态度的用户,如果您的微博好友也“赞”过,那么您将看到她/他 3. 内容同步分享 点击按钮后,用户会同步一条包含对象内容的动态信息到微博中,通过微博继续传播 WordPress 赞按钮插件 根据新浪官方文档,在网站添加赞按钮,需要修改好几个地方,非常麻烦,我制作了一个简单的 WordPress 插件,你只需上传激活,就可以在博客上快速嵌入新浪微博“赞”按钮。 下载:微博“赞” WordPress 插件 标签:WordPress 插件 新浪微博

WordPress 文章目录插件

SEO 页面优化:语义化 我们知道语义化是 SEO 页面优化的一个重点的内容,语义化不仅仅是可以尝试使用 HTML5 去重写博客主题,还有使用 H2 H3 标签让博客日志内容也更有层次化和语义化。 而使用了 H2 H3 这些标签之后,可以建立锚点链接,建立文章目录,这样不仅方便博客的读者可以一目了然知道文章的内容是讲什么,并且我么 Google 现在已经可以索引内部锚点链接。 WordPress 文章目录插件来源 对于 WordPress 博客来说,平常写博客的时候,就应该注意语义化,比如列表页,网站题目是 H1 标签,文章标题是 H2 标签,而文章页面,则标题是 H1 标签,内文从 H2 标签开始试用。 当做好上面的语义化之后,怎么自动生成锚点和文章目录呢? 现有文章目录 WordPress 插件也都有几个,但是使用都有一些麻烦,写的很复杂还要配置,不符合我使用插件的习惯,我个人的感觉就是插件只需要简单上传激活就好了,所以就有了这个 WordPress 文章目录插件。 WordPress 文章目录插件安装和使用 WordPress 文章目录插件非常简单,就是在日志的右侧加入一个文章目录,让整篇日志更好导航,读者也可以在阅读之前知道这篇文章的大概意思。 WordPress 文章目录插件 正如上面所说,这个插件异常简单,只需要上传激活即可。但是在编辑文章的时候,文章中的子标题需要按照 h2 h3 排好,插件会自动抓取的。 当然你也可以在编辑日志的时候,设置是否隐藏文章目录,以及显示到第几级目录和文章目录的位置(通过在日志中输入 [toc] 来实现定位)。 WordPress 文章目录插件设置 WordPress 文章目录插件效果 你可以通过点击这篇文章查看效果: 主机推荐:(mt) Media […]

域名更换为 blog.wpjam.com

经常关注我爱水煮鱼的同学,可能已经发现,我爱水煮鱼已经更换域名了,好吧,经过昨天超过10几个小时的奋战,终于把博客的域名从 fairyfish.net 换成 blog.wpjam.com。订阅地址也更改为:http://blog.wpjam.com/feed/,订阅的用户更改下吧。 为什么更换域名呢? 这是一个纠结了很久的问题,毕竟 fairyfish.net 这个域名,我已经使用超过了 5 年,还是蛮有感情的,但是这个域名除了其中的 fish 和水煮鱼有那么一点关系之外,前面的 fairy 真的很多人都不知道什么意思,其实我自己也不知道什么意思 只是当时糊里糊涂就申请了一个这样的域名。 还是从自己的历程说起吧,07 年的时候,自己想做一个网站,记录一些好玩的东西,选择使用 WordPress,后面在折腾 WordPress 的过程,反而对 WordPress 越来越感兴趣,内容基本上都是关于 WordPress 使用技巧,插件,主题,以及互联网其他相关技术等等,所以这个域名基本上也和内容没有什么关联了。 由于对 WordPress 越来越熟悉,我开始使用 WordPress 给朋友和商家建站,为了宣传这个业务,我购买了 wpjam.com 这个域名,所以一直想把自己的博客也是用 wpjam.com 这个域名一起,但是一直拖着,越来越多的朋友都和我说,经常来我的博客,但是都是搜索引擎来的,从来都没有记住过我的域名,好吧,是应该换了,所以最后决定启用:blog.wpjam.com 这个域名。 使用 blog.wpjam.com 又会存在一个问题,和博客名字我爱水煮鱼,完全没有关系,我又纠结了,但是至少比原来的好,大家知道 blog.wpjam.com 是一个关于 WordPress 技巧和使用经验的博客就好了,对吧? 大家觉得呢? WordPress MU 迁移的过程是简单而痛苦的,中间又忙其他事情,所以花费了10几个小时:使用 SSH 迁移博客数据,使用 SSH 导入和导出数据库,批量替换内容中的旧域名链接,调试插件和新主题,旧域名使用 301 跳转到新域名 ⋯⋯,总之最后完成了。 和原来不同的是,现在的我爱水煮鱼是运行在 WordPress MultiSite […]

Optimize DB:在 WordPress 后台优化 MySQL 数据库

为什么需要优化数据库 随着 MySQL 的使用,包括 BLOB 和 VARCHAR 字节的表将变得比较繁冗,因为这些字段长度不同,对记录进行插入、更新或删除时,会占有不同大小的空间,记录就会变成碎片,且留下空闲的空间。就像具有碎片的磁盘,会降低性能,需要整理,因此要优化。 如何优化 WordPress 数据库 而 WordPress 使用的数据库正是 MySQL,所以当你觉得 WordPress 速度比较慢的时候,对 MySQL 进行优化下,可以相当程度上提高 WordPress 的速度。我们可以通过 PHPMyAdamin 对 MySQL 表进行优化: 在 PHPMyAdmin 优化 MySQL 表 使用 Optimize DB 插件在WordPress 后台直接优化 MySQL 数据库 但是如果每次都要进入 PHPMyAdmin 优化 MySQL表,这样是非常麻烦的,今天推荐的插件:Optimize DB 就能让你在 WordPress 后台直接优化 MySQL 数据表。 该插件安装非常简单,上传激活即可,激活之后,在 WordPress 后台 > 工具(Tools) > Optimize DB […]

WordPress 技巧:批量删除不用的标签

WordPress 使用的过程中,会产生一些标签被废弃不用,时间久了,这类标签就会增多,一个个删除太累,就是批量删除,查看了下,WordPress 的分类模式,得出以下两条用于批量删除不用的标签的 SQL 语句: DELET a FROM wp_terms a,wp_term_taxonomy b WHERE a.term_id = b.term_id AND b.count=0 AND b.taxonomy=’post_tag’ DELETE b FROM wp_term_taxonomy b WHERE b.count=0 AND b.taxonomy=’post_tag’ 标签:WordPress 技巧 WordPress 数据库

WordPress 数据库维护时常用到 12 个 SQL 语句

虽然通过 WordPress 强大的插件库,你几乎可以干任何的事情,但是有时候需要快速修复一些特定的问题的时候,直接操作数据库可能反而是方便的方法,所以这篇文章就给大家介绍 WordPress 数据库维护时常用到 12 个 SQL 语句。 *注:下面假设 WordPress 数据库的表的前缀都是默认的“wp_”。 1. 直接在数据库中修改密码 密码忘记了是经常的事情,博客密码忘记了进不去,可以直接在数据库里面修改: UPDATE wp_users SET user_pass = MD5(‘PASSWORD’) WHERE user_login = ‘admin’ 上面采用了 MySQL 的 MD5() 函数讲密码转成 MD5 Hash。 2. 将日志从一个作者转移到另外一个 假如你的博客的某个作者离开了,或者你不想让“admin”作为作者名,想把日志的作者从一个改到另外一个: UPDATE wp_posts SET post_author=NEW_AUTHOR_ID WHERE post_author=OLD_AUTHOR_ID; *注:你需要知道两个作者的 user id。 3. 删除数据库中日志修订记录和其相关的 post_meta 数据 特别是针对多人博客的时候,日志修订功能很重要,但是日志修订功能也在数据库里面添加了很多的数据,假设你的博客只有 100 篇日志,每篇日志有 10 个日志修订,你的 posts 表中就会有超过 […]

Canonical 标签以及在 WordPress 中的应用

Canonical 标签,中文叫做 URL 范式,是 Google,雅虎,微软等搜索引擎在2009年一起推出的一个标签(百度在2013年也终于支持),它主要用来解决由于 URL 形式不同而造成的重复内容的问题。 Canonical 标签简介和使用 如下面这两个 URL: http://blog.wpjam.com/article/canonical-tag-and-wordpress/ http://blog.wpjam.com/article/canonical-tag-and-wordpress/trackback/ 这两个 URL 的形式不同,第一个是日志 的 URL,第二个是日志 Trackback 的 URL,不过他们的内容都是相同的,都是“Canonical 标签以及在 WordPress 中的应用”这篇日志的内容,对于搜索引擎来说,这样两个不同的 URL 是无法判断是同一篇日志的,搜索引擎为了更多收录内容,就会同时收录这两个链接,这样就造成了搜索引擎收录重复内容的问题,所以 Canonical 标签就是用来解决这个问题的。 简单说就是在网页的 html 加上这样一段代码: <link rel=’canonical’ href=’http://blog.wpjam.com/article/canonical-tag-and-wordpress/’ /> 那么任何含有这个标签的网页,不管他最终的 URL 是怎么样的形式,搜索引擎最终都会只收录 Canonical 标签指定的那个。 使用跟踪参数等等原因造成 URL 形式不同是不可避免的,所以 Canonical 对于搜索引擎来说就非常重要了,对一组内容完全相同或高度相似的网页,通过使用 Canonicl 标签可以告诉搜索引擎哪个页面为规范的网页,能够规范网址并避免搜索结果中出现多个内容相同或相似的页面,帮助解决重复内容的收录问题,避免网站相同内容网页的重复展示及权重的分散,提升规范网页的权重,优化规范网页的排名。 所以强烈建议站长们都在自己的网站上使用 Canonical 这个标签。 WordPress 默认支持 Canonical 标签 在 […]

WordPress 搬家应该注意的6件事情

1、备份程序 除了 WordPress 自身程序以外的所有文件,如附件,logo,主题等 2、备份数据库 可以用 PHPMyAdmin 等备份数据库 3、安装程序 上传第1步备份的文件到新空间,下载 WordPress 全新程序到新空间,将 wp-config.php 里面的数据库信息填写为新空间的数据库信息 4、导入数据库 将第2步备份的数据库导入新空间数据库 5、解析域名 将域名解析到空间指定的IP,等待(快的几分钟,最慢不超过48小时) 6、重设固定链接 等第5步生效后,访问网站后台,设置 – 固定链接 – 保存一次之前的固定链接。

使用 WordPress 的 Embed 功能快速插入优酷视频

在 WordPress 的 Easy Embeds 的功能让你通过直接发布一个 URL(需要单独一行,纯文本,不带链接才行),就能把这个 URL 中的视频显示到 WordPress 博客上,并且会根据博客的布局调整视频的大小。 但是默认不支持国内的优酷这个视频分享网站,我根据 WordPress 的 Embeds 接口制作了下面的插件,让你的 WordPress 博客通过一行链接就能发布优酷的视频,而无需去查找优酷的复杂而麻烦的 flash 嵌入代码。 function wp_embed_handler_youku( $matches, $attr, $url, $rawattr ) { // If the user supplied a fixed width AND height, use it if ( !empty($rawattr[‘width’]) && !empty($rawattr[‘height’]) ) { $width = (int) $rawattr[‘width’]; $height = (int) $rawattr[‘height’]; […]

WordPress 技巧:恢复链接管理器

WordPress 3.5 发布的时候,为了更加简洁易用,WordPress 就把一些不太常用的代码从核心代码中取消或者禁用,比如全新安装的 WordPress 博客在后台就没有链接管理器。但是如果你还是有很多朋友,需要交换链接,怎么办呢?WordPress 提供接口: add_filter( ‘pre_option_link_manager_enabled’, ‘__return_true’ ); 将上面的代码复制到当前主题的 functions.php 文件即可。 标签:WordPress 技巧

Canonical 标签以及在 WordPress 中的应用

Canonical 标签,中文叫做 URL 范式,是 Google,雅虎,微软等搜索引擎在2009年一起推出的一个标签(百度在2013年也终于支持),它主要用来解决由于 URL 形式不同而造成的重复内容的问题。 Canonical 标签简介和使用 如下面这两个 URL: http://blog.wpjam.com/article/canonical-tag-and-wordpress/ http://blog.wpjam.com/article/canonical-tag-and-wordpress/trackback/ 这两个 URL 的形式不同,第一个是日志 的 URL,第二个是日志 Trackback 的 URL,不过他们的内容都是相同的,都是“Canonical 标签以及在 WordPress 中的应用”这篇日志的内容,对于搜索引擎来说,这样两个不同的 URL 是无法判断是同一篇日志的,搜索引擎为了更多收录内容,就会同时收录这两个链接,这样就造成了搜索引擎收录重复内容的问题,所以 Canonical 标签就是用来解决这个问题的。 简单说就是在网页的 html 加上这样一段代码: <link rel=’canonical’ href=’http://blog.wpjam.com/article/canonical-tag-and-wordpress/’ /> 那么任何含有这个标签的网页,不管他最终的 URL 是怎么样的形式,搜索引擎最终都会只收录 Canonical 标签指定的那个。 使用跟踪参数等等原因造成 URL 形式不同是不可避免的,所以 Canonical 对于搜索引擎来说就非常重要了,对一组内容完全相同或高度相似的网页,通过使用 Canonicl 标签可以告诉搜索引擎哪个页面为规范的网页,能够规范网址并避免搜索结果中出现多个内容相同或相似的页面,帮助解决重复内容的收录问题,避免网站相同内容网页的重复展示及权重的分散,提升规范网页的权重,优化规范网页的排名。 所以强烈建议站长们都在自己的网站上使用 Canonical 这个标签。 WordPress 默认支持 Canonical 标签 在 […]

优化 WordPress 数据库,提高 WordPress 速度

WordPress 的机制是主要使用 wp_posts 表来存储所有数据,包括日志,页面,附件,导航菜单等等,所以 WordPress 使用了一定时间之后,数据量一大还是有点慢,除了对 WordPress 进行全方面的优化之外,我们还可以对数据表进行减肥和优化,来提高 WordPress 的速度。 1. 删除所有日志修订 日志修订是所有速度慢的罪恶之源,几百篇日志会有几千条日志修订的记录,所以用力删除把,提速效果非常明显: DELETE a,b,c FROM wp_posts a LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id) LEFT JOIN wp_postmeta c ON (a.ID = c.post_id) WHERE a.post_type = ‘revision’ 2. 关闭日志修订 日志修订不是好东西,你可以关闭它或者限制数据库存的修订个数: 关闭日志修订: define(‘WP_POST_REVISIONS’, false); 限制日志修订为最新的3个: define(‘WP_POST_REVISIONS’, 3); 3. 优化 wp_posts 表 对 MySQL 数据记录进行插入、更新或删除时,会占有不同大小的空间,记录就会变成碎片,且留下空闲的空间。就像具有碎片的磁盘,会降低性能,需要整理,因此要优化。 OPTIMIZE […]

WordPress 搬家应该注意的6件事情

1、备份程序 除了 WordPress 自身程序以外的所有文件,如附件,logo,主题等 2、备份数据库 可以用 PHPMyAdmin 等备份数据库 3、安装程序 上传第1步备份的文件到新空间,下载 WordPress 全新程序到新空间,将 wp-config.php 里面的数据库信息填写为新空间的数据库信息 4、导入数据库 将第2步备份的数据库导入新空间数据库 5、解析域名 将域名解析到空间指定的IP,等待(快的几分钟,最慢不超过48小时) 6、重设固定链接 等第5步生效后,访问网站后台,设置 – 固定链接 – 保存一次之前的固定链接。

使用 WordPress 的 Embed 功能快速插入优酷视频

在 WordPress 的 Easy Embeds 的功能让你通过直接发布一个 URL(需要单独一行,纯文本,不带链接才行),就能把这个 URL 中的视频显示到 WordPress 博客上,并且会根据博客的布局调整视频的大小。 但是默认不支持国内的优酷这个视频分享网站,我根据 WordPress 的 Embeds 接口制作了下面的插件,让你的 WordPress 博客通过一行链接就能发布优酷的视频,而无需去查找优酷的复杂而麻烦的 flash 嵌入代码。 function wp_embed_handler_youku( $matches, $attr, $url, $rawattr ) { // If the user supplied a fixed width AND height, use it if ( !empty($rawattr[‘width’]) && !empty($rawattr[‘height’]) ) { $width = (int) $rawattr[‘width’]; $height = (int) $rawattr[‘height’]; […]

使用 WordPress 的 Embed 功能快速插入土豆视频

WordPress 的 Easy Embeds 的功能让你通过直接发布一个 URL(需要单独一行,纯文本,不带链接才行),就能把这个 URL 中的视频显示到 WordPress 博客上,并且会根据博客的布局调整视频的大小。 但是 WordPress 默认不支持国内的土豆这个视频分享网站,我根据 WordPress 的 Embeds 接口制作了下面的插件,让你的 WordPress 博客通过一行链接就能发布土豆的视频,而无需去查找土豆的复杂而麻烦的 flash 嵌入代码。 function wp_embed_handler_tudou( $matches, $attr, $url, $rawattr ) { // If the user supplied a fixed width AND height, use it if ( !empty($rawattr[‘width’]) && !empty($rawattr[‘height’]) ) { $width = (int) $rawattr[‘width’]; $height = (int) […]

WordPress 技巧:禁用 auto-embeds (oEmbed)

WordPress 3.5 版本的升级,为了使得后台 UI 和体验更加简洁,就把一些不太常用的选项给隐藏,不让用户设置,防止用户思考和迷惑,其中 WordPress 2.9 引进的 auto-embeds 选项就取消。 默认就是激活状态,但是我们知道 WordPress Easy Embeds 支持的网站大部分都是国外的网站,对于我们用处也不大,如果我们想禁用 auto-embeds (oEmbed) 功能怎么办呢? 我们发现在 WP_Embed Class 中的构造函数中有如下的 filter: add_filter( ‘the_content’, array( $this, ‘autoembed’ ), 8 ); 所以我们只需要把这个 fliter 删除即可,但是我们不能使用 $this 这个变量,需要用到 $wp_embed 这个全局变量: // Disable auto-embeds for WordPress >= v3.5 remove_filter( ‘the_content’, array( $GLOBALS[‘wp_embed’], ‘autoembed’ ), 8 ); 代码自然贴到当前主题的 functions.php […]

使用 WordPress 的 Easy Embeds 功能

WordPress 的 Easy Embeds 功能 有没有想过,只需要在日志中输入一个视频网站或者图片分享的 URL,这个 URL 里面含有的视频或者图片就自动显示出来?这样是不是很 Cool,这个就是 WordPress 的 Easy Embeds 的功能,让你直接发布一个 URL(需要单独一行,纯文本,不带链接才行),就能把这个 URL 中的视频显示到博客上,并且会根据博客的布局调整视频的大小。 比如,在日志中直接输入这个 instagram 地址: http://instagram.com/p/TSZleFg3A3/ WordPress 就会自动把这个 URL 转化成 instagram 该页的照片: 这个就是 WordPress 2.9 引入的 Easy Embeds 功能,需要将 WordPress 的 “Auto-embeds” 的功能打开: 到了 WordPress 3.5 版本之后,WordPress 就默认支持这个功能了,没有了上面的选项。 另外还可以使用 这个 shortcode 来显示图片,使用 shortcode 就不再需要把链接放到独立的一行了。 [http://instagram.com/p/TSZleFg3A3/] oEmbed 这个 Easy Embeds […]

WordPress 技巧:在主题的文件中使用 Shortcode

如果你想用在主题文件中使用名为 [my_shortcode] 的 Shortcode,你只需要按照下面的方式使用 do_shortcode() 函数即可: <?php echo do_shortcode("[my_shortcode]"); ?> Shortcode 详细介绍和更多技巧: WordPress 技巧:使用 Shortcode 投放 Google Adsense 广告 WordPress 技巧:在侧边栏 Widgets 中使用 Shortcode WordPress 短代码(Shortcode)详细介绍和使用 WordPress 技巧:如何解决 Shortcode 中自动添加的 br 或者 p 标签 WordPress 技巧:使用 Shortcode 快速插入列表 WordPress 技巧:删除列表页的 Shortcode 标签:WordPress Shortcode WordPress 技巧

WordPress 技巧:使用 Shortcode 投放 Google Adsense 广告

前面我介绍了 Google Adsense 个人经验总结,今天介绍一个 WordPress 技巧:使用 WordPress 的 Shortcode API 投放 Google Adsense 广告,让你非常方便在文章的正文中插入广告,并且根据内容灵活控制位置,提高点击率。 一般来说我们投放 Google Adsense 广告都是修改主题或者通过插件插入到文章的左侧,最后等,或者使用 Widget 放入侧边栏等等。但是如果你想在文章的中间插入广告,那么通过技术方式还是比较难以实现或者实现的不是很完美。请示我们可以使用 WordPress 的 Shortcode 来投放 Google Adsense 广告,非常方便。首先简单来了解下什么是 Shortcode。 什么是 Shortcode Shortcode API 是 WordPress 2.5 之后新增的一个功能,简单的说就是事先定义一组的函数,由此生成对应的一个简单的短代码,然后在内容的正文中的任何地方插入这个短代码,就会调用预先定义的函数。比如:[galley] 就是调用 WordPress 默认的相册的短代码,当然也可以带有参数。更详细信息可以参考: WordPress Shortcode 介绍和详细使用 使用 Shortcode 投放 Google Adsense 广告 把下面的代码保存到你当前的主题的 functions.php,或者上传到插件目录下并激活。 <?php /* Plugin Name: Shorcode […]

WordPress 技巧:如何解决 Shortcode 中自动添加的 br 或者 p 标签

我们在使用 WordPress Shortcode API 开发插件的时候,有个比较麻烦的问题,就是 WordPress 会自动在 shortcode 内添加 br 或者 p 标签,这样可能会打乱你的原先预想的 HTML 结构和布局。 造成这个问题的原因是 WordPress 默认的日志内容处理流程中,wpautop(将回车转换成 p 或者 br 标签的函数)是在 Shortcode 前面运行的。所以我们的解决方案也是非常简单,改变它们执行的顺序,在当前主题的 functions.php 文件中添加: remove_filter( 'the_content', 'wpautop' ); add_filter( 'the_content', 'wpautop' , 12); 这样调整顺序之后,你的 shortcode 里面的内容,就不会有自动添加的 p 或者 br 标签,但是如果 shortcode 中部分的内容你又需要一些 p 或者 br 标签用来换行的话,你需要自己手动在自己 shortcode 处理程序中添加 wpautop 来处理了。 function bio_shortcode($atts, $content […]

WordPress 技巧:在侧边栏 Widgets 中使用 Shortcode

Shortcode 很方便,但是只能用在日志内容中,那么如何在 WordPress 的侧边栏的 Widgets 中使用 Shortcode,在当前主题的 functions.php 中添加如下代码: add_filter('widget_text', 'do_shortcode'); 然后你在 WordPress 后台 > 外观 > Widgets 界面添加一个文本 Widget,然后插入博客中经启用 shortcode 即可。 Shortcode 详细介绍和更多技巧: WordPress 技巧:使用 Shortcode 投放 Google Adsense 广告 WordPress 技巧:在主题的文件中使用 Shortcode WordPress 短代码(Shortcode)详细介绍和使用 WordPress 技巧:如何解决 Shortcode 中自动添加的 br 或者 p 标签 WordPress 技巧:使用 Shortcode 快速插入列表 WordPress 技巧:删除列表页的 Shortcode 标签:WordPress Shortcode WordPress 技巧

WordPress 技巧:如何修改自定义日志类型的固定链接

如果你使用过 WordPress 自定义日志类型(Custom Post Type)的话,一定发现自定义类型日志的的固定链接(Permalink)是不受制于后台 > 设置 > 固定链接中为 Post 置顶的链接格式,强制设置为 /custom_post_type/post_name/,如果我们要把自定义日志类型的固定链接修改为 /custom_post_type/post_name/ ,如何设置呢? 假设你已经创建了一个 book 的自定义日志类型,将其固定链接设置为:/book/post_id/,在当前主题的 functions.php 文件中添加如下代码: add_filter('post_type_link', 'wpjam_book_post_type_link', 1, 3); function wpjam_book_post_type_link( $link, $post = 0 ){ if ( $post->post_type == 'book' ){ return home_url( 'book/' . $post->ID ); } else { return $link; } } add_action( 'init', 'wpjam_book_rewrites_init' ); function wpjam_book_rewrites_init(){ […]

100% Secure Checkout

PayPal / MasterCard / Visa