502 lines
20 KiB
PHP
502 lines
20 KiB
PHP
|
<?php
|
||
|
if(!function_exists('add_filter')) exit;
|
||
|
global $fansub_theme_license;
|
||
|
|
||
|
function fansub_theme_switched($new_name, $new_theme) {
|
||
|
if(!current_user_can('switch_themes')) {
|
||
|
return;
|
||
|
}
|
||
|
flush_rewrite_rules();
|
||
|
do_action('fansub_theme_deactivation');
|
||
|
}
|
||
|
add_action('switch_theme', 'fansub_theme_switched', 10, 2);
|
||
|
|
||
|
function fansub_theme_after_switch($old_name, $old_theme) {
|
||
|
if(!current_user_can('switch_themes')) {
|
||
|
return;
|
||
|
}
|
||
|
update_option('fansub_version', FANSUB_VERSION);
|
||
|
if(fansub_is_debugging() || fansub_is_localhost()) {
|
||
|
fansub_update_permalink_struct('/%category%/%postname%.html');
|
||
|
}
|
||
|
flush_rewrite_rules();
|
||
|
do_action('fansub_theme_activation');
|
||
|
}
|
||
|
add_action('after_switch_theme', 'fansub_theme_after_switch', 10, 2);
|
||
|
|
||
|
function fansub_setup_theme_data() {
|
||
|
load_theme_textdomain('fansub', get_template_directory() . '/languages');
|
||
|
add_theme_support('automatic-feed-links');
|
||
|
add_theme_support('title-tag');
|
||
|
add_theme_support('post-thumbnails');
|
||
|
register_nav_menus(
|
||
|
array(
|
||
|
'top' => __('Top menu', 'fansub'),
|
||
|
'primary' => __('Primary menu', 'fansub'),
|
||
|
'secondary' => __('Secondary menu', 'fansub'),
|
||
|
'mobile' => __('Mobile menu', 'fansub'),
|
||
|
'footer' => __('Footer menu', 'fansub')
|
||
|
)
|
||
|
);
|
||
|
add_theme_support('html5', array('search-form', 'comment-form', 'comment-list', 'gallery', 'caption'));
|
||
|
}
|
||
|
add_action('after_setup_theme', 'fansub_setup_theme_data');
|
||
|
|
||
|
function fansub_theme_hide_admin_bar() {
|
||
|
if(!current_user_can('read')) {
|
||
|
show_admin_bar(false);
|
||
|
}
|
||
|
}
|
||
|
add_action('init', 'fansub_theme_hide_admin_bar');
|
||
|
|
||
|
function fansub_setup_theme_body_class($classes) {
|
||
|
if(is_single() || is_page() || is_singular()) {
|
||
|
$classes[] = 'fansub-single';
|
||
|
}
|
||
|
$classes[] = fansub_get_browser();
|
||
|
if(!fansub_theme_license_valid(fansub_theme_get_license_defined_data())) {
|
||
|
$classes[] = 'fansub-invalid-license';
|
||
|
}
|
||
|
if(is_user_logged_in()) {
|
||
|
$classes[] = 'fansub-user';
|
||
|
global $current_user;
|
||
|
if(fansub_is_admin($current_user)) {
|
||
|
$classes[] = 'fansub-user-admin';
|
||
|
}
|
||
|
}
|
||
|
return $classes;
|
||
|
}
|
||
|
add_filter('body_class', 'fansub_setup_theme_body_class');
|
||
|
|
||
|
function fansub_setup_theme_content_width() {
|
||
|
$GLOBALS['content_width'] = apply_filters('fansub_content_width', 640);
|
||
|
}
|
||
|
add_action('after_setup_theme', 'fansub_setup_theme_content_width', 0);
|
||
|
|
||
|
function fansub_setup_theme_widgets_init() {
|
||
|
register_widget('FANSUB_Widget_Banner');
|
||
|
register_widget('FANSUB_Widget_Facebook_Box');
|
||
|
register_widget('FANSUB_Widget_Post');
|
||
|
register_widget('FANSUB_Widget_Top_Commenter');
|
||
|
$default_sidebars = array(
|
||
|
'primary',
|
||
|
'secondary',
|
||
|
'footer'
|
||
|
);
|
||
|
$default_sidebars = apply_filters('fansub_theme_default_sidebars', $default_sidebars);
|
||
|
if(in_array('primary', $default_sidebars)) {
|
||
|
fansub_register_sidebar('primary', __('Primary sidebar', 'fansub'), __('Primary sidebar on your site.', 'fansub'));
|
||
|
}
|
||
|
if(in_array('secondary', $default_sidebars)) {
|
||
|
fansub_register_sidebar('secondary', __('Secondary sidebar', 'fansub'), __('Secondary sidebar on your site.', 'fansub'));
|
||
|
}
|
||
|
if(in_array('footer', $default_sidebars)) {
|
||
|
fansub_register_sidebar('footer', __('Footer widget area', 'fansub'), __('The widget area contains footer widgets.', 'fansub'), 'div');
|
||
|
}
|
||
|
}
|
||
|
add_action('widgets_init', 'fansub_setup_theme_widgets_init');
|
||
|
|
||
|
function fansub_setup_theme_load_style_and_script($use) {
|
||
|
global $pagenow;
|
||
|
$current_page = fansub_get_current_admin_page();
|
||
|
if('widgets.php' == $pagenow || 'post.php' == $pagenow || 'options-writing.php' == $pagenow || 'options-reading.php' == $pagenow) {
|
||
|
$use = true;
|
||
|
}
|
||
|
return $use;
|
||
|
}
|
||
|
add_filter('fansub_use_admin_style_and_script', 'fansub_setup_theme_load_style_and_script');
|
||
|
|
||
|
function fansub_setup_theme_support_enqueue_media($use) {
|
||
|
global $pagenow;
|
||
|
$current_page = fansub_get_current_admin_page();
|
||
|
if('widgets.php' == $pagenow || 'options-writing.php' == $pagenow || 'options-reading.php' == $pagenow) {
|
||
|
$use = true;
|
||
|
}
|
||
|
return $use;
|
||
|
}
|
||
|
add_filter('fansub_wp_enqueue_media', 'fansub_setup_theme_support_enqueue_media');
|
||
|
|
||
|
function fansub_setup_theme_scripts() {
|
||
|
if(fansub_use_jquery_cdn()) {
|
||
|
fansub_load_jquery_from_cdn();
|
||
|
}
|
||
|
fansub_theme_register_lib_superfish();
|
||
|
fansub_theme_register_lib_bootstrap();
|
||
|
fansub_theme_register_lib_font_awesome();
|
||
|
fansub_theme_register_core_style_and_script();
|
||
|
$localize_object = array(
|
||
|
'expand' => '<span class="screen-reader-text">' . esc_html__('expand child menu', 'fansub') . '</span>',
|
||
|
'collapse' => '<span class="screen-reader-text">' . esc_html__('collapse child menu', 'fansub') . '</span>'
|
||
|
);
|
||
|
$localize_object = wp_parse_args($localize_object, fansub_theme_default_script_localize_object());
|
||
|
if(fansub_is_debugging()) {
|
||
|
wp_localize_script('fansub', 'fansub', $localize_object);
|
||
|
wp_register_style('fansub-front-end-style', get_template_directory_uri() . '/fansub/css/fansub-front-end' . FANSUB_CSS_SUFFIX, array('fansub-style'));
|
||
|
wp_register_script('fansub-front-end', get_template_directory_uri() . '/fansub/js/fansub-front-end' . FANSUB_JS_SUFFIX, array('fansub'), false, true);
|
||
|
wp_register_style('fansub-custom-front-end-style', get_template_directory_uri() . '/css/fansub-custom-front-end' . FANSUB_CSS_SUFFIX, array('bootstrap-style', 'font-awesome-style', 'superfish-style', 'fansub-front-end-style'));
|
||
|
wp_register_script('fansub-custom-front-end', get_template_directory_uri() . '/js/fansub-custom-front-end' . FANSUB_JS_SUFFIX, array('superfish', 'bootstrap', 'fansub-front-end'), false, true);
|
||
|
} else {
|
||
|
wp_register_style('fansub-custom-front-end-style', get_template_directory_uri() . '/css/fansub-custom-front-end' . FANSUB_CSS_SUFFIX, array('bootstrap-style', 'font-awesome-style', 'superfish-style'), FANSUB_THEME_VERSION);
|
||
|
wp_register_script('fansub-custom-front-end', get_template_directory_uri() . '/js/fansub-custom-front-end' . FANSUB_JS_SUFFIX, array('superfish', 'bootstrap'), FANSUB_THEME_VERSION, true);
|
||
|
wp_localize_script('fansub-custom-front-end', 'fansub', $localize_object);
|
||
|
}
|
||
|
wp_enqueue_style('fansub-custom-front-end-style');
|
||
|
wp_enqueue_script('fansub-custom-front-end');
|
||
|
if(is_singular()) {
|
||
|
$post_id = get_the_ID();
|
||
|
if(comments_open($post_id) && (bool)get_option('thread_comments')) {
|
||
|
wp_enqueue_script('comment-reply');
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
add_action('wp_enqueue_scripts', 'fansub_setup_theme_scripts');
|
||
|
|
||
|
function fansub_setup_theme_login_scripts() {
|
||
|
fansub_theme_register_lib_bootstrap();
|
||
|
fansub_theme_register_core_style_and_script();
|
||
|
wp_register_style('fansub-login-style', get_template_directory_uri() . '/fansub/css/fansub-login' . FANSUB_CSS_SUFFIX, array('bootstrap-theme-style'), FANSUB_THEME_VERSION);
|
||
|
wp_register_script('fansub-login', get_template_directory_uri() . '/fansub/js/fansub-login' . FANSUB_JS_SUFFIX, array('jquery', 'fansub'), FANSUB_THEME_VERSION, true);
|
||
|
wp_localize_script('fansub', 'fansub', fansub_theme_default_script_localize_object());
|
||
|
wp_enqueue_style('fansub-login-style');
|
||
|
wp_enqueue_script('fansub-login');
|
||
|
}
|
||
|
add_action('login_enqueue_scripts', 'fansub_setup_theme_login_scripts');
|
||
|
|
||
|
function fansub_setup_theme_admin_scripts() {
|
||
|
fansub_admin_enqueue_scripts();
|
||
|
}
|
||
|
add_action('admin_enqueue_scripts', 'fansub_setup_theme_admin_scripts');
|
||
|
|
||
|
function fansub_setup_theme_check_javascript_supported() {
|
||
|
echo "<script>(function(html){html.className = html.className.replace(/\bno-js\b/,'js')})(document.documentElement);</script>\n";
|
||
|
}
|
||
|
add_action('wp_head', 'fansub_setup_theme_check_javascript_supported', 99);
|
||
|
|
||
|
function fansub_setup_theme_admin_footer_text($text) {
|
||
|
$text = sprintf(__('Thank you for creating with %s. Proudly powered by WordPress.'), '<a href="' . FANSUB_HOMEPAGE . '">fansub</a>');
|
||
|
return '<span id="footer-thankyou">' . $text . '</span>';
|
||
|
}
|
||
|
add_filter('admin_footer_text', 'fansub_setup_theme_admin_footer_text', 99);
|
||
|
|
||
|
function fansub_setup_theme_update_footer($text) {
|
||
|
$tmp = strtolower($text);
|
||
|
if(fansub_string_contain($tmp, 'version')) {
|
||
|
$text = sprintf(__('Theme core version %s', 'fansub'), FANSUB_THEME_VERSION);
|
||
|
}
|
||
|
return $text;
|
||
|
}
|
||
|
add_filter('update_footer', 'fansub_setup_theme_update_footer', 99);
|
||
|
|
||
|
function fansub_setup_theme_remove_editor_menu() {
|
||
|
$remove = apply_filters('fansub_remove_theme_editor_menu', true);
|
||
|
if($remove) {
|
||
|
$current_page = isset($GLOBALS['pagenow']) ? $GLOBALS['pagenow'] : '';
|
||
|
if('theme-editor.php' == $current_page) {
|
||
|
wp_redirect(admin_url('/'));
|
||
|
exit;
|
||
|
}
|
||
|
remove_submenu_page('themes.php', 'theme-editor.php');
|
||
|
}
|
||
|
}
|
||
|
add_action('admin_init', 'fansub_setup_theme_remove_editor_menu');
|
||
|
|
||
|
function fansub_setup_theme_login_headerurl() {
|
||
|
$url = home_url('/');
|
||
|
$url = apply_filters('fansub_login_logo_url', $url);
|
||
|
return $url;
|
||
|
}
|
||
|
add_filter('login_headerurl', 'fansub_setup_theme_login_headerurl');
|
||
|
|
||
|
function fansub_setup_theme_login_headertitle() {
|
||
|
$desc = get_bloginfo('description');
|
||
|
$desc = apply_filters('fansub_login_logo_description', $desc);
|
||
|
return $desc;
|
||
|
}
|
||
|
add_filter('login_headertitle', 'fansub_setup_theme_login_headertitle');
|
||
|
|
||
|
function fansub_setup_theme_check_license() {
|
||
|
if(!isset($_POST['submit']) && !fansub_is_login_page()) {
|
||
|
if(!fansub_theme_license_valid(fansub_theme_get_license_defined_data()) || !has_action('fansub_check_license', 'fansub_theme_custom_check_license')) {
|
||
|
fansub_theme_invalid_license_redirect();
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
add_action('fansub_check_license', 'fansub_setup_theme_check_license');
|
||
|
|
||
|
function fansub_setup_theme_invalid_license_message() {
|
||
|
delete_transient('fansub_invalid_theme_license');
|
||
|
$args = array(
|
||
|
'error' => true,
|
||
|
'title' => __('Error', 'fansub'),
|
||
|
'text' => sprintf(__('Your theme is using an invalid license key! If you does not have one, please contact %1$s via email address %2$s for more information.', 'fansub'), '<strong>' . FANSUB_NAME . '</strong>', '<a href="mailto:' . esc_attr(FANSUB_EMAIL) . '">' . FANSUB_EMAIL . '</a>')
|
||
|
);
|
||
|
fansub_admin_notice($args);
|
||
|
$theme = wp_get_theme();
|
||
|
fansub_send_mail_invalid_license($theme->get('Name'));
|
||
|
}
|
||
|
|
||
|
function fansub_setup_theme_invalid_license_admin_notice() {
|
||
|
if(false !== ($result = get_transient('fansub_invalid_theme_license')) && 1 == $result) {
|
||
|
fansub_setup_theme_invalid_license_message();
|
||
|
}
|
||
|
}
|
||
|
add_action('admin_notices', 'fansub_setup_theme_invalid_license_admin_notice');
|
||
|
|
||
|
function fansub_setup_theme_admin_bar_menu($wp_admin_bar) {
|
||
|
$option = fansub_option_get_object_from_list('theme_setting');
|
||
|
if(fansub_object_valid($option) && current_user_can($option->get_capability())) {
|
||
|
$args = array(
|
||
|
'id' => fansub_sanitize_id($option->get_menu_slug()),
|
||
|
'title' => $option->get_menu_title(),
|
||
|
'href' => $option->get_page_url(),
|
||
|
'parent' => 'themes'
|
||
|
);
|
||
|
$wp_admin_bar->add_node($args);
|
||
|
}
|
||
|
$option = fansub_option_get_object_from_list('theme_license');
|
||
|
if(fansub_object_valid($option) && current_user_can($option->get_capability())) {
|
||
|
$args = array(
|
||
|
'id' => fansub_sanitize_id($option->get_menu_slug()),
|
||
|
'title' => $option->get_menu_title(),
|
||
|
'href' => $option->get_page_url(),
|
||
|
'parent' => 'themes'
|
||
|
);
|
||
|
$wp_admin_bar->add_node($args);
|
||
|
}
|
||
|
$option = fansub_option_get_object_from_list('theme_custom_css');
|
||
|
if(fansub_object_valid($option) && current_user_can($option->get_capability())) {
|
||
|
$args = array(
|
||
|
'id' => fansub_sanitize_id($option->get_menu_slug()),
|
||
|
'title' => $option->get_menu_title(),
|
||
|
'href' => $option->get_page_url(),
|
||
|
'parent' => 'themes'
|
||
|
);
|
||
|
$wp_admin_bar->add_node($args);
|
||
|
}
|
||
|
$option = fansub_option_get_object_from_list('theme_add_to_head');
|
||
|
if(fansub_object_valid($option) && current_user_can($option->get_capability())) {
|
||
|
$args = array(
|
||
|
'id' => fansub_sanitize_id($option->get_menu_slug()),
|
||
|
'title' => $option->get_menu_title(),
|
||
|
'href' => $option->get_page_url(),
|
||
|
'parent' => 'themes'
|
||
|
);
|
||
|
$wp_admin_bar->add_node($args);
|
||
|
}
|
||
|
$option = fansub_option_get_object_from_list('theme_custom');
|
||
|
if(fansub_object_valid($option) && current_user_can($option->get_capability())) {
|
||
|
$args = array(
|
||
|
'id' => fansub_sanitize_id($option->get_menu_slug()),
|
||
|
'title' => $option->get_menu_title(),
|
||
|
'href' => $option->get_page_url(),
|
||
|
'parent' => 'themes'
|
||
|
);
|
||
|
$wp_admin_bar->add_node($args);
|
||
|
}
|
||
|
$args = array(
|
||
|
'id' => 'users',
|
||
|
'title' => __('Users', 'fansub'),
|
||
|
'href' => admin_url('users.php'),
|
||
|
'parent' => 'site-name'
|
||
|
);
|
||
|
$wp_admin_bar->add_node($args);
|
||
|
$option = fansub_option_get_object_from_list('user_login');
|
||
|
if(fansub_object_valid($option) && current_user_can($option->get_capability())) {
|
||
|
$args = array(
|
||
|
'id' => fansub_sanitize_id($option->get_menu_slug()),
|
||
|
'title' => $option->get_menu_title(),
|
||
|
'href' => $option->get_page_url(),
|
||
|
'parent' => 'users'
|
||
|
);
|
||
|
$wp_admin_bar->add_node($args);
|
||
|
}
|
||
|
$args = array(
|
||
|
'id' => 'options-general',
|
||
|
'title' => __('Settings', 'fansub'),
|
||
|
'href' => admin_url('options-general.php'),
|
||
|
'parent' => 'site-name'
|
||
|
);
|
||
|
$wp_admin_bar->add_node($args);
|
||
|
$option = fansub_option_get_object_from_list('option_social');
|
||
|
if(fansub_object_valid($option) && current_user_can($option->get_capability())) {
|
||
|
$args = array(
|
||
|
'id' => fansub_sanitize_id($option->get_menu_slug()),
|
||
|
'title' => $option->get_menu_title(),
|
||
|
'href' => $option->get_page_url(),
|
||
|
'parent' => 'options-general'
|
||
|
);
|
||
|
$wp_admin_bar->add_node($args);
|
||
|
}
|
||
|
$option = fansub_option_get_object_from_list('option_smtp_email');
|
||
|
if(fansub_object_valid($option) && current_user_can($option->get_capability())) {
|
||
|
$args = array(
|
||
|
'id' => fansub_sanitize_id($option->get_menu_slug()),
|
||
|
'title' => $option->get_menu_title(),
|
||
|
'href' => $option->get_page_url(),
|
||
|
'parent' => 'options-general'
|
||
|
);
|
||
|
$wp_admin_bar->add_node($args);
|
||
|
}
|
||
|
$option = fansub_option_get_object_from_list('optimize');
|
||
|
if(fansub_object_valid($option) && current_user_can($option->get_capability())) {
|
||
|
$args = array(
|
||
|
'id' => fansub_sanitize_id($option->get_menu_slug()),
|
||
|
'title' => $option->get_menu_title(),
|
||
|
'href' => $option->get_page_url(),
|
||
|
'parent' => 'options-general'
|
||
|
);
|
||
|
$wp_admin_bar->add_node($args);
|
||
|
}
|
||
|
$args = array(
|
||
|
'id' => 'options-writing',
|
||
|
'title' => __('Writing', 'fansub'),
|
||
|
'href' => admin_url('options-writing.php'),
|
||
|
'parent' => 'options-general'
|
||
|
);
|
||
|
$wp_admin_bar->add_node($args);
|
||
|
$args = array(
|
||
|
'id' => 'options-reading',
|
||
|
'title' => __('Reading', 'fansub'),
|
||
|
'href' => admin_url('options-reading.php'),
|
||
|
'parent' => 'options-general'
|
||
|
);
|
||
|
$wp_admin_bar->add_node($args);
|
||
|
$args = array(
|
||
|
'id' => 'options-discussion',
|
||
|
'title' => __('Discussion', 'fansub'),
|
||
|
'href' => admin_url('options-discussion.php'),
|
||
|
'parent' => 'options-general'
|
||
|
);
|
||
|
$wp_admin_bar->add_node($args);
|
||
|
$args = array(
|
||
|
'id' => 'options-permalink',
|
||
|
'title' => __('Permalinks', 'fansub'),
|
||
|
'href' => admin_url('options-permalink.php'),
|
||
|
'parent' => 'options-general'
|
||
|
);
|
||
|
$wp_admin_bar->add_node($args);
|
||
|
$args = array(
|
||
|
'id' => 'list-posts',
|
||
|
'title' => __('Posts', 'fansub'),
|
||
|
'href' => admin_url('edit.php'),
|
||
|
'parent' => 'site-name'
|
||
|
);
|
||
|
$wp_admin_bar->add_node($args);
|
||
|
$args = array(
|
||
|
'id' => 'plugins',
|
||
|
'title' => __('Plugins', 'fansub'),
|
||
|
'href' => admin_url('plugins.php'),
|
||
|
'parent' => 'site-name'
|
||
|
);
|
||
|
$wp_admin_bar->add_node($args);
|
||
|
$args = array(
|
||
|
'id' => 'tools',
|
||
|
'title' => __('Tools', 'fansub'),
|
||
|
'href' => admin_url('tools.php'),
|
||
|
'parent' => 'site-name'
|
||
|
);
|
||
|
$wp_admin_bar->add_node($args);
|
||
|
$option = fansub_option_get_object_from_list('maintenance');
|
||
|
if(fansub_object_valid($option) && current_user_can($option->get_capability())) {
|
||
|
$args = array(
|
||
|
'id' => fansub_sanitize_id($option->get_menu_slug()),
|
||
|
'title' => $option->get_menu_title(),
|
||
|
'href' => $option->get_page_url(),
|
||
|
'parent' => 'tools'
|
||
|
);
|
||
|
$wp_admin_bar->add_node($args);
|
||
|
}
|
||
|
if(fansub_plugin_wpsupercache_installed()) {
|
||
|
$args = array(
|
||
|
'id' => 'wpsupercache-content',
|
||
|
'title' => __('Delete cache', 'fansub'),
|
||
|
'href' => admin_url('options-general.php?page=wpsupercache&tab=contents#listfiles'),
|
||
|
'parent' => 'site-name'
|
||
|
);
|
||
|
$wp_admin_bar->add_node($args);
|
||
|
}
|
||
|
}
|
||
|
if(!is_admin()) add_action('admin_bar_menu', 'fansub_setup_theme_admin_bar_menu');
|
||
|
|
||
|
function fansub_setup_theme_language_attributes($output) {
|
||
|
if(!is_admin()) {
|
||
|
if('vi' == fansub_get_language()) {
|
||
|
$output = 'lang="vi"';
|
||
|
}
|
||
|
}
|
||
|
return $output;
|
||
|
}
|
||
|
add_filter('language_attributes', 'fansub_setup_theme_language_attributes');
|
||
|
|
||
|
function fansub_setup_theme_wpseo_locale($locale) {
|
||
|
if(!is_admin()) {
|
||
|
if('vi' == fansub_get_language()) {
|
||
|
$locale = 'vi';
|
||
|
}
|
||
|
}
|
||
|
return $locale;
|
||
|
}
|
||
|
add_filter('wpseo_locale', 'fansub_setup_theme_wpseo_locale');
|
||
|
|
||
|
function fansub_setup_theme_wpseo_meta_box_priority() {
|
||
|
return 'low';
|
||
|
}
|
||
|
add_filter('wpseo_metabox_prio', 'fansub_setup_theme_wpseo_meta_box_priority');
|
||
|
|
||
|
function fansub_setup_theme_default_hidden_meta_boxes($hidden, $screen) {
|
||
|
if('post' == $screen->base) {
|
||
|
$defaults = array('slugdiv', 'trackbacksdiv', 'postcustom', 'postexcerpt', 'commentstatusdiv', 'commentsdiv', 'authordiv', 'revisionsdiv');
|
||
|
$hidden = wp_parse_args($hidden, $defaults);
|
||
|
}
|
||
|
return $hidden;
|
||
|
}
|
||
|
add_filter('default_hidden_meta_boxes', 'fansub_setup_theme_default_hidden_meta_boxes', 10, 2);
|
||
|
|
||
|
function fansub_theme_pre_ping(&$links) {
|
||
|
$home = get_option('home');
|
||
|
foreach($links as $l => $link) {
|
||
|
if(0 === strpos($link, $home)) {
|
||
|
unset($links[$l]);
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
add_action('pre_ping', 'fansub_theme_pre_ping');
|
||
|
|
||
|
function fansub_theme_intermediate_image_sizes_advanced($sizes) {
|
||
|
if(isset($sizes['thumbnail'])) {
|
||
|
unset($sizes['thumbnail']);
|
||
|
}
|
||
|
if(isset($sizes['medium'])) {
|
||
|
unset($sizes['medium']);
|
||
|
}
|
||
|
if(isset($sizes['large'])) {
|
||
|
unset($sizes['large']);
|
||
|
}
|
||
|
return $sizes;
|
||
|
}
|
||
|
add_filter('intermediate_image_sizes_advanced', 'fansub_theme_intermediate_image_sizes_advanced');
|
||
|
|
||
|
function fansub_theme_on_upgrade() {
|
||
|
$version = get_option('fansub_version');
|
||
|
if(version_compare($version, FANSUB_VERSION, '<')) {
|
||
|
update_option('fansub_version', FANSUB_VERSION);
|
||
|
do_action('fansub_theme_upgrade');
|
||
|
}
|
||
|
}
|
||
|
add_action('admin_init', 'fansub_theme_on_upgrade');
|
||
|
|
||
|
function fansub_theme_update_rewrite_rules() {
|
||
|
flush_rewrite_rules();
|
||
|
}
|
||
|
add_action('fansub_theme_upgrade', 'fansub_theme_update_rewrite_rules');
|
||
|
add_action('fansub_theme_activation', 'fansub_theme_update_rewrite_rules');
|
||
|
add_action('fansub_change_domain', 'fansub_theme_update_rewrite_rules');
|
||
|
|
||
|
function fansub_setup_theme_esc_comment_author_url($commentdata) {
|
||
|
$comment_author_url = fansub_get_value_by_key($commentdata, 'comment_author_url');
|
||
|
if(!empty($comment_author_url)) {
|
||
|
$commentdata['comment_author_url'] = esc_url(fansub_get_root_domain_name($comment_author_url));
|
||
|
}
|
||
|
return $commentdata;
|
||
|
}
|
||
|
add_filter('preprocess_comment', 'fansub_setup_theme_esc_comment_author_url');
|