mirror of https://github.com/vtrois/kratos
feat: upgrade gravatar cdn
parent
3704666d5e
commit
46eec958c7
|
@ -4,7 +4,7 @@
|
|||
* 核心函数
|
||||
* @author Seaton Jiang <hi@seatonjiang.com>
|
||||
* @license GPL-3.0 License
|
||||
* @version 2022.02.20
|
||||
* @version 2022.04.30
|
||||
*/
|
||||
|
||||
// CDN 资源地址
|
||||
|
@ -192,15 +192,25 @@ add_filter('style_loader_src', function ($href) {
|
|||
return false;
|
||||
});
|
||||
|
||||
// 替换国内 Gravatar 源
|
||||
function get_https_avatar($avatar)
|
||||
{
|
||||
$avatar = str_replace(array("www.gravatar.com", "0.gravatar.com", "1.gravatar.com", "2.gravatar.com", "3.gravatar.com", "secure.gravatar.com"), kratos_option('g_gravatar', 'sdn.geekzu.org') ?: "secure.gravatar.com", $avatar);
|
||||
$avatar = str_replace("http://", "https://", $avatar);
|
||||
return $avatar;
|
||||
// Gravatar 加速服务
|
||||
if (kratos_option('g_replace_gravatar_url_fieldset')['g_replace_gravatar_url'] ?? true) {
|
||||
function replace_gravatar_url($avatar)
|
||||
{
|
||||
$gravatar_server_list = array(
|
||||
'geekzu' => 'sdn.geekzu.org',
|
||||
'loli' => 'gravatar.loli.net',
|
||||
'other' => kratos_option('g_replace_gravatar_url_fieldset')['g_custom_gravatar_server'] ?? null,
|
||||
);
|
||||
$gravatar_server = $gravatar_server_list[kratos_option('g_replace_gravatar_url_fieldset')['g_select_gravatar_server']] ?: 'secure.gravatar.com';
|
||||
$avatar = str_replace(array('www.gravatar.com', '0.gravatar.com', '1.gravatar.com', '2.gravatar.com', '3.gravatar.com', 'secure.gravatar.com'), $gravatar_server, $avatar);
|
||||
$avatar = str_replace('http://', 'https://', $avatar);
|
||||
|
||||
return $avatar;
|
||||
}
|
||||
|
||||
add_filter('get_avatar', 'replace_gravatar_url');
|
||||
add_filter('get_avatar_url', 'replace_gravatar_url');
|
||||
}
|
||||
add_filter('get_avatar', 'get_https_avatar');
|
||||
add_filter('get_avatar_url', 'get_https_avatar');
|
||||
|
||||
// 主题更新检测
|
||||
$myUpdateChecker = Puc_v4_Factory::buildUpdateChecker(
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
* 主题选项
|
||||
* @author Seaton Jiang <hi@seatonjiang.com>
|
||||
* @license GPL-3.0 License
|
||||
* @version 2022.04.29
|
||||
* @version 2022.04.30
|
||||
*/
|
||||
|
||||
defined('ABSPATH') || exit;
|
||||
|
@ -156,11 +156,46 @@ CSF::createSection($prefix, array(
|
|||
'default' => '260',
|
||||
),
|
||||
array(
|
||||
'id' => 'g_gravatar',
|
||||
'type' => 'text',
|
||||
'title' => __('Gravatar 加速', 'kratos'),
|
||||
'subtitle' => __('自定义 Gravatar 头像加速地址', 'kratos'),
|
||||
'default' => 'sdn.geekzu.org',
|
||||
'id' => 'g_replace_gravatar_url_fieldset',
|
||||
'type' => 'fieldset',
|
||||
'fields' => array(
|
||||
array(
|
||||
'type' => 'subheading',
|
||||
'content' => __('Gravatar 加速服务', 'kratos'),
|
||||
),
|
||||
array(
|
||||
'id' => 'g_replace_gravatar_url',
|
||||
'type' => 'switcher',
|
||||
'title' => __('功能开关', 'kratos'),
|
||||
'subtitle' => __('开启/关闭 Gravatar 加速服务功能', 'kratos'),
|
||||
),
|
||||
array(
|
||||
'id' => 'g_select_gravatar_server',
|
||||
'type' => 'select',
|
||||
'title' => __('Gravatar 加速服务地址', 'kratos'),
|
||||
'subtitle' => __('请选择 Gravatar 加速服务地址', 'kratos'),
|
||||
'options' => array(
|
||||
'loli' => __('Loli 加速服务', 'kratos'),
|
||||
'geekzu' => __('极客族加速服务', 'kratos'),
|
||||
'other' => __('自定义加速服务', 'kratos'),
|
||||
),
|
||||
'desc' => __('国内用户推荐「极客族加速服务」,海外用户推荐「Loli 加速服务」。', 'kratos'),
|
||||
'dependency' => array('g_replace_gravatar_url', '==', 'true'),
|
||||
),
|
||||
array(
|
||||
'id' => 'g_custom_gravatar_server',
|
||||
'type' => 'text',
|
||||
'title' => __('自定义 Gravatar 加速服务地址', 'kratos'),
|
||||
'subtitle' => __('请输入 Gravatar 加速服务地址', 'kratos'),
|
||||
'desc' => __('直接输入网址即可,不需要协议头和最后的斜杠。', 'kratos'),
|
||||
'placeholder' => 'secure.gravatar.com',
|
||||
'dependency' => array('g_replace_gravatar_url|g_select_gravatar_server', '==|==', 'true|other'),
|
||||
),
|
||||
),
|
||||
'default' => array(
|
||||
'g_replace_gravatar_url' => 1,
|
||||
'g_select_gravatar_server' => 'geekzu',
|
||||
)
|
||||
),
|
||||
array(
|
||||
'id' => 'g_renameother_fieldset',
|
||||
|
|
Loading…
Reference in New Issue