管理画面の固定ページ一覧、投稿一覧に「スラッグ」を追加表示する方法

WordPressの管理画面で固定ページ一覧と投稿一覧を表示すると、タイトル・作成者・日付などは確認できますが、デフォルトでは「スラッグ(URLの一部)」が表示されません。
サイト運営でページ管理を効率化するために、スラッグを固定ページ一覧、投稿一覧に表示させる方法をご紹介します。

functions.phpにコードを追加

子テーマの functions.php に以下のコードを追加してください。
これで管理画面の「固定ページ一覧」に「スラッグ」列が表示されます。


// ------------------------------
// 固定ページ一覧、投稿一覧に「スラッグ」を追加
// ------------------------------

// 固定ページ一覧にスラッグ列を追加
add_filter('manage_pages_columns', function($columns) {
    $columns['slug'] = 'スラッグ';
    return $columns;
});
add_action('manage_pages_custom_column', function($column, $post_id) {
    if ($column === 'slug') {
        $post = get_post($post_id);
        $slug = $post->post_name;
        echo '' . esc_html($slug) . '';
    }
}, 10, 2);

// 投稿一覧にスラッグ列を追加
add_filter('manage_posts_columns', function($columns) {
    $columns['slug'] = 'スラッグ';
    return $columns;
});
add_action('manage_posts_custom_column', function($column, $post_id) {
    if ($column === 'slug') {
        $post = get_post($post_id);
        $slug = $post->post_name;
        echo '' . esc_html($slug) . '';
    }
}, 10, 2);

// 管理画面用CSSを読み込む
add_action('admin_enqueue_scripts', function($hook) {
    // 投稿一覧(edit.php)、固定ページ一覧(edit-pages.php)のみ
    if (in_array($hook, ['edit.php', 'edit-pages.php'])) {
        wp_enqueue_style(
            'admin-columns-style',
             //お使いのcssファイル名に変更
            get_stylesheet_directory_uri() . '/style.css'
        );
    }
});


// CSSを読み込む
add_action('admin_enqueue_scripts', function($hook) {
    if ($hook === 'edit.php' || $hook === 'edit-pages.php') {
        //お使いのcssファイル名に変更
        wp_enqueue_style('my-admin-style', get_stylesheet_directory_uri() . '/style.css');
    }
});
    
補足:

  • manage_pages_columns フィルターで「スラッグ」列を追加。
  • manage_pages_custom_column アクションで実際のスラッグを表示。
  • $post->post_name がスラッグに相当します。
  • get_stylesheet_directory_uri() . '/style.css'「style」部分にご自身のお使いのcssファイル名に変更

子テーマのディレクトリ構造

  • child-theme/
    • style.css
    • functions.php
    • footer.php
    • header.php
    • js/
      • mybox.js
    • images/
      • logo.png

汎用CSS

管理画面のスタイルに以下を追加すると見やすくなります。


/* -----------------------------
*  固定ページ一覧、投稿一覧に「スラッグ」を追加
----------------------------- */

/* 投稿・固定ページ一覧のカラム調整 */
.column-title      { width: 20% !important; } /*タイトル列*/
.column-author     { width: 10% !important; } /*投稿者列*/
.column-categories { width: 12% !important; } /*カテゴリ列*/
.column-tags       { width: 12% !important; } /*タグ列 */
.column-date       { width: 10% !important; } /*日付列*/
.column-slug       { width: 12% !important; max-width: 120px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } /*スラッグ列(自作)*/
.column-thumbnail img { width: 80px; height: auto; } /*アイキャッチ画像列*/
    
補足:

  • 管理画面専用CSSは 存在する列だけに効く ので、固定ページと投稿一覧で列が違っても大丈夫。
  • 万一、将来的に新しい列を追加した場合は、必要に応じて .column-○○ の幅を追加すればOK。

(例)
管理画面の投稿一覧にスラッグ追加

まとめ

このコードを追加することで、WordPress管理画面の固定ページと投稿一覧に「スラッグ」が表示されます。大規模サイトや固定ページが多い場合、ページ管理の効率化にとても役立ちます。