Anda para pengguna WordPress, pasti kenal betul dengan yang namanya dashboard. Dashboard merupakan bagian terpenting dan paling penting di blog bermesin WordPress. Bisa Anda bayangkan, apa jadinya bila Anda tidak bisa masuk ke dashboard? Dashboard-lah tempat Anda menulis artikel (Add New Post), merubah tema (Themes), merubah elemen tema (theme editor) sampai ke pengaturan Permanent Link (Permalink) dll. Nah, tahukah Anda bahwa kita juga bisa merubah tampilan dashboard blog WordPress kita?
Ok. Tulisan kali ini akan membahas tentang beberapa teknik (kalau boleh dibilang teknik) bagi Anda yang mengerti atau yang sudah bosan mengotak-atik tema kayak saya 😛 ingin memodifikasi Dashboard WordPress Anda. Berikut di antaranya:
Menghilangkan Menu Dashboard
Benar! Anda bisa menghilangkan beberapa menu standar pada dashboard WordPress. Ingat, jangan semuanya dihilangkan, entar malah binggung sendiri =)) Loh? Mengapa dihilangkan? Begini, biasanya Saya menggunakan teknik ini pada beberapa klien Saya yang tidak ingin dipusingkan dengan settingan-settingan aneh. Sehingga, sebelum Saya hilangkan, Saya mengaturnya sedemikian rupa agar blog klien Saya itu beroperasi maksimal (baik dalam SEO, maupun dalam hal tampilan). Keuntungannya, menghilangkan beberapa menu seperti Appearance akan menghindarkan klien Saya dari kesalahan tanpa disengaja. Misalnya perubahan kode-kode *.php atau tag-tag html pada tema yang digunakan melalui Theme Editor. Maka dari itu, klien Saya meminta untuk dihilangkan saja. Berhubung klien adalah Raja, jadi ya Saya kabulkan saja 🙂
Cara menghilangkan Menu Dashboard? Biar gampang, silakan copy-paste kode di bawah ini ke dalam file functions.php dari tema yang Anda gunakan.
function
remove_menus () {
global
$menu;
$restricted
= array(__('Posts'), __('Media'), __('Links'), __('Pages'), __('Appearance'), __('Tools'), __('Users'), __('Settings'), __('Comments'), __('Plugins'));
end
($menu);
while
(prev($menu)){
$value
= explode(' ',$menu[key($menu)][0]);
if(in_array($value[0] != NULL?$value[0]:""
, $restricted)){unset($menu[key($menu)]);}
}
}
add_action('admin_menu', 'remove_menus');
Kode di atas akan menghilangkan menu Posts, Media, Link, Pages, Appearance, Tools, Users, Settings, Comments dan Plugins. Semua nama menu yang ada pada $restricted, akan hilang. Jika ingin menghilangkan menu plugins, cukup kode __('Plugins')
yang ada setelah $restricted
. Begitu seterusnya.
Merubah Logo saat Login
Kebanyakan klien Saya lebih menyukai logo perusahaan mereka yang terpasang saat login, bukan logo WordPress. Merubahnya? Silakan copy-paste kode berikut di functions.php
function
my_custom_login_logo() {
echo
'<style>
h1 a { background-image:url('.get_bloginfo('template_directory').'/images/logo-yang-anda-inginkan.gif) !important; }
</style>';
}
add_action('login_head', 'my_custom_login_logo');
Kalau tidak mau repot, silakan gunakan plugin Custom Admin Branding (kalau Saya sih suka cara yang ribet, sekalian belajar. Yah, setidaknya tahu 😉 )
Mengganti Logo di Dashboard
Sekali lagi, kebanyakan perusahaan akan lebih senang jika logo mereka yang tampil di dashboard, bukan logo “W” (banyak maunya ini perusahaan 😛 ). Mengantinya? Silakan copy-paste kode berikut di functions.php
add_action('admin_head', 'my_custom_logo');
function
my_custom_logo() {
echo
'<style>
#header-logo { background-image: url('.get_bloginfo('template_directory').'/images/logo-yang-anda-inginkan.gif) !important; }</style>';
}
Menghilangkan Pesan “Please Upgrade Now”
Silakan copy-paste kode berikut di functions.php
if
( !current_user_can( 'edit_users'
) ) {
add_action( 'init', create_function( '$a', "remove_action( 'init', 'wp_version_check' );"
), 2 );
add_filter( 'pre_option_update_core', create_function( '$a', "return null;"
) );
}
Saran Saya sih tidak usah dihilangkan, karena ini penting. WordPress terbaru biasanya tingkat keamanannya lebih tinggi. Juga agar Mencegah WordPress Anda diincar Hacker. Tapi kalau cuma ingin coba-coba, monggo 🙂
Memonitor Server di Dashboard WordPress
Asikkan kalau kita bisa memonitor server dari dashboard? Kan ga seru kalau kita ingin melihat pesan error (error log) harus login lagi ke CPanel. Copy-Paste aja kode berikut ke functions.php
function
slt_PHPErrorsWidget() {
$logfile
= '/home/path/logs/php-errors.log'; // Masukkan alamat file error log Anda di sini
$displayErrorsLimit
= 100; // Jumlah error maksium yang ingin ditampilkan
$errorLengthLimit
= 300; // Jumlah karakter maksium yang ingin ditampilkan dalam pesan error
$fileCleared
= false;
$userCanClearLog
= current_user_can( 'manage_options'
);
// Clear file?
if
( $userCanClearLog
&& isset( $_GET["slt-php-errors"] ) && $_GET["slt-php-errors"]=="clear"
) {
$handle
= fopen( $logfile, "w"
);
fclose( $handle
);
$fileCleared
= true;
}
// Read file
if
( file_exists( $logfile
) ) {
$errors
= file( $logfile
);
$errors
= array_reverse( $errors
);
if
( $fileCleared
) echo
'<p><em>File cleared.</em></p>';
if
( $errors
) {
echo
'<p>'.count( $errors
).' error';
if
( $errors
!= 1 ) echo
's';
echo
'.';
if
( $userCanClearLog
) echo
' [ <b><a href="'.get_bloginfo("url").'/wp-admin/?slt-php-errors=clear"
onclick="return confirm('Are you sure?');">CLEAR LOG FILE</a></b> ]';
echo
'</p>';
echo
'<div id="slt-php-errors" style="height:250px;overflow:scroll;padding:2px;background-color:#faf9f7;border:1px solid #ccc;">';
echo
'<ol style="padding:0;margin:0;">';
$i
= 0;
foreach
( $errors
as
$error
) {
echo
'<li style="padding:2px 4px 6px;border-bottom:1px solid #ececec;">';
$errorOutput
= preg_replace( '/[([^]]+)]/', '<b>[$1]</b>', $error, 1 );
if
( strlen( $errorOutput
) > $errorLengthLimit
) {
echo
substr( $errorOutput, 0, $errorLengthLimit
).' [...]';
} else
{
echo
$errorOutput;
}
echo
'</li>';
$i++;
if
( $i
> $displayErrorsLimit
) {
echo
'<li style="padding:2px;border-bottom:2px solid #ccc;"><em>lebih dari '.$displayErrorsLimit.' errors di dalam file log...</em></li>';
break;
}
}
echo
'</ol></div>';
} else
{
echo
'<p>Tidak ada error yang tercatat.</p>';
}
} else
{
echo
'<p><em>Ups.. ada kesalahan dalam membaca file error log.</em></p>';
}
}
// Tambahkan widgets
function
slt_dashboardWidgets() {
wp_add_dashboard_widget( 'slt-php-errors', 'PHP errors', 'slt_PHPErrorsWidget'
);
}
add_action( 'wp_dashboard_setup', 'slt_dashboardWidgets'
);
Asik kan? 😀
Ingat! Sebelum melakukan modifikasi Dashboard, backup terlebih dahulu. Saya tidak bertanggung jawab loh =)) Kalau Saya mencoba di localhost dulu 🙂
Oke, segitu dulu.. Capek nulisnya 😀