wordpress 配置

禁止多版本和自动保存功能



修改wp-config.php文件



添加如下代码

//disable WP Post Revisions
define('AUTOSAVE_INTERVAL', false); // 这里也可以改为自动保存时间,单位秒
define('WP_POST_REVISIONS', false);


注意: 代码必须添加到ABSPATH属性之前


注释文件



wp-admin/post-new.phpwp-admin/post.php文件注释掉以下内容

wp_enqueue_script('autosave');


修改文件



wp-admin/includes/post.php

原始代码如下

if ( $create_in_db ) {
$post_id = wp_insert_post( array( 'post_title' => __( 'Auto Draft' ), 'post_type' => $post_type, 'post_status' => 'auto-draft' ) );
$post = get_post( $post_id );
if ( current_theme_supports( 'post-formats' ) && post_type_supports( $post->post_type, 'post-formats' ) && get_option( 'default_post_format' ) )
set_post_format( $post, get_option( 'default_post_format' ) );
} else {


修改后的代码如下

if ( $create_in_db ) {
global $wpdb;
global $current_user; // 获取当前登录管理用户
$post = $wpdb->get_row( "SELECT * FROM $wpdb->posts WHERE post_status = 'auto-draft' AND post_type = '$post_type' AND post_author = $current_user->ID ORDER BY post_date ASC, ID ASC LIMIT 1" ); // 获取最早一条自动草稿
if(!$post)
{
$post_id = wp_insert_post( array( 'post_title' => __( 'Auto Draft' ), 'post_type' => $post_type, 'post_status' => 'auto-draft' ) );
$post = get_post( $post_id );
}
if ( current_theme_supports( 'post-formats' ) && post_type_supports( $post->post_type, 'post-formats' ) && get_option( 'default_post_format' ) )
set_post_format( $post, get_option( 'default_post_format' ) );
} else {


重启服务器

systemctl restart httpd.service


wordpress 固定链接设置



设置好wordpress网址显示方式后,直接打开网址会出现404错误

这里需要做两件事情


  1. 在设置中保存固定链接设置,会自动生成.htaccess文件

  2. /etc/httpd/conf/httpd.conf中修改设置



<Directory "/var/www/html">
AllowOverride All


其中/var/www/html为网站路径

wordpress主题汉化



pot文件



直接改名为po文件再编辑,或者poedit生成po文件

po文件



poedit编辑
会自动翻译,而且会自动生成mo文件

mo文件



使用poEdit安装程序bin文件夹中的msgunfmt程序将.mo文件转换成.po文件,命令类似如下:

msgunfmt d:\demo.mo -o d:\demo.po


再编辑po文件

重命名文件名



zh_CN.mo为中文文件,这个为翻译文件

wordpress插件汉化



汉化参考上面的wordpress主题汉化

和WordPress主题语言包不同,插件语言包的一般命名包含两大部分:插件主文件名+语言及国别简码。

例如 Google XML Sitemaps 的插件主文件为 sitemap.php ,那么它的语言包名字应为 sitemap-zh_CN.positemap-zh_CN.mo

wordpress数据库前缀修改



更改WordPress的数据库前缀



首先,在执行任何本教程中提出的SQL语句之前,建议备份你的WordPress数据库!

第一步:WP-config.php文件中修改表前缀



在wp-config.php文件中,更改成如:

$table_prefix = 'www_';


注意:您只能将table_prefix更改为数字,字母和下划线。随意混用大小写。

第二步:更改所有数据库表名



RENAME table `wp_commentmeta` TO `www_commentmeta`;

RENAME table `wp_comments` TO `www_comments`;

RENAME table `wp_links` TO `www_links`;

RENAME table `wp_options` TO `www_options`;

RENAME table `wp_postmeta` TO `www_postmeta`;

RENAME table `wp_posts` TO `www_posts`;

RENAME table `wp_terms` TO `www_terms`;

RENAME table `wp_term_relationships` TO `www_term_relationships`;

RENAME table `wp_term_taxonomy` TO `www_term_taxonomy`;

RENAME table `wp_usermeta` TO `www_usermeta`;

RENAME table `wp_users` TO `www_users`;


你可能需要添加行,选择那些在WordPress的数据库中添加他们自己的表后者其他插件。

第三步:更改主题选项表



我们需要搜索的选项表正在使用WP作为前缀的任何其他领域,所以我们可以替换它们。缓和的过程中,使用此查询:

SELECT * FROM www_options WHERE option_name LIKE '%wp_%';


这将返回了很多结果,你需要去逐个更改这些行!

UserMeta表



接下来,我们需要搜索用户的元为所有正在使用WP作为前缀的字段,这样我们就可以取代它。使用这个SQL查询:

SELECT * FROM www_usermeta WHERE meta_key LIKE '%wp_%';


完成了!现在你可以测试你的网站。

友情链接添加



先在当前主题文件目录functions.php的文件中,添加如下代码

add_filter('pre_option_link_manager_enabled','__return_true');


后台就出现了链接选项。在其中添加链接即可。但是这样在最新的wordpress中还是无法显示。
然后在当前主题目录footer.php文件中添加如下代码

<div class="lists"><?php wp_list_bookmarks('orderby=rand&show_images=0'); ?></div>


位置的话,需要自己根据模板情况自己修改。

functions.php常添加的代码



tags标签添加nofollow



add_filter('wp_tag_cloud','tag_cloud_nofollow');
function tag_cloud_nofollow($cloud){
$cloud=preg_replace('/<a /','<a rel="nofollow" ',$cloud);
return $cloud;
}


隐藏author(作者)



add_filter( 'author_link', 'my_author_link' );
function my_author_link() {
return home_url( '/' );
}


去除wordpress的版本号



function mt_remove_version() {
return '';
}
add_filter('the_generator', 'mt_remove_version');


去除wordpress头部window._wpemojiSettings



remove_action( 'admin_print_scripts',    'print_emoji_detection_script');
remove_action( 'admin_print_styles', 'print_emoji_styles');
remove_action( 'wp_head', 'print_emoji_detection_script', 7);
remove_action( 'wp_print_styles', 'print_emoji_styles');
remove_filter( 'the_content_feed', 'wp_staticize_emoji');
remove_filter( 'comment_text_rss', 'wp_staticize_emoji');
remove_filter( 'wp_mail', 'wp_staticize_emoji_for_email');


wordpress友情只在首页显示



function rbt_friend_links($output){
if (!is_home()|| is_paged()){
$output = "";
}
return $output;
}
add_filter('wp_list_bookmarks','rbt_friend_links');


去除头部评论feed



remove_action( 'wp_head', 'feed_links_extra', 3 );


去除wordpress头部文章feed



remove_action( 'wp_head', 'feed_links', 2 );


去除wordpress头部shortlink



remove_action('wp_head','wp_shortlink_wp_head',10,0);
remove_action('template_redirect','wp_shortlink_header',11,0);


移除 WordPress 加载的JS和CSS链接中的版本号



function wpdaxue_remove_cssjs_ver( $src ) {
if( strpos( $src, 'ver=' ) )
$src = remove_query_arg( 'ver', $src );
return $src;
}
add_filter( 'style_loader_src', 'wpdaxue_remove_cssjs_ver', 999 );
add_filter( 'script_loader_src', 'wpdaxue_remove_cssjs_ver', 999 );


禁用wordpress所有文章类型的修订版本



add_filter( ‘wp_revisions_to_keep’, ‘specs_wp_revisions_to_keep’, 10, 2 );
function specs_wp_revisions_to_keep( $num, $post ) {
return 0;
}


dns-prefetch 移除



remove_action( 'wp_head', 'wp_resource_hints', 2 );


改变php默认发件人以及昵称



//change WordPress default mail_from information

function new_from_name($email){
$wp_from_name = 'admin';
return $wp_from_name;
}

function new_from_email($email) {
$wp_from_email = 'admin@mail.yeniugo.com';
return $wp_from_email;
}

add_filter('wp_mail_from_name', 'new_from_name');
add_filter('wp_mail_from', 'new_from_email');


清理wordpress修改文章时所生成多余的ID



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';

评论

此博客中的热门博文

certbot cloudflare申请通用域名证书

Centos7 安装 PHP7

在centos 7上用postfix,dovecot,mariaDB配置邮箱