WordPressのタグをチェックボックスに変更して管理を楽にする

管理の面倒くさいWordpressのタグをチェックボックスにしてみた。

目次

WordPressのタグがひっちゃかめっちゃかになった過去

かつて、タグに翻弄されていたことがある。

カテゴリはチェックボックスで過去に設定したカテゴリを投稿画面で見ることができるのだが、タグはなぜかそれができない。

例えば、「HTML」と過去に投稿したことがあったのだが、次に書くときは「html」と書いてしまうかもしれない。

その時点で2つは別になってしまうのである。

そこでタグもチェックボックスにしようと思いついた。

タグをチェックボックスにする実現コードはこちら

//タグをチェックボックス表示に
function re_register_post_tag_taxonomy()
{
  global $wp_rewrite;
  $rewrite = array(
    'slug' => get_option('tag_base') ? get_option('tag_base') : 'tag',
    'with_front' => !get_option('tag_base') || $wp_rewrite->using_index_permalinks(),
    'ep_mask' => EP_TAGS,
  );


  $labels = array(
    'name' => _x('Tags', 'taxonomy general name'),
    'singular_name' => _x('Tag', 'taxonomy singular name'),
    'search_items' => __('Search Tags'),
    'popular_items' => __('Popular Tags'),
    'all_items' => __('All Tags'),
    'parent_item' => null,
    'parent_item_colon' => null,
    'edit_item' => __('Edit Tag'),
    'view_item' => __('View Tag'),
    'update_item' => __('Update Tag'),
    'add_new_item' => __('Add New Tag'),
    'new_item_name' => __('New Tag Name'),
    'separate_items_with_commas' => __('Separate tags with commas'),
    'add_or_remove_items' => __('Add or remove tags'),
    'choose_from_most_used' => __('Choose from the most used tags'),
    'not_found' => __('No tags found.')
  );


  register_taxonomy('post_tag', 'post', array(
    'hierarchical' => true,
    'query_var' => 'tag',
    'rewrite' => $rewrite,
    'public' => true,
    'show_ui' => true,
    'show_admin_column' => true,
    '_builtin' => true,
    'labels' => $labels
  ));
}
add_action('init', 're_register_post_tag_taxonomy', 1);

これが全コード。

これをfunction.php に書けばタグがチェックボックスになり、管理が簡単になる。

次に読むおすすめ記事

WordPressでブログ投稿が楽になる! アイキャッチ画像が動的に作成できるようにしてみた。

今後のことを考え、WordPressの記事をGitで管理しGithubに一元管理することにした

Local by FlywheelでID・PASSWORDを忘れてログインできなくなった時にすること

WardPressの管理をGit Flowで管理していたが、VSCodeの拡張機能「WordPress Post」を使うことで世界が変わった。

カスタムフィールドで改行が適用されないので、無理やり改行できるようにした。

この記事に対するコメント

お気軽にコメントを下さい

メールアドレスが公開されることはありません。 が付いている欄は必須項目です