"2013年1月10日wordpress性能优化日志"
Published on Aug. 22, 2023, 12:06 p.m.
记录下最近对wordpress做的一些优化. 插件方面 BWP Google XML Sitemaps: 绝对好用的google sitemap插件,这个插件能够把sitemap分成好多个进行提交,自己只有提交一个目录页面就好.因为分页所以能够很好的应对文章数目恨庞大的情况,有效预防内存吃紧. Permalink Finder: 一直用,页面找不到时候自动搜索匹配页面,从其他博客搬家时候很方便,我就是从blogger搬家的时候开始用的. Platinum SEO Pack: seo插件功能很全,相对占有资源少些. Search & Replace: 执行sql批量替换文本之类的,偶尔启用下,也可以直接去sql. SEO Friendly Images: 给图片添加title和alt,已用代码替换. Super Switch: 关闭自动保存之类的. Web Ninja Auto Tagging System: 自动获取Tags,懒人必备(中文毋庸). WordPress MU Domain Mapping: 启用多博客,域名映射. WP-UTF8-Excerpt: 截取摘要,已用代码替换. WP Keyword Link: tags自动内链,相关文章(由于相关文章严重拖累页面速度,已采用Yet Another Related Posts Plugin代替). WP No External Links: 外链转内链,已采用代码替换. WP Super Cache: 超级缓存,配置了多博客下使用. WP Widget Cache: 缓存widget,配合WP Super Cache进一步减少资源消耗. Yet Another Related Posts Plugin: 相关文章插件,功能很强大,自定义模板自动调取文章第一服图片作为图片. 以下是用通过代码修改来减少资源消耗 修改Theme Functions (functions.php) 禁用评论功能,实在受不了垃圾评论索性禁用使用第三方评论,建议使用facebook或者http://disqus.com/ 墙内用户自己搜索友言之类的社会化评论.disable的插件般很好的能够融合到wordpress之中,facebook也有个facebook seo,也不错.另外说句google已经能爬取facebook评论内容,虽然是框架. function __disable_feature($data) { return false; } add_filter(‘comments_number’, ‘__disable_feature’); add_filter(‘comments_open’, ‘__disable_feature’); 外链转内链加nofollow,我这里没做跳转直接是用了adfly的跳转,呵呵能够从adfly获取一点收入. function fb_filter_query( $query, $error = true ) { if ( is_search() ) { $query->is_search = false; $query->query_vars[s] = false; $query->query[s] = false; // to error if ( $error == true ) $query->is_404 = true; } } add_filter(‘the_content’,’the_content_nofollow’,99); function the_content_nofollow($content){ preg_match_all(‘/href=”(.*?)”/’,$content,$matches); if($matches){ foreach($matches[1] as $val){ if( strpos($val,home_url())===false ) $content=str_replace(“href="$val"“, “href="http://adf.ly/123456/$val" rel="external nofollow" “,$content); } } return $content; } 截取内容中第一张图片函数 输出把 <span class=”post-thumbnail-default”> <img src=”<?php echo catch_that_image(); ?>” alt=”<?php the_title(); ?>” title=”<?php the_title(); ?>” class=”post-thumbnails”/></span>添加到 loop.php等地 以下是函数 function catch_that_image() { global $post, $posts; ob_start(); ob_end_clean(); preg_match(‘/<img\s[^<>]*?src='";width:130px;height:180px;margin:5px;margin-left:0px;vertical-align:top;}.yarpp-thumbnail>img,.yarpp-thumbnail-default{width:120px;height:120px;margin:5px;}.yarpp-thumbnails-horizontal .yarpp-thumbnail>img,.yarpp-thumbnails-horizontal .yarpp-thumbnail-default{display:block;}.yarpp-thumbnails-horizontal .yarpp-thumbnail-title{margin:2px;margin-top:0px;width:120px;text-decoration:inherit;overflow:hidden;}.yarpp-thumbnail-default{overflow:hidden;}.yarpp-thumbnail-default>img{min-height:120px;min-width:120px;}