こんな方に読んでほしい
[記事の内容]

WordPressの管理画面は、プラグインを使わなくても、functions.phpとCSSだけでカスタマイズできます。プラグインを増やすと、更新の手間や動作の重さが増えてしまいます。
今回は、ダッシュボードに「投稿新規追加」や「メディア追加」などのショートカットボタンを追加する方法を紹介します。よく使う画面にワンクリックで移動できるので、管理画面に慣れていないお客様にも便利です。
こう見ると、左のサイドメニューの文字が小さく見える方もいますね。

今回は、次の2つのファイルを使用します。
admin-custom.css(管理画面用のオリジナルCSS)functions.php(テーマのPHPファイル)
テーマのフォルダ内にadmin-custom.cssを作成し、次のCSSを記述します。ショートカットボタンのデザインを指定するCSSです。
/* ダッシュボードを1カラム表示にする */
#wpbody-content #dashboard-widgets .postbox-container {
width: 100% !important;
}
/* ボタンを並べるエリア */
.dashbox-list {
display: flex;
flex-wrap: wrap;
gap: 10px;
}
/* ボタン1つ分(2列で表示) */
.dashbox {
flex: 0 0 calc(50% - 5px);
box-sizing: border-box;
background-color: #eeeeee;
border: 1px solid #ffffff;
border-radius: 7px;
box-shadow: 0 0 3px #999999;
}
/* リンク部分 */
.dashbox a {
display: block;
padding: 30px 50px;
font-size: 16px;
color: #666666;
text-align: center;
text-decoration: none;
border-radius: 3px;
}
/* ホバー時 */
.dashbox a:hover {
color: #ffffff;
background-color: #00cccc;
}
/* スマホ表示では1列にする */
@media screen and (max-width: 782px) {
.dashbox {
flex-basis: 100%;
}
}.postbox-containerの幅を100%にして、ダッシュボードを1カラムで表示します。!importantは、WordPress標準のCSSより優先させるために指定しています。display: flex;とflex-wrap: wrap;で、ボタンを横に並べて、入りきらない分は折り返します。gapでボタン同士の間隔を指定します。flex: 0 0 calc(50% - 5px);で、ボタンの幅を約半分にして2列で表示します。5pxは、gapの半分の値です。display: block;でリンク全体をクリックできるようにして、paddingでボタンの大きさを調整します。a:hoverで、マウスを乗せたときに背景色と文字色を変更します。@media screen and (max-width: 782px)で、WordPress管理画面のスマホ幅のときにボタンを1列にします。色やフォントサイズ、ボタンの大きさは、お好みに合わせて変更できます。
次に、テーマのfunctions.phpに、先ほど作成したCSSを管理画面で読み込むコードを追加します。
/* ------------------------------------------------------------------------------
管理画面カスタマイズ
------------------------------------------------------------------------------ */
// 管理画面にオリジナルCSSを読み込む
add_action( 'admin_enqueue_scripts', 'admin_css_custom' );
function admin_css_custom() {
wp_enqueue_style(
'admin-custom',
get_stylesheet_directory_uri() . '/admin-custom.css',
array(),
'1.0'
);
}add_action( 'admin_enqueue_scripts', ... )で、管理画面でCSSやJavaScriptを読み込むタイミングに関数を実行します。wp_enqueue_style()は、CSSを読み込むWordPress標準の関数です。1つ目の値は、CSSを識別する名前(ハンドル名)になります。get_stylesheet_directory_uri()で、現在使用しているテーマのフォルダのURLを取得します。子テーマを使っている場合は、子テーマのフォルダを指します。'1.0'はCSSのバージョンです。CSSを更新したときに数字を変えると、ブラウザのキャッシュを更新できます。続けて、ダッシュボードに「更新」というウィジェットを追加するコードを、同じfunctions.phpに記述します。
// ウィジェットの中身(ショートカットボタン)
function example_dashboard_widget_function() {
?>
<div class="dashbox-list">
<div class="dashbox"><a href="<?php echo esc_url( home_url( '/' ) ); ?>" target="_blank" rel="noopener">「サイトを表示」</a></div>
<div class="dashbox"><a href="<?php echo esc_url( admin_url( 'post-new.php' ) ); ?>">「投稿新規追加」</a></div>
<div class="dashbox"><a href="<?php echo esc_url( admin_url( 'edit.php' ) ); ?>">「投稿一覧」</a></div>
<div class="dashbox"><a href="<?php echo esc_url( admin_url( 'media-new.php' ) ); ?>">「メディア追加」</a></div>
<div class="dashbox"><a href="<?php echo esc_url( admin_url( 'upload.php' ) ); ?>">「メディア一覧」</a></div>
</div>
<?php
}
// ダッシュボードにウィジェットを登録する
function example_add_dashboard_widgets() {
wp_add_dashboard_widget( 'example_dashboard_widget', '更新', 'example_dashboard_widget_function' );
}
add_action( 'wp_dashboard_setup', 'example_add_dashboard_widgets' );example_dashboard_widget_function()の中で、ショートカットボタンのHTMLを出力します。dashboxを1つ追加するごとに、ボタンを1つ増やせます。home_url( '/' )でサイトのトップページ、admin_url( 'post-new.php' )で管理画面内のページのURLを取得します。esc_url()で、URLを安全な形式に変換してから出力します。wp_add_dashboard_widget()で、ダッシュボードにウィジェットを追加します。値は順に「ウィジェットのID」「表示するタイトル」「中身を出力する関数名」です。add_action( 'wp_dashboard_setup', ... )で、ダッシュボードの準備ができたタイミングに登録処理を実行します。<div class="dashbox">の1行をコピーして、
リンク先と文言を書き換えるだけで、ショートカットボタンを増やせます。
コードを保存したら、管理画面で次の手順で確認します。

冒頭で話題になった、左サイドメニューの文字が小さい問題は、同じCSSファイルに次のコードを追加すると解消できます。
/* 左サイドメニューの文字サイズを大きくする */
#adminmenu .wp-menu-name {
font-size: 16px;
}#adminmenuは、WordPress管理画面の左サイドメニュー全体のIDです。.wp-menu-nameは、「投稿」や「固定ページ」などのメニュー名の部分です。font-sizeの値を変更すると、文字の大きさを調整できます。管理画面のバージョンによってCSSの構造が変わる場合があります。文字サイズが変わらないときは、ブラウザの検証ツールでクラス名を確認してください。
functions.phpとCSSが上書きされる場合があります。子テーマを使うことをおすすめします。current_user_can()で権限を判定する条件を追加します。functions.phpの編集前には、バックアップを取っておくと安心です。記述ミスがあると、サイトが表示されなくなる場合があります。今回は、プラグインを使わずにWordPressの管理画面をカスタマイズする方法を紹介しました。CSSでボタンのデザインを作り、functions.phpでCSSの読み込みとウィジェットの追加を行うと、ダッシュボードにショートカットボタンを設置できます。
実際にはプラグインやfunctions.phpでサイドメニューをカスタマイズする方法もありますが、今回はあえてダッシュボードのカスタマイズを行いました。この方法は、以前、学校の先生に教えていただいた技術をもとにしています。
admin_enqueue_scriptsとwp_enqueue_style()で読み込みます。wp_add_dashboard_widget()で追加します。admin_url()とesc_url()で安全に出力します。dashboxの1行を追加します。#adminmenu .wp-menu-nameで変更できます。functions.phpを編集する前に、バックアップを取ります。2026.10.21
2026.10.20
2026.10.19
2026.10.15
2026.10.14
2026.10.13
2026.10.10
2026.08.14
2026.08.12
2026.04.05

© 2026 shu-naka-blog