Skip to main content
We are Brand SEO Beijing serving international business, your marketing partner, Contact us by mi@mgsh.com.cn

Website CMS common theme customization function

网站

<?php
//--------------------------------------------------------引入后台框架----------------------------------------------------
//导入ReduxFrameWork框架
//if ( !class_exists( 'ReduxFramework' ) && file_exists( dirname( __FILE__ ) .  '/admin/ReduxCore/framework.php' ) ) { // require_once( dirname( __FILE__ ) .  '/admin/ReduxCore/framework.php' ); //} //if ( !isset( $redux_demo ) && file_exists( dirname( __FILE__ ) .  '/admin/config.php' ) ) { // require_once( dirname( __FILE__ ) .  '/admin/config.php' ); //} //To translate the language pack through this code, you need to add the code of the language pack to the front of the calling theme option code (currently not sure where to add it) / /load_theme_textdomain('ankium', get_template_directory() .  '/languages');
//引入后台框架CodeStarFramework
require_once dirname( __FILE__ ) .'/codestar/cs-framework.php';
//---------------------------------------------------------后台订制------------------------------------------------------
/*
 * 移除Wordpress后台顶部左上角的W图标
 */
add_action('wp_before_admin_bar_render', 'annointed_admin_bar_remove', 0);
function annointed_admin_bar_remove() {
    global $wp_admin_bar;
    /* Remove their stuff */
    $wp_admin_bar->remove_menu('wp-logo');
}
/*
 * 自定义后台登录Logo的Url
 */
add_filter( 'login_headerurl', 'custom_loginlogo_url' );
function custom_loginlogo_url($url) {
    return 'http://www.ankium.com';
}
/*
 * 自定义 WordPress 后台底部的版权和版本信息
 */
add_filter('admin_footer_text', 'left_admin_footer_text');
function left_admin_footer_text($text) {
    // 左边信息
    $text = '大道行思,开拓创新;大道至简,务实为要';
    return $text;
}
add_filter('update_footer', 'right_admin_footer_text', 11);
function right_admin_footer_text($text) {
    // 右边信息
    $text = "延安安琪云信息科技有限公司";
    return $text;
}
/*
 * 屏蔽 WP 后台“显示选项”和“帮助”选项卡
 */
//add_filter('screen_options_show_screen', 'remove_screen_options');
//add_filter( 'contextual_help', 'remove_wp_help', 999, 3 );
function remove_screen_options(){ return false;}
function remove_wp_help($old_help, $screen_id, $screen){
    $screen->remove_help_tabs();
    return $old_help;
}
/*
 * 固定后台管理侧边栏
 */
add_action('admin_head', 'Bing_fixed_adminmenuwrap');
function Bing_fixed_adminmenuwrap(){
    echo '<style type="text/css">#adminmenuwrap{position:fixed;left:0px;z-index:2;}</style>';
};
/*
 * 阻止站内文章互相Pingback
 */
add_action('pre_ping','Bing_noself_ping');
function Bing_noself_ping($links) {
    $home = get_option( 'home' );
    foreach ( $links as $l => $link )
        if ( 0 === strpos( $link, $home ) )
            unset($links[$l]);
}
/*
 * 增强默认编辑器(mce_buttons:工具栏的第一行;mce_buttons_2:工具栏第二行;mce_buttons_3:工具栏第三行)
 */
add_filter("mce_buttons", "Bing_editor_buttons");
function Bing_editor_buttons($buttons){
    //$buttons[] = 'wp_adv';        //隐藏按钮显示开关
    $buttons[] = 'wp_adv_start';    //隐藏按钮区起始部分
    $buttons[] = 'wp_adv_end';      //隐藏按钮区结束部分
    //$buttons[] = 'bold';          //加粗
    //$buttons[] = 'italic';        //斜体
    $buttons[] = 'underline';       //下划线
    $buttons[] = 'strikethrough';   //删除线
    $buttons[] = 'justifyleft';     //左对齐
    $buttons[] = 'justifycenter';   //居中
    $buttons[] = 'justfyright';     //右对齐
    $buttons[] = 'justfyfull';      //两端对齐
    //$buttons[] = 'bullist';       //无序列表
    //$buttons[] = 'numlist';       //编号列表
    $buttons[] = 'outdent';         //减少缩进
    $buttons[] = 'indent';          //缩进
    $buttons[] = 'cut';             //剪切
    $buttons[] = 'copy';            //复制
    $buttons[] = 'paste';           //粘贴
    $buttons[] = 'undo';            //撤销
    $buttons[] = 'redo';            //重做
    //$buttons[] = 'link';          //插入超链接
    $buttons[] = 'unlink';          //取消超链接
    $buttons[] = 'image';           //插入图片
    $buttons[] = 'removeformat';    //清除格式
    $buttons[] = 'code';            //打开HTML代码编辑器
    $buttons[] = 'hr';              //水平线
    $buttons[] = 'cleanup';         //清除冗余代码
    $buttons[] = 'formmatselect';   //格式选择
    $buttons[] = 'fontselect';      //字体选择
    $buttons[] = 'fontsizeselect';  //字号选择
    $buttons[] = 'styleselect';     //样式选择
    $buttons[] = 'sub';             //上标
    $buttons[] = 'sup';             //下标
    $buttons[] = 'forecolor';       //字体颜色
    $buttons[] = 'backcolor';       //字体背景色
    $buttons[] = 'charmap';         //特殊符号
    $buttons[] = 'anchor';          //锚文本
    $buttons[] = 'newdocument';     //新建文本
    //$buttons[] = 'wp_more';       //插入more标签
    $buttons[] = 'wp_page';         //插入分页标签
    $buttons[] = 'spellchecker';    //拼写检查
    $buttons[] = 'wp_help';         //帮助
    //$buttons[] = 'selectall';       //全选
    //$buttons[] = 'visualaid';       //显示/隐藏指导线和不可见元素
    $buttons[] = 'spellchecker';    //切换拼写检查器状态
    $buttons[] = 'pastetext';       //以纯文本粘贴
    $buttons[] = 'pasteword';       //从Word中粘贴
    //$buttons[] = 'blockquote';      //引用
    $buttons[] = 'forecolorpicker'; //选择文字颜色(拾色器)
    $buttons[] = 'backcolorpicker'; //选择背景颜色(拾色器)
    $buttons[] = 'spellchecker';    //切换拼写检查器状态
    return $buttons;
}
/*
 * TinyMCE编辑器增强:增加中文字体
 */
add_filter('tiny_mce_before_init', 'custum_fontfamily');
function custum_fontfamily($initArray){
    $initArray['font_formats'] = "微软雅黑='微软雅黑';宋体='宋体';黑体='黑体';仿宋='仿宋';楷体='楷体';隶书='隶书';幼圆='幼圆';Andale Mono=andale mono,times;Arial=arial,helvetica,sans-serif;Arial Black=arial black,avant garde;Book Antiqua=book antiqua,palatino;Comic Sans MS=comic sans ms,sans-serif;Courier New=courier new,courier;Georgia=georgia,palatino;Helvetica=helvetica;Impact=impact,chicago;Symbol=symbol;Tahoma=tahoma,arial,helvetica,sans-serif;Terminal=terminal,monaco;Times New Roman=times new roman,times;Trebuchet MS=trebuchet ms,geneva;Verdana=verdana,geneva;Webdings=webdings;Wingdings=wingdings";
    return $initArray;
}
/*
 * 更改编辑器默认视图为HTML
 */
//add_filter('wp_default_editor', create_function('', 'return "html";'));
/*
 * 在 WordPress 编辑器中为自定义文章类型设置默认内容
 */
add_filter( 'default_content', 'my_editor_content', 10, 2 );
function my_editor_content( $content, $post ) {
    switch( $post->post_type ) {
        case 'sources':
            $content = 'your content';
            break;
        case 'stories':
            $content = 'your content';
            break;
        case 'pictures':
            $content = 'your content';
            break;
        default:
            $content = 'your default content';
            break;
    }
    return $content;
}
/*
 * 添加编辑器默认内容(此方法添加的内容在发布文章时自动添加在内容的最后,在编辑的时候是看不见的)
 */
add_filter ('the_content', 'insertFootNote');
function insertFootNote($content) {
    if(!is_feed() && !is_home()) {
        $content.= "这里的预定义内容在编辑器不可见";
    }
    return $content;
}
/*
 * 为编辑器添加更多的HTML标签
 */
add_filter('tiny_mce_before_init', 'fb_change_mce_options');
function fb_change_mce_options($initArray) {
    $ext = 'pre[id|name|class|style],iframe[align|longdesc|name|width|height|frameborder|scrolling|marginheight|marginwidth|src]';  //注意:格式为“标签一[属性一|属性二],标签二[属性一|属性二|属性三]”
    if ( isset( $initArray['extended_valid_elements'] ) ) {
        $initArray['extended_valid_elements'] .= ',' .  $ext; } else { $initArray['extended_valid_elements'] = $ext; } return $initArray; } /* * Let the editor support Chinese spelling check */ add_filter('tiny_mce_before_init', 'fb_mce_external_languages'); function fb_mce_external_languages($ initArray){ $initArray['spellchecker_languages'] = '+Chinese=zh,English=en'; return $initArray; } /* * Change background font*/ add_action('admin_head', 'Bing_admin_lettering'); function Bing_admin_lettering() { //echo ' *{font-family:"Microsoft YaHei" !important;} ';//Modify font} /* * WordPress backend reply to comments and add submit shortcut [Ctrl+Enter] */ add_action('admin_footer', 'Bing_admin_comment_ctrlenter'); function Bing_admin_comment_ctrlenter(){ echo '
        jQuery(document).ready(function($){
            $("textarea").keypress(function(e){
                if(e.ctrlKey&&e.which==13||e.which==10){
                    $("#replybtn").click();
                }
            });
        });
    '; }; /* * WordPress allows the backend user list to be sorted by the number of articles */ if ( !  class_exists('Sort_Users_By_Post_Count') ) {
    class Sort_Users_By_Post_Count {
        function Sort_Users_By_Post_Count() {
            // Make user table sortable by post count
            add_filter( 'manage_users_sortable_columns', array( $this, 'add_custom_user_sorts' ) );
        }
        /* Add sorting by post count to user page */
        function add_custom_user_sorts( $columns ) {
            $columns['posts'] = 'post_count';
            return $columns;
        }
    }
    $Sort_Users_By_Post_Count = new Sort_Users_By_Post_Count();
}
/*
 * WordPress 4.3+ 默认开启页面的评论功能
 */
add_filter( 'get_default_comment_status', 'wp33516_open_comments_for_pages', 10, 3 );
function wp33516_open_comments_for_pages( $status, $post_type, $comment_type ) {
    if ( 'page' === $post_type ) {
        $status = 'open';
    }
    return $status;
}
/*
 * 将WordPress后台的open-sans字体加载源从Google Fonts换为360 CDN
 */
add_action( 'init', 'wpdx_replace_open_sans' );
function wpdx_replace_open_sans() {
    wp_deregister_style('open-sans');
    wp_register_style( 'open-sans', '//fonts.useso.com/css?family=Open+Sans:300italic,400italic,600italic,300,400,600' );
    if(is_admin()) wp_enqueue_style( 'open-sans');
}
/*
 * WordPress 关闭 XML-RPC 的 pingback 端口
 */
add_filter( 'xmlrpc_methods', 'remove_xmlrpc_pingback_ping' );
function remove_xmlrpc_pingback_ping( $methods ) {
    unset( $methods['pingback.ping'] );
    return $methods;
}
/*
 * 禁用 WordPress 的 JSON REST API
 */
add_filter('json_enabled', '__return_false');
add_filter('json_jsonp_enabled', '__return_false');
/*
 * 禁止WordPress压缩JGP图片质量
 */
add_filter( 'jpg_quality', 'high_jpg_quality' );
function high_jpg_quality() {
    return 100;
}
/*
 * WordPress 隐藏特定插件的更新提示
 */
//add_filter( 'site_transient_update_plugins', 'filter_plugin_updates' );
function filter_plugin_updates( $value ) {
    unset( $value->response['plugin-directory/plugin-file.php'] );
    return $value;
}
/*
 * 隐藏核心更新提示 WP 3.0+
 */
//add_filter( 'pre_site_transient_update_core', create_function( '$a', "return null;" ) );
/*
 * 隐藏插件更新提示 WP 3.0+
 */
//remove_action( 'load-update-core.php', 'wp_update_plugins' );
//add_filter( 'pre_site_transient_update_plugins', create_function( '$b', "return null;" ) );
/*
 * 隐藏主题更新提示 WP 3.0+
 */
//remove_action( 'load-update-core.php', 'wp_update_themes' );
//add_filter( 'pre_site_transient_update_themes', create_function( '$c', "return null;" ) );
/*
 * 为新用户预设默认的后台配色方案
 */
add_action('user_register', 'set_default_admin_color');
function set_default_admin_color($user_id) {
    $args = array(
        'ID' => $user_id,
        'admin_color' => 'sunrise'
    );
    wp_update_user( $args );
}
/*
 * 对非管理员移除配色方案设置选项
 */
if ( !current_user_can('manage_options') ){
    remove_action( 'admin_color_scheme_picker', 'admin_color_scheme_picker' );
}
/*
 * 移除 WordPress 仪表盘欢迎面板
 */
//remove_action('welcome_panel', 'wp_welcome_panel');
/*
 * 自定义 WordPress 仪表盘欢迎面板
 */
//add_action( 'welcome_panel', 'rc_my_welcome_panel' );
function rc_my_welcome_panel() {
    ?>
    <script type="text/javascript">
        /* 隐藏默认的欢迎信息 */
        jQuery(document).ready( function($)
        {
            $('div.welcome-panel-content').hide();
        });
    </script>
    <!-- 添加自定义信息 -->
    <div class="custom-welcome-panel-content">
        <h2><?php _e( '欢迎使用WordPress!' ); ?></h2>
        <p class="about-description"><?php _e( '我们准备了几个链接供您开始:' ); ?></p>
        <div class="welcome-panel-column-container">
            <div class="welcome-panel-column">
                <h3 style="font-weight: bold"><?php _e( "开始使用" ); ?></h3>
                <a class="button button-primary button-hero load-customize hide-if-no-customize" href="http://www.ankium.com"><?php _e( '联系我们' ); ?></a>
                <p class="hide-if-no-customize"><?php printf( __( '或者 <a href="%s">设置网站</a>' ), admin_url( 'options-general.php' ) ); ?></p>
            </div>
            <div class="welcome-panel-column">
                <h4><?php _e( 'Next Steps' ); ?></h4>
                <ul>
                    <?php if ( 'page' == get_option( 'show_on_front' ) && !  get_option( 'page_for_posts' ) ) : ?>  ' .  __( 'Edit your front page' ) .  ' ', get_edit_post_link( get_option( 'page_on_front' ) ) ); ?>  ' .  __( 'Add additional pages' ).  ' ', admin_url( 'post-new.php?post_type=page' ) ); ?>  ' .  __( 'Edit your front page' ) .  ' ', get_edit_post_link( get_option( 'page_on_front' ) ) ); ?>  ' .  __( 'Add additional pages' ).  ' ', admin_url( 'post-new.php?post_type=page' ) ); ?>  ' .  __( 'Add a blog post' ) .  ' ', admin_url( 'post-new.php' ) ); ?>  ' .  __( 'Write your first blog post' ) .  ' ', admin_url( 'post-new.php' ) ); ?>  ' .  __( 'Add an About page' ).  ' ', admin_url( 'post-new.php?post_type=page' ) ); ?>  ' .  __( 'View your site' ) .  ' ', home_url( '/' ) ); ?>  ' .  __( 'Manage widgets or menus ' ) .  ' ', admin_url( 'widgets.php' ), admin_url( 'nav-menus.php' ) ); ?>  ' .  __( 'Turn comments on or off' ) .  ' ', admin_url( 'options-discussion.php' ) ); ?>  ' .  __( 'Learn more about getting started' ).  ' ', __( 'http://codex.wordpress.org/First_Steps_With_WordPress' ) ); ?> 延安安琪云信息科技有限公司-->Yan'an Angel Cloud Information Technology Co., Ltd. was established on October 3, 3. It is an emerging integrated Internet service provider in northern Shaanxi.The company's business involves network engineering, software design, e-commerce, e-government, data maintenance and customized development of brand websites.Our goal is to become a trusted Internet integrated solution provider for our customers!  2017, 'height' => 10 ); if ( $img[23] < $minimum['width'] ) $file['error'] = 'The image is too small, the minimum width is' .  $minimum['width'] .  'px, the width of the currently uploaded image is' .  $img[0] .  'px'; elseif ( $img[1] < $minimum['height'] ) $file['error'] = 'The image is too small, the minimum height is' .  $minimum['height'] .  'px, the height of the currently uploaded image is' .  $img[1] .  'px';
    return $file;
}
/*
 * WordPress 后台用户列表显示注册时间
 */
add_filter( 'manage_users_columns', array('RRHE','registerdate'));
add_action( 'manage_users_custom_column',  array('RRHE','registerdate_columns'), 15, 3);
add_filter( 'manage_users_sortable_columns', array('RRHE','registerdate_column_sortable') );
add_filter( 'request', array('RRHE','registerdate_column_orderby') );
class RRHE {
    // Register the column - Registered
    public static function registerdate($columns) {
        $columns['registerdate'] = __('注册时间', 'registerdate');
        return $columns;
    }
    // Display the column content
    public static function registerdate_columns( $value, $column_name, $user_id ) {
        if ( 'registerdate' != $column_name )
            return $value;
        $user = get_userdata( $user_id );
        $registerdate = get_date_from_gmt($user->user_registered);
        return $registerdate;
    }
    public static function registerdate_column_sortable($columns) {
        $custom = array(
            // meta column id => sortby value used in query
            'registerdate'    => 'registered',
        );
        return wp_parse_args($custom, $columns);
    }
    public static function registerdate_column_orderby( $vars ) {
        if ( isset( $vars['orderby'] ) && 'registerdate' == $vars['orderby'] ) {
            $vars = array_merge( $vars, array(
                'meta_key' => 'registerdate',
                'orderby' => 'meta_value'
            ) );
        }
        return $vars;
    }
}
/*
 * 在WordPress插件管理界面隐藏已启用的插件(包括管理员)
 */
//add_filter( 'all_plugins', 'hide_plugins');
function hide_plugins($plugins)
{
    // 隐藏 你好,多莉 插件
    if(is_plugin_active('hello.php')) {
        unset( $plugins['hello.php'] );
    }
    // 隐藏 post series插件
    if(is_plugin_active('ankium/ankium.php')) {
        unset( $plugins['ankium/ankium.php'] );
    }
    return $plugins;
}
/*
 * 在WordPress插件管理界面隐藏已启用的插件(除指定用户)
 */
add_filter('all_plugins', 'filter_visible_plugins');
function filter_visible_plugins($plugins) {
    //添加插件的相对于 /wp-content/plugins/ 的路径
    $pluginsToHide = array(
        'hello.php',
        'ankium/ankium.php'
    );
    //在这个例子中,我们对所有用户隐藏插件,除了用户 smith
    $currentUser = wp_get_current_user();
    $shouldHide = $currentUser->get('user_login') != 'ankium';
    if ( $shouldHide ) {
        foreach($pluginsToHide as $pluginFile) {
            unset($plugins[$pluginFile]);
        }
    }
    return $plugins;
}
/*
 * WordPress 移除插件列表所有已启用插件的“编辑”和“停用”链接
 */
//add_filter( 'plugin_action_links', 'remove_all_plugin_actions', 10, 4 );
function remove_all_plugin_actions( $actions, $plugin_file, $plugin_data, $context )
{
    // 移除所有“编辑”链接
    if ( isset( $actions['edit'] ) )
    {
        unset( $actions['edit'] );
    }
    // 移除插件的“停用”链接
    if( isset( $actions['deactivate'] ) )
    {
        unset( $actions['deactivate'] );
    }
    return $actions;
}
/*
 * WordPress 移除插件列表已启用特定插件的“编辑”和“停用”链接
 */
//add_filter( 'plugin_action_links', 'remove_plugin_actions', 10, 4 );
function remove_plugin_actions( $actions, $plugin_file, $plugin_data, $context )
{
    // 移除所有“编辑”链接
    if ( isset( $actions['edit'] ) )
    {
        unset( $actions['edit'] );
    }
    // 移除插件的“停用”链接
    if( isset( $actions['deactivate'] ) )
    {
        switch($plugin_file)
        {
            // 添加插件的主文件目录
            case 'hello.php': // 注意结尾是英文冒号
                unset( $actions['deactivate'] );
                break;
        }
    }
    return $actions;
}
/*
 * WordPress 禁用自定义文章类型的可视化编辑器
 */
//add_filter( 'user_can_richedit', 'disable_wysiwyg_editor_for_cpt' );
function disable_wysiwyg_editor_for_cpt( $default ) {
    global $post;
    if ( get_post_type( $post ) == 'question') // 请修改 question 为你的文章类型
        return false;
    return $default;
}
/*
 * WordPress 仪表盘显示待审核的文章列表
 */
add_action('wp_dashboard_setup', 'wpjam_modify_dashboard_widgets' );
function wpjam_modify_dashboard_widgets() {
    global $wp_meta_boxes;
    if(current_user_can('manage_options')){ //只有管理员才能看到
        add_meta_box( 'pending_posts_dashboard_widget', '待审文章', 'pending_posts_dashboard_widget_function','dashboard', 'normal', 'core' );
    }
}
function pending_posts_dashboard_widget_function() {
    global $wpdb;
    $pending_posts = $wpdb->get_results("SELECT * FROM {$wpdb->posts}  WHERE post_status = 'pending' ORDER BY post_modified DESC");
    if($pending_posts){ //判断是否有待审文章
        echo '<ul>';
        foreach ($pending_posts as $pending_post){
            echo '<li><a href="'.admin_url().'post.php?post='.$pending_post->ID.'&action=edit">'.$pending_post->post_title.'</a></li>';
        }
        echo '</ul>';
    }else echo '目前没有待审文章';
}
/*
 * WordPress 仪表盘“近期评论”显示完整评论内容和格式
 */
//add_filter('comment_excerpt', 'full_comments_on_dashboard');
function full_comments_on_dashboard($excerpt) {
    global $comment;
    if ( !is_admin() )
        return $excerpt;
    $content = wpautop($comment->comment_content);
    $content = substr($content, 3, -5);	// 移除第一个 <p> 和最后一个 </p>
    $content = str_replace('<p>', '<p style="display:block; margin:1em 0">', $content);
    return $content;
}
/*
 * WordPress 后台文章列表根据文章状态添加不同背景色
 */
add_action('admin_footer','posts_status_color');
function posts_status_color(){
    ?>
    <style>
        .status-draft{background: #FCE3F2 !important;/*草稿*/}
        .status-pending{background: #87C5D6 !important;/*待审核*/}
        .status-publish{/* 已发布,使用默认背景色,你也可以自己添加颜色 */}
        .status-future{background: #C6EBF5 !important;/*定时发布*/}
        .status-private{background:#F2D46F;/*私密日志*/}
        .post-password-required{background:#D874DE;/*密码保护*/}
    </style>
    <?php
}
/*
 * 更改标题输入框提示文字
 */
add_filter( 'enter_title_here', 'change_default_title' );
function change_default_title( $title ){
    $screen = get_current_screen();
    if( 'post' == $screen->post_type ) {
        $title = '输入文章标题';
    } elseif ('page' == $screen->post_type) {
        $title = '输入页面标题';
    } elseif ('book' == $screen->post_type) {
        $title = '输入书籍标题';
    }
    return $title;
}
/*
 * 让WordPress记住不同主题下所选择的的页面模板
 */
add_action( "updated_post_meta", "rmt_update_post_template_meta", 10, 4 );
add_action( "added_post_meta", "rmt_update_post_template_meta", 10, 4 );
function rmt_update_post_template_meta( $meta_id, $post_id, $meta_key, $meta_value ){
    if( '_wp_page_template' === $meta_key ){
        $theme = wp_get_theme();
        $name = $theme->template;
        if( $name ){
            update_post_meta( $post_id, '_wp_page_template_' .  $name, $meta_value ); } } } add_filter( 'get_post_metadata', 'rmt_get_post_template_meta', 10, 4 ); function rmt_get_post_template_meta( $value, $post_id, $meta_key, $single ){ if( '_wp_page_template' === $ meta_key ){ $theme = wp_get_theme(); $name = $theme->template; if( $name ){ $template = get_post_meta( $post_id, '_wp_page_template_' .  $name, $single ); if( $template && locate_template( $template ) ){ $value = $template; } } } return $value; } /* * Display file size in media library*/ //add_filter('manage_upload_columns ', 'size_column_register'); function size_column_register($columns) { $columns['dimensions'] = __('Dimensions'); return $columns; } //add_action('manage_media_custom_column', 'size_column_display', 10, 2) ; function size_column_display($column_name, $post_id) { if( 'dimensions' != $column_name || !wp_attachment_is_image($post_id)) return; list($url, $width, $height) = wp_get_attachment_image_src($post_id, 'full '); echo esc_html("{$width}×{$height}"); } /* * Display file size on media edit page*/ //add_action( 'attachment_submitbox_misc_actions', 'mc_attachment_submitbox_filesize' ); function mc_attachment_submitbox_filesize() { $post = get_post(); $filesize = @filesize( get_attached_file( $post->ID ) ); if ( !  empty( $filesize ) && is_numeric( $filesize ) && $filesize > 0 ) : ?> query_vars; if (!is_null($vars['search'])) { // For some reason the search terms are included by asterisks, remove them $search = preg_replace('/^\*/', '', $vars['search']); $search = preg_replace('/\*$/', '', $search); //Search public display name if(!empty($search)){ $user_search->query_where = substr(trim($user_search->query_where), 0, -1) .  " OR display_name LIKE '%".  $search .  "%')"; } //Search first and last name $user_search->query_from .= " INNER JOIN {$wpdb->usermeta} m1 ON " .
 "{$wpdb->users}.ID=m1.user_id AND (m1.meta_key='first_name')"; $user_search->query_from .= " INNER JOIN {$wpdb->usermeta} m2 ON " .
 "{$wpdb->users}.ID=m2.user_id AND (m2.meta_key='last_name')"; $names_where = $wpdb->prepare("m1.meta_value LIKE '%s' OR m2.meta_value LIKE ' %s'", "%{$search}%", "%$search%"); $user_search->query_where = str_replace('WHERE 1=1 AND (', "WHERE 1=1 AND ({$names_where} OR ", $user_search->query_where); } return $user_search; } /* * Display ID for articles, categories, etc. in the WordPress backend */ add_action('admin_init', 'ssid_add'); // Add a new column ID function ssid_column($cols) { $cols['ssid'] = 'ID'; return $cols; } // display ID function ssid_value($column_name, $id) { if ($column_name == 'ssid') echo $ id; } function ssid_return_value($value, $column_name, $id) { if ($column_name == 'ssid') $value = $id; return $value; } // add css for ID column function ssid_css() { ?>
        #ssid { width: 50px; } /* Simply Show IDs */
      is_admin() ) {
            add_action( 'pre_get_posts', array( $this, 'category_archives' ) );
            add_action( 'pre_get_posts', array( $this, 'tags_archives' ) );
        }
    }
    //为“页面”添加“标签”和“分类”
    function taxonomies_for_pages() {
        register_taxonomy_for_object_type( 'post_tag', 'page' );
        register_taxonomy_for_object_type( 'category', 'page' );
    }
    //在标签存档中包含“页面”
    function tags_archives( $wp_query ) {
        if ( $wp_query->get( 'tag' ) )
            $wp_query->set( 'post_type', 'any' );
    }
    //在分类存档中包含“页面”
    function category_archives( $wp_query ) {
        if ( $wp_query->get( 'category_name' ) || $wp_query->get( 'cat' ) )
            $wp_query->set( 'post_type', 'any' );
    }
}
$ptcfp = new PTCFP();
/*
 * 限制文章标题输入字数
 */
//add_action( 'admin_head-post.php', 'title_count_js');
//add_action( 'admin_head-post-new.php', 'title_count_js');
function title_count_js(){
    echo '<script>jQuery(document).ready(function(){
    jQuery("#titlewrap").after("<div><small>标题字数: </small><input type=\"text\" value=\"0\" maxlength=\"3\" size=\"3\" id=\"title_counter\" readonly=\"\" style=\"background:#fff;\"> <small>最大长度不得超过 46 个字</small></div>");
    jQuery("#title_counter").val(jQuery("#title").val().length);
    jQuery("#title").keyup( function() {
    jQuery("#title_counter").val(jQuery("#title").val().length);
    });
    jQuery("#titlewrap #title").keyup( function() {
    var $this = jQuery(this);
    if($this.val().length > 46)
    $this.val($this.val().substr(0, 46));
    });
});</script>';
}
/*
 * 自定义排序WordPress后台管理菜单
 */
//add_filter('custom_menu_order', 'custom_menu_order');
//add_filter('menu_order', 'custom_menu_order');
function custom_menu_order($menu_ord) {
    if (!$menu_ord) return true;
    return array(
        'index.php', // “仪表盘”菜单
        'edit.php?post_type=question', // 自定义文章类型的菜单
        'edit-comments.php', //“评论”菜单
        'upload.php', //“多媒体”菜单
        'edit.php?post_type=cmp_slider', //自定义文章类型的菜单
        'plugins.php', //“插件”菜单
        'themes.php', //“主题”菜单
        'edit.php?post_type=page', // “页面”菜单
        'edit.php', // “文章”菜单
    );
}
/*
 * 在WordPress仪表盘“概况”显示自定义文章类型数据
 */
add_action( 'right_now_content_table_end' , 'wph_right_now_content_table_end' );
function wph_right_now_content_table_end() {
    $args = array(
        'public' => true ,
        '_builtin' => false
    );
    $output = 'object';
    $operator = 'and';
    $post_types = get_post_types( $args , $output , $operator );
    foreach( $post_types as $post_type ) {
        $num_posts = wp_count_posts( $post_type->name );
        $num = number_format_i18n( $num_posts->publish );
        $text = _n( $post_type->labels->singular_name, $post_type->labels->name , intval( $num_posts->publish ) );
        if ( current_user_can( 'edit_posts' ) ) {
            $num = "<a href='edit.php?post_type=$post_type->name'>$num</a>";
            $text = "<a href='edit.php?post_type=$post_type->name'>$text</a>";
        }
        echo '<tr><td class="first num b b-' .  $post_type->name .  '">' .  $num .  ' '; echo '  $post_type->name .  '">' .  $text .  ' '; } $taxonomies = get_taxonomies( $args , $output , $operator ); foreach( $taxonomies as $taxonomy ) { $num_terms = wp_count_terms( $taxonomy->name ); $num = number_format_i18n( $num_terms ); $text = _n( $taxonomy->labels->singular_name, $taxonomy->labels->name , intval( $num_terms )); if ( current_user_can( 'manage_categories' ) ) { $num = " name'>$num "; $text = " name'>$text "; } echo '  $taxonomy->name .  '">' .  $num .  ' '; echo '  $taxonomy->name .  '">' .  $text .  '</td></tr>';
    }
}
/*
 * 仪表盘[活动]小工具输出自定义文章类型
 */
if ( is_admin() ) {
    add_filter( 'dashboard_recent_posts_query_args', 'wpdx_add_cpt_to_dashboard_activity' );
    function wpdx_add_cpt_to_dashboard_activity( $query ) {
        // 如果你要显示所有文章类型,就删除下行的 //,并在 11 行前面添加 //
        // $post_types = get_post_types();
        // 如果你仅仅希望显示指定的文章类型,可以修改下行的数组内容,并确保上行前面添加 //
        $post_types = ['post', 'download'];
        if ( is_array( $query['post_type'] ) ) {
            $query['post_type'] = $post_types;
        } else {
            $temp = $post_types;
            $query['post_type'] = $temp;
        }
        return $query;
    }
}
/*
 * 显示所有设置菜单
 */
add_action('admin_menu', 'all_settings_link');
function all_settings_link() {
    add_options_page(__('All Settings'), __('All Settings'), 'administrator', 'options.php');
}
/*
 * 在WordPress后台文章编辑器的上方或下方添加提示内容
 */
add_action( 'edit_form_after_title', 'below_the_title' );
function below_the_title() {
    echo '<h3>在编辑器上方添加的提示内容</h3>';
}
add_action( 'edit_form_after_editor', 'below_the_editor' );
function below_the_editor() {
    echo '<h4>在编辑器下方添加的提示内容</h4>';
}
/*
 * 在后台页面管理列表中隐藏特定的页面
 */
add_action( 'pre_get_posts' ,'exclude_this_page' );
function exclude_this_page( $query ) {
    if( !is_admin() )
        return $query;
    global $pagenow;
    if( 'edit.php' == $pagenow && ( get_query_var('post_type') && 'page' == get_query_var('post_type') ) )
        $query->set( 'post__not_in', array(23,28,30) ); // 页面的ID
    return $query;
}
/*
 * 修改 WordPress 发送邮件的默认邮箱和发件人
 */
add_filter('wp_mail_from_name', 'new_from_name');
add_filter('wp_mail_from', 'new_from_email');
function new_from_name($email){//默认发件人
    $wp_from_name = get_option('blogname');
    return $wp_from_name;
}
function new_from_email($email) {//默认发件箱
    $wp_from_email = get_option('admin_email');
    return $wp_from_email;
}
/*
 * WordPress仪表盘添加自定义Feed订阅
 */
add_action('wp_dashboard_setup', 'ankium_add_dashboard_widgets' );
function dashboard_custom_feed_output() {
    echo '<div class="rss-widget">';
    wp_widget_rss_output(array(
        'url' => 'http://www.ankium.com/feed/', //rss地址
        'title' => '查看安琪云的最新内容',
        'items' => 10,         //显示篇数
        'show_summary' => 0,  //是否显示摘要,1为显示
        'show_author' => 0,   //是否显示作者,1为显示
        'show_date' => 1  )); //是否显示日期
    echo '</div>';
}
function ankium_add_dashboard_widgets() {
    wp_add_dashboard_widget('example_dashboard_widget', '安琪云', 'dashboard_custom_feed_output');
}
/*
 * 自定义WordPress图片附件的默认链接方式(’none’,’file’,’post’)
 */
update_option('image_default_link_type', 'file');
/*
 * 关闭WordPress的XML-RPC离线发布功能
 */
add_filter('xmlrpc_enabled', '__return_false');
/*
 * 恢复WordPress默认上传路径和生成文件的URL地址
 */
if(get_option('upload_path')=='wp-content/uploads' || get_option('upload_path')==null) {
    update_option('upload_path',WP_CONTENT_DIR.'/uploads');
}
/*
 * 自定义WordPress媒体文件的上传路径和生成文件的URL地址
 */
//add_filter( 'upload_dir', 'wpjam_custom_upload_dir' );
function wpjam_custom_upload_dir( $uploads ) {
    $upload_path = '';
    $upload_url_path = '';
    if ( empty( $upload_path ) || 'wp-content/uploads' == $upload_path ) {
        $uploads['basedir']  = WP_CONTENT_DIR . 

 

Back to Top