wordpress 配置
禁止多版本和自动保存功能
修改wp-config.php
文件
添加如下代码
//disable WP Post Revisions
define('AUTOSAVE_INTERVAL', false); // 这里也可以改为自动保存时间,单位秒
define('WP_POST_REVISIONS', false);
注意: 代码必须添加到
ABSPATH
属性之前注释文件
wp-admin/post-new.php
和wp-admin/post.php
文件注释掉以下内容wp_enqueue_script('autosave');
修改文件
wp-admin/includes/post.php
$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 {
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错误
这里需要做两件事情
- 在设置中保存固定链接设置,会自动生成.htaccess文件
- 在
/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.po
和 sitemap-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';
评论
发表评论