【Google】検索結果メニュー(画像、動画、ニュースなど)を並び替えるスクリプト

この記事では、PC版「Google」の検索結果にあるすべて、画像、動画、ニュース、ショッピング、ショート動画、ウェブ、書籍、地図、フライトなどを好きな順番に並び替えて固定化するスクリプト(JavaScript)について書きます。
ウェブサイトに「JavaScript」を適用できるChrome拡張機能・Firefoxアドオン「Violentmonkey」や「Tampermonkey」を利用します。
PC版「Google」の検索結果上部にあるタブメニュー?ナビゲーションバー?検索メニュー?正式名称は分かりませんが、表示されている項目は検索キーワードによって並び順が変わる意味不明仕様になっています。

Google的には「利用頻度や検索キーワードに関連するメニューごとで並び替えてあげたよ!わっはは!」という親切仕様だと思いますが、僕的には鬱陶しいことこの上ないです。
僕は何となくの場所を覚えて感覚的に切り替えています。コロコロ動的に変わってしまうと「すべて」の横は「画像」だから画像に切り替えたい時は何となく右横を押せばいい…という法則性が崩れてしまいます。
いちいち文字をしっかり読んで脳で処理してから押す手間が発生して時間の無駄です。
以前は専用の拡張機能やスクリプトが公開されていましたが、2025年6月29日時点では仕様変更に対応できておらず使えないです。
この度読者の方から連絡をいただいてちょーど機会だし、自分で見てみるかであれこれ調べてスクリプトを作成したので共有します。
本スクリプトの注意点
本記事で紹介するスクリプトは、現在のGoogleでは使えなくなっている「Google Fixed Tab Order」スクリプトを、僕が「ChatGPT(AI)」に読み込ませて現在でも使えるように修正したものです。
コード内のメタデータにも「@description
」に参照URL、「@author
」にChatGPTと記載しています。
僕が0から作成したわけではない点、かつ修正も僕ではなくChatGPTがした点をご理解ください。
「そんなの使うの心配!」って方は使わないほうがいいと思います。
「Googleの仕様変更で使えなくなった!すぐに修正してくれ!」ってのも難しいです。僕自身はJavaScript一切できないので、もし今後修正するってなっても「ChatGPT」頼りになります。
前提
「ScriptCat」、「Violentmonkey」、「Tampermonkey」などのJavaScriptを適用できる拡張機能を既に導入している前提です。
2025年6月時点では「Violentmonkey」がManifest V3に対応できていないことから基本的にインストールできないようになっています。回避方法はあるにはありますが、今後もしサポートされないのであれば別のがいいかもです。
スクリプトのインストール方法
「Google」の検索結果を開きます(例:ナポリタン寿司)。拡張機能メニューを開いてスクリプトの新規追加ボタンを押します。皆さんが使っている拡張機能によって画面は異なります。

新規作成のコード画面を表示できたら、以下のコードを丸々コピペします。
元々「// ==UserScript==
」から始まるコードが記載されているかもしれません。その場合一度全部削除してから以下を上書きします。
// ==UserScript==
// @name Google検索メニューの並び固定化
// @match https://www.google.com/*
// @exclude https://www.google.com/search*tbm=nws*
// @version 1.0
// @run-at document-start
// @icon https://www.gstatic.com/images/branding/searchlogo/ico/favicon.ico
// @description 参考:https://greasyfork.org/ja/scripts/18521-google-fixed-tab-order
// @author ChatGPT
// ==/UserScript==
(() => {
const o = ["すべて", "ウェブ", "画像", "動画", "地図", "ニュース", "ショッピング", "書籍", "ショート動画", "金融", "フライト", "もっと見る"],
f = () => {
const p = document.querySelector('[role="navigation"] [role="list"]');
if (!p) return setTimeout(f, 50);
const t = [...p.querySelectorAll('[role="listitem"]')], m = p.querySelector(':scope > div:has([aria-label="More Filters"])'), s = document.querySelector("#hdtb-tls");
t.forEach(e => p.removeChild(e));
m && p.removeChild(m);
s?.parentElement?.removeChild(s);
o.forEach(l => t.filter(e => e.textContent.trim() === l).forEach(e => p.appendChild(e)));
m && p.appendChild(m);
s && p.appendChild(s);
},
m = new MutationObserver(() => (m.disconnect(), f(), e())),
e = () => {
const t = document.querySelector('[role="navigation"] [role="list"]');
t ? m.observe(t, { childList: true }) : setTimeout(e, 10);
};
f(); e();
})();

基本的には上記コードだけでいいですが、もし「ニュース」タブを開いた時も並び替え・固定化したい場合は、別のスクリプトとして以下も新規追加します。
// ==UserScript==
// @name Google検索メニューの並び固定化(ニュース)
// @match https://www.google.com/search*&tbm=nws*
// @version 1.0
// @run-at document-start
// @icon https://www.gstatic.com/images/branding/searchlogo/ico/favicon.ico
// @description 参考:https://greasyfork.org/ja/scripts/18521-google-fixed-tab-order
// @author ChatGPT
// ==/UserScript==
(() => {
const o = ["すべて", "ウェブ", "画像", "動画", "地図", "ニュース", "ショッピング", "書籍", "ショート動画", "金融", "フライト", "もっと見る"],
f = () => {
const p = document.querySelector('[role="navigation"] div:has(>h1)');
if (!p) return setTimeout(f, 50);
const t = [...p.querySelectorAll(':scope > a')], m = p.querySelector(':scope > span:has(span[aria-label="More Filters"])'), s = document.querySelector("#hdtb-tls");
t.forEach(e => p.removeChild(e));
m && p.removeChild(m);
s?.parentElement?.removeChild(s);
o.forEach(l => t.filter(e => e.textContent.trim() === l).forEach(e => p.appendChild(e)));
m && p.appendChild(m);
s && p.appendChild(s);
},
m = new MutationObserver(() => (m.disconnect(), f(), e())),
e = () => {
const t = document.querySelector('[role="navigation"] div:has(>h1)');
t ? m.observe(t, { childList: true }) : setTimeout(e, 10);
};
f(); e();
})();
なぜかGoogleのニュースタブは「すべて」や「画像」タブページと違ってHTMLの構造が微妙に違うため、同じコードだと機能しません。そのためニュースタブページで使いたい場合はもう一つスクリプトを用意する必要があります。

コピペできたら保存して編集画面を閉じます。
Googleの検索メニューが並び変わったか確認
「Google」の検索結果を開いて、拡張機能のポップアップを開いて、書き込んだスクリプトがオンになっているか確認します。名前は「Google検索メニューの並び固定化」です。

既にページを開いていた場合は一度リロードする必要があります。
指定した並びになります。上記をそのまま書いたら以下の順番になります。
- すべて
- 画像
- 動画
- ニュース
- ショッピング
- ショート動画
- ウェブ
- もっと見る

並び替える手順
コード編集画面を開いて以下の部分を自分がやりたい並び順にします。
const o = ["すべて", "ウェブ", "画像", "動画", "地図", "ニュース", "ショッピング", "書籍", "ショート動画", "金融", "フライト", "もっと見る"],
![「const o = ["すべて", "ウェブ", "画像", "動画", "地図", "ニュース", "ショッピング", "書籍", "ショート動画", "金融", "フライト", "もっと見る"],」を編集する手順画像](https://www.naporitansushi.com/wp-content/uploads/2025/06/google-search-menu-reorder-script_08.png)
「自分で編集するのは怖い!前後の記号なども削除しちゃって書式崩してしまいそう!」って方は、「ChatGPT」に丸々コピペして聞いたら楽です。
(ここにコードを丸々コピペする)
上記スクリプトのタブメニューの並びを以下のようにしてください。
すべて
ウェブ
画像
動画
地図
ニュース
ショッピング
書籍
ショート動画
金融
フライト
もっと見る

他の部分は変えずに並びだけ変更したコードを出力してくれます。コピペしてスクリプトを上書き保存します。

ページをリロードすると反映されます。

【おすすめ記事紹介】不要な項目を非表示!
「そもそもショッピングとかショート動画とか全く使っていない項目がある」って場合は、以下記事が参考になるかもです。CSSで非表示にできます。
上記記事で不要な項目を非表示にした上で、本記事のスクリプトを使って並びを固定すると結構快適かもです。
感想
以上、PC版「Google」の検索結果にあるすべて、画像、動画、ニュース、ショッピング、ショート動画、ウェブ、書籍、地図、フライトなどを好きな順番に並び替えて固定化するスクリプト(JavaScript)についてでした。
ド素人が「ChatGPT」にお願いして作ってもらっただけなので変な書き方・不効率な方法になっている可能性があります。
ディスカッション
コメント一覧
まだ、コメントがありません