A-A+

WordPress刚开始使用常见问题处理

2011年01月13日 WordPress 暂无评论
1.管理后台首页其它 WordPress 相关新闻RSS订阅错误问题,点击此栏目标题的“配置”,重新更换RSS订阅地址 http://planet.wordpress.org/feed/ 即可,可以在此处找一个合适的RSS订阅链接 http://www.baidu.com/search/rss.html
2.编辑文章自动保存问题,此功能容易造成庞大的数据空间占用,推荐使用delete-revision.1.3.1插件优化,可直接在网站后台搜索安装。
WordPress的历史版本功能,很好很强大,但是一般人用不到,浪费数据库空间,降低操作效率,于是在网上搜索了一下,但好多文章都是在讲如何取消WordPress历史版本功能,取消的同时把自动保存也个弄没了。自动保存功能我是需要的,没有自动保存如何在线写文章呢?这里总结了一个方法,可以一举两得,取消历史版本功能的同时还能保留文章自动保存功能。除了用修改源代码的方法外,还可以用插件的形式,但使用插件太多,会影响运行的效率。故建议用修改代码的方法!
注:此方法可用于WP2.6及以上版本
1. 在 wp-config.php 中添加以下代码:
define(‘WP_POST_REVISIONS’, false);
2. 在wp- includes/default-filters.php中,找到并注释掉下面这一行:
#add_action( ‘pre_post_update’, ‘wp_save_post_revision’ );
3. 在wp-admin/includes/post.php文件中,找到 wp_create_post_autosave函数。
修改如下:
return _wp_put_post_revision( $_POST, true );
修改成:
return edit_post();
整个函数如下:
function wp_create_post_autosave( $post_id ) {
$translated = _wp_translate_postdata( true );
if ( is_wp_error( $translated ) )
return $translated;
// Only store one autosave. If there is already an autosave, overwrite it.
if ( $old_autosave = wp_get_post_autosave( $post_id ) ) {
$new_autosave = _wp_post_revision_fields( $_POST, true );
$new_autosave['ID'] = $old_autosave->ID;
$current_user = wp_get_current_user();
$new_autosave['post_author'] = $current_user->ID;
return wp_update_post( $new_autosave );
}
// _wp_put_post_revision() expects unescaped.
$_POST = stripslashes_deep($_POST);
// Otherwise create the new autosave as a special post revision
#return _wp_put_post_revision( $_POST, true );
return edit_post();
}
标签:

给我留言

Copyright © 破晓Web实验室 保留所有权利.   Theme  Ality 沪ICP备14044094号

用户登录