wp-china-yes/wp-china-yes.php

113 lines
3.2 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
/**
* Plugin Name: WP-China-Yes
* Description: WP&中国是的此插件完全本土化你的WordPress为中国特供版。插件将WordPress核心的官方服务链接悉数替换为带有中国大陆节点的全球加速网络并为官方仓库的所有作品追加基于机器翻译的汉化支持。
* Author: WP中国本土化社区
* Author URI:https://wp-china-yes.org/
* Version: 3.0.0-Beta
* License: GPLv3 or later
* License URI: http://www.gnu.org/licenses/gpl-3.0.html
*/
if (is_admin()) {
/**
* 使用Composer作PHP文件自动加载
*/
if ( file_exists( __DIR__ . '/vendor/autoload.php' ) ) {
require __DIR__ . '/vendor/autoload.php';
}
/**
* WP-China-Yes的翻译校准基于Loco Translate插件开发这里通过引入入口文件的方式激活该插件的二次开发版
*/
if ( file_exists( __DIR__ . '/vendor/loco-translate/loco.php' ) ) {
require __DIR__ . '/vendor/loco-translate/loco.php';
}
/**
* 引入设置页
*/
require __DIR__ . '/setting.php';
/**
* 菜单注册
*/
add_action('admin_menu', function () {
add_menu_page(
'本土化',
'本土化',
'',
'wpcy'
);
add_submenu_page(
'wpcy',
'China Yes!!!',
'系统本土化',
'manage_options',
'wpcy-setting',
'wpcy_options_page_html',
0
);
add_submenu_page(
'wpcy',
'关于',
'关于',
'manage_options',
'wpcy-about',
function () {
echo 'a';
},
3
);
});
/**
* 替换api.wordpress.org和downloads.wordpress.org为WP-China.org维护的大陆加速节点
* URL替换代码来自于我爱水煮鱼(http://blog.wpjam.com/)开发的WPJAM Basic插件
*/
add_filter('pre_http_request', function ($preempt, $r, $url) {
if ( ! stristr($url, 'api.wordpress.org') && ! stristr($url, 'downloads.wordpress.org')) {
return false;
}
if (get_option('super_gravatar') == 1) {
$url = str_replace('api.wordpress.org', 'api.wp-china-yes.net', $url);
} else {
$url = str_replace('api.wordpress.org', 'api-original.wp-china-yes.net', $url);
}
$url = str_replace('downloads.wordpress.org', 'd.w.org.ibadboy.net', $url);
return wp_remote_request($url, $r);
}, 10, 3);
}
/**
* 替换G家头像为WP-China.org维护的大陆加速节点
*/
if (get_option('super_gravatar') == 1) {
add_filter('get_avatar', function ($avatar) {
return str_replace([
'www.gravatar.com',
'0.gravatar.com',
'1.gravatar.com',
'2.gravatar.com',
'secure.gravatar.com'
], 'gravatar.wp-china-yes.net', $avatar);
});
}
/**
* 替换谷歌字体为WP-China.org维护的大陆加速节点
*/
if (get_option('super_googlefonts') == 1) {
add_action('init', function () {
ob_start(function ($buffer) {
return str_replace('fonts.googleapis.com', 'googlefonts.wp-china-yes.net', $buffer);
});
});
}