مقاله “۱۰ کد مفید functions.php برای مدیریت پیشخوان وردپرس”

اگر شما از طراحان و توسعه دهندگان وب – مخصوصا پوسته های وردپرس – هستید، در طول کار خود به این نتیجه رسیدید که برخی از قطعه کدها کلیدی بوده و قابلیت استفاده در پوسته های مختلف را دارند. ما در این نوشته تعداد ۱۰ قطعه از این کدهای مفید را که می توانید از آن ها در فایل functions.php استفاده کنید، برای شما گردآوری کرده ایم. امیدواریم مورد استفاده شما قرار گیرد.

۱- فعال کردن مخفی سازی نمایش ویژگی های مدیریت

این قطعه کد گزینه ای را به منوی “تنظیمات” اضافه می کند که باعث نمایش صفحه “all settings” یا “همه تنظیمات”  خواهد شد. در این صفحه یک لیست کامل از تمام تنظیمات موجود در بانک اطلاعاتی وردپرس که با سایت جاری مرتبط هستند، وجود دارد. لازم به ذکر است که این لینک تنها برای کاربرانی با نقش “مدیر کل” یا “administrator” نمایش داده می شود و سایر نقش های کاربری قادر به مشاهده و استفاده از آن نیستند.

// CUSTOM ADMIN MENU LINK FOR ALL SETTINGS
   function all_settings_link() {
    add_options_page(__('All Settings'), __('All Settings'), 'administrator', 'options.php');
   }
   add_action('admin_menu', 'all_settings_link');

۲- غیر فعالسازی هشدار بروزرسانی برای همه کاربران به جز مدیر سایت

این کد به شما تضمین می دهد که هیچ کاربری جز مدیران سایت، هشدار مربوط به بروز رسانی وردپرس که در پیشخوان وردپرس ظاهر می شود، را نخواهد دید.

// REMOVE THE WORDPRESS UPDATE NOTIFICATION FOR ALL USERS EXCEPT SYSADMIN
       global $user_login;
       get_currentuserinfo();
       if (!current_user_can('update_plugins')) { // checks to see if current user can update plugins
        add_action( 'init', create_function( '$a', "remove_action( 'init', 'wp_version_check' );" ), 2 );
        add_filter( 'pre_option_update_core', create_function( '$a', "return null;" ) );
       }

۳- تغییر لوگوی ورود و لینک تصویر آن

به کمک این کد می توانید لوگوی صفحه ورود سایت وردپرسی خود به همراه لینک آن و توضیح مربوط به تصویر (alt text) را به راحتی تغییر دهید.

// CUSTOM ADMIN LOGIN HEADER LOGO
   function my_custom_login_logo() {
echo '';
   }
   add_action('login_head', 'my_custom_login_logo');

// CUSTOM ADMIN LOGIN HEADER LINK & ALT TEXT
   function change_wp_login_url() {
    echo bloginfo('url');  // OR ECHO YOUR OWN URL
   }
   function change_wp_login_title() {
    echo get_option('blogname'); // OR ECHO YOUR OWN ALT TEXT
   }
   add_filter('login_headerurl', 'change_wp_login_url');
   add_filter('login_headertitle', 'change_wp_login_title');

۴- سفارشی سازی چینش عناصر منوی مدیریت وردپرس

این کد به شما اجازه می دهد تا ترتیب عناصر موجود در منوی مدیریت وردپرس را دوباره سازمان دهی نمایید. برای انجام این کار کافی است بر روی عناصر یا همان گزینه های مورد نظر کلیک کنید تا آدرس آن را به دست آورید. سپس آدرس موجود در جلوی /wp-admin/ را کپی کنید. یرای مثال به قطعه کد زیر توجه کنید:

// CUSTOMIZE ADMIN MENU ORDER
   function custom_menu_order($menu_ord) {
       if (!$menu_ord) return true;
       return array(
        'index.php', // this represents the dashboard link
        'edit.php?post_type=events', // this is a custom post type menu
        'edit.php?post_type=news',
        'edit.php?post_type=articles',
        'edit.php?post_type=faqs',
        'edit.php?post_type=mentors',
        'edit.php?post_type=testimonials',
        'edit.php?post_type=services',
        'edit.php?post_type=page', // this is the default page menu
        'edit.php', // this is the default POST admin menu
    );
   }
   add_filter('custom_menu_order', 'custom_menu_order');
   add_filter('menu_order', 'custom_menu_order');

۵- حذف آیتم های اضافه پیشخوان

به کمک این قطعه کد قادر خواهید بود آیتم های مزاحم را حذف نمایید. برای مشاهده اطلاعات بیشتر به لینک “” مراجعه نمایید.

add_action('wp_dashboard_setup', 'my_custom_dashboard_widgets');

function my_custom_dashboard_widgets() {
global $wp_meta_boxes;
//Right Now – Comments, Posts, Pages at a glance
unset($wp_meta_boxes


[‘dashboard’][‘normal’][‘core’][‘dashboard_right_now’]);
//Recent Comments
unset($wp_meta_boxes[‘dashboard’][‘normal’][‘core’][‘dashboard_recent_comments’]);
//Incoming Links
unset($wp_meta_boxes[‘dashboard’][‘normal’][‘core’][‘dashboard_incoming_links’]);
//Plugins – Popular, New and Recently updated WordPress Plugins
unset($wp_meta_boxes[‘dashboard’][‘normal’][‘core’][‘dashboard_plugins’]);

//Wordpress Development Blog Feed
unset($wp_meta_boxes[‘dashboard’][‘side’][‘core’][‘dashboard_primary’]);
//Other WordPress News Feed
unset($wp_meta_boxes[‘dashboard’][‘side’][‘core’][‘dashboard_secondary’]);
//Quick Press Form
unset($wp_meta_boxes[‘dashboard’][‘side’][‘core’][‘dashboard_quick_press’]);
//Recent Drafts List
unset($wp_meta_boxes[‘dashboard’][‘side’][‘core’][‘dashboard_recent_drafts’]);
}

۶- فوتر سفارشی وردپرس

از این قطعه کد می توانید در سایت های مشتریانتان برای ایجاد پل ارتباطی با شما به عنوان طراح و توسعه دهنده وب استفاده کنید.

// customize admin footer text
function custom_admin_footer() {
        echo 'add your custom footer text and html here';
}
add_filter('admin_footer_text', 'custom_admin_footer');

۷- پیشخوان سفارشی سازی شده با CSS

شما می توانید هر گونه تغییری را در CSS بین تگ ها اضافه کنید.

/* Change WordPress dashboard CSS */
function custom_admin_styles() {
    echo '


‘; } add_action(‘admin_head’, ‘custom_admin_styles’);

۸- نمایش تعداد کلمات نوشته ها در پیشخوان

قطعه کد زیر تعداد کل کلمات ارسال شده در سایت وردپرسی تان را در جعبه ای در پایین پیشخوان وردپرس به نمایش در می آورد. به کمک این کد می توانید نیرومندتر شدن مهارت های وبلاگ نویسی سایتتان را پیگیری نمایید!

function post_word_count() {
    $count = 0;
    $posts = get_posts( array(
        'numberposts' => -1,
        'post_type' => array( 'post', 'page' )
    ));
    foreach( $posts as $post ) {
        $count += str_word_count( strip_tags( get_post_field( 'post_content', $post->ID )));
    }
    $num =  number_format_i18n( $count );
    // This block will add your word count to the stats portion of the Right Now box
    $text = _n( 'Word', 'Words', $num );
    echo "{$num}{$text}

“; // This line will add your word count to the bottom of the Right Now box. echo ‘

This blog contains a total of ‘ . $num . ‘ published words!

‘; } // add to Content Stats table add_action( ‘right_now_content_table_end’, ‘post_word_count’); // add to bottom of Activity Box add_action(‘activity_box_end’, ‘post_word_count’);

۹- حذف نوار مدیریت (ADMIN BAR)

از وردپرس ۳.۱ به بعد قابلیتی به نام نوار مدیریت یا همان ADMIN BAR به هسته وردپرس اضافه شده است. اگر شما وارد پیشخوان شده باشید این نوار هم در سایت وهم در پیشخوان نمایش داده می شود. اگر تمایل به حذف این ویژگی دارید فقط کافی است از قطعه کد زیر استفاده کنید:

remove_action('init', 'wp_admin_bar_init');

۱۰-اضافه کردن لینک های سفارشی به نوار مدیریت

برای اضافه کردن لینک های دلخواه کد کافی است، قطعه کد زیر را متناسب با نیاز خود شخصی سازی نمایید.

function mytheme_admin_bar_render() {
	global $wp_admin_bar;
	$wp_admin_bar->add_menu( array(
		'parent' => 'new-content', // use 'false' for a root menu, or pass the ID of the parent menu
		'id' => 'new_media', // link ID, defaults to a sanitized title value
		'title' => __('Media'), // link title
		'href' => admin_url( 'media-new.php'), // name of file
		'meta' => false // array of any of the following options: array( 'html' => '', 'class' => '', 'onclick' => '', target => '', title => '' );
	));
}
add_action( 'wp_before_admin_bar_render', 'mytheme_admin_bar_render' );