Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save ValeriiVasyliev/42c6ad14100690cd1122061d177f8930 to your computer and use it in GitHub Desktop.
Save ValeriiVasyliev/42c6ad14100690cd1122061d177f8930 to your computer and use it in GitHub Desktop.
WordPress Admin : remove unnecessary fields
class AdminUsers
{

    private $plugin;

    public function __construct(Plugin $plugin)
    {

        $this->plugin = $plugin;
        add_action('admin_init', static function () {

            if (class_exists('\WPSEO_Admin_User_Profile')) {
                remove_action('show_user_profile', ['\WPSEO_Admin_User_Profile', 'user_profile']);
                remove_action('edit_user_profile', ['\WPSEO_Admin_User_Profile', 'user_profile']);
            }
        }, 99);
        add_action('admin_head', static function () {

            if (is_admin()) {
                ob_start(); ?>
                <style>
                    .user-rich-editing-wrap,
                    .user-syntax-highlighting-wrap,
                    .user-comment-shortcuts-wrap,
                    .user-admin-bar-front-wrap {
                                display: none;
                    }
                </style>
                <?php ob_end_flush();
            }
        });

        add_action('admin_footer-profile.php', static function () {

            if (is_admin()) {
                ?>
            <script>
                document.addEventListener( 'DOMContentLoaded', () => {
                    document.querySelector( 'tr.user-language-wrap' ).remove();
            } );
            </script>
                <?php
            }
        });

        add_action('admin_head', static function () {

            if (is_admin()) {
                ?>
            <style>
            .yoast-settings {
                    display: none;
            }
            </style>
                <?php
            }
        });
        if (is_admin()) {
            remove_action("admin_color_scheme_picker", "admin_color_scheme_picker");
        }

        add_filter('user_contactmethods', [$this, 'yoast_seo_admin_user_remove_social'], 99);
    }

    public function yoast_seo_admin_user_remove_social($contactmethods)
    {

        unset($contactmethods['facebook']);
        unset($contactmethods['instagram']);
        unset($contactmethods['linkedin']);
        unset($contactmethods['myspace']);
        unset($contactmethods['pinterest']);
        unset($contactmethods['soundcloud']);
        unset($contactmethods['tumblr']);
        unset($contactmethods['twitter']);
        unset($contactmethods['youtube']);
        unset($contactmethods['wikipedia']);
        return $contactmethods;
    }

}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment