WordPressの投稿IDを1クリックで取得!プラグイン不要のブックマークレットで管理を効率化

WordPressの投稿IDや固定ページIDを確認するために、毎回編集画面を開いていませんか?

プラグインを増やさず、ブラウザのボタン一つでIDを自動コピーできるブックマークレットを作成しました!SWELL、Cocoonなど主要テーマ対応。

ブログやサイトを運用していると、「この記事のIDを今すぐ知りたい」という場面が頻繁にあります。

  • リダイレクト設定(URL転送)の条件に使いたい
  • 人気記事ランキングやウィジェットでIDを指定したい
  • ショートコードで特定の固定ページを呼び出したい

しかし、そのために管理画面の一覧を凝視したり、わざわざ編集画面を開いてURLを確認したりするのは非効率です。

今回ご紹介するのは、ブラウザに登録しておくだけで、管理画面でも公開ページでもワンクリックでIDをコピーし、取得できない場合はその理由を教えてくれる超軽量なブックマークレットです。

人気のSWELL、AFFINGER6、Cocoonはもちろん、自作テーマでも動作します。

テーマの機能に依存しないため、運用の手間を劇的に減らすことができます。

目次

実装マニュアル

① 以下のコードをコピー

以下のJavaScriptコードをすべてコピーしてください。

javascript:(function(){
  var id = '';
  var url = window.location.href;
  var bClass = document.body.className;

  /* --- 1. IDをスキャン --- */
  var urlParams = new URLSearchParams(window.location.search);
  if (urlParams.has('post')) {
    id = urlParams.get('post');
  } 
  if (!id) {
    var idMatch = bClass.match(/(?:postid-|page-id-)(\d+)/);
    if (idMatch) id = idMatch[1];
  }
  if (!id) {
    var shortlink = document.querySelector('link[rel="shortlink"]');
    if (shortlink && shortlink.href.includes('p=')) {
      var sMatch = shortlink.href.match(/[?&]p=(\d+)/);
      if (sMatch) id = sMatch[1];
    }
  }

  /* --- 2. IDが取れなかった場合のヒント --- */
  var hint = '';
  if (!id) {
    if (url.includes('wp-admin/')) {
      hint = '【管理画面を表示中】\n一覧画面や設定画面ではIDが直接取得できません。\n記事の「編集画面」を開いた状態で再度実行してください。';
    } else {
      hint = '【公開ページを表示中】\nトップページや一覧ページには個別のIDがありません。\n記事単体を表示するか、管理画面の「編集画面」から実行してください。';
    }
  }

  /* --- 3. 実行 --- */
  if (id) {
    navigator.clipboard.writeText(id).then(function() {
      alert('ID: ' + id + '\n\nコピーしました!');
    }).catch(function() {
      prompt('IDが見つかりました:', id);
    });
  } else {
    alert('【IDが取得できませんでした】\n\n' + hint);
  }
})();
JavaScript

② ブラウザに登録する

  1. ブラウザのブックマークバーで右クリックし、「ページを追加」または「新規ブックマーク」を選択。
  2. 名前: WP-IDコピー など任意の名称に設定
  3. URL(アドレス): 先ほどコピーしたコードを貼り付けて保存。

このツールのメリット

1. プラグインを増やさない

リダイレクト管理やID表示のためにプラグインを導入すると、サイトの読み込み速度やセキュリティに影響します。このツールはブラウザ側で動作するため、WordPress本体に負荷を一切かけません。

2. ミスを防ぐ自動コピー機能

IDをコピーする際、手動だと前後のスペースを拾ってしまったり、1文字欠けたりするミスが起こります。このツールは純粋な「数字」だけをコピーするため、貼り付け後のエラーを防げます。

3. 親切な診断メッセージ

「IDが取得できないページ(一覧画面やホームなど)」で実行した場合、単にエラーを出すのではなく、「今どこにいて、どうすれば取得できるか」のアドバイスを表示します。

運用のコツと注意点

IME(日本語入力)の干渉に注意

ブックマークレット自体を直接編集する場合は、必ず「半角英数モード」で行ってください。全角スペースが1つ混入するだけで、プログラムは動作しなくなります。

最も確実な取得方法

もし「取得できませんでした」と表示される場合は、管理画面の「投稿一覧」から記事のタイトルをクリックして「編集画面」に入ってください。

ブラウザのURLに post=数字 等と表示されている状態であれば、100%確実に取得できます。

あとがき

無事に実装できましたでしょうか? 「プラグインを減らす」ことは、サイトの高速化とメンテナンス性の向上に直結します。 今回ご紹介したシンプルなコードが、日々のWordPress運営を少しでも快適にするお手伝いができれば幸いです。

このブックマークレットで取得したIDを使って、functions.phpでリダイレクト設定を行う方法は、以下の記事で解説しています。

お問い合わせ先

不具合やカスタマイズのご相談は、こちらからお気軽にご連絡ください。

  • URLをコピーしました!
目次