自作キーボードやアクリルアクセサリをBOOTHで頒布しています。どうぞご覧ください

URLの後ろの「?utm-source=…」とかを切り落としたい

はてなブログの更新通知メールからブログに飛ぶと、URLの後ろにクエリがついてくる。「?utm_source=subscription_mail&utm_medium=email&utm_campaign=subscription」というもの。長い。そしてこのままだとブクマ数やブクマコメントを正しく取得できない。なのでブログのタイトルをクリックしたりして、このクエリがないURLへ移動している。

noteでも同じように、クエリつきのURLへ飛ぶことが多い。ほかのブログやnoteからのリンク、SNSからのリンク、メールからのリンクなどでクエリにもいろいろ種類があるようだ。収集できたのは以下の3つ。

  • ?sub_rt=share_pw
  • ?sub_rt=share_pb
  • ?rt=email&sub_rt=daily_report_followee_notes

noteはタイトルが記事へのリンクになっていないので、アドレスバーでクエリ部分を削除して移動する。

こういうのが面倒になってきたので、クエリつきのURLからクエリのないURLに自動移動するようにした。TampermonkeyなどのGreasemonkeyスクリプト環境の拡張機能をインストールして、以下のスクリプトを登録した。

// ==UserScript==
// @name         query cutter for Hatena blog and note
// @namespace    https://ima.hatenablog.jp/
// @version      2025-08-07
// @description  cut query '?utm_source=subscription_mail&utm_medium=email&utm_campaign=subscription' and so on.
// @author       @yimamura
// @include      https://*
// @include      http://*
// ==/UserScript==
(function (){
    var newUrl = location.href;

    newUrl = newUrl.replace(/\?utm_source=subscription_mail&utm_medium=email&utm_campaign=subscription|\?sub_rt=share_pw|\?sub_rt=share_pb|\?rt=email&sub_rt=daily_report_followee_notes/g, '');

    if ( newUrl != location.href ) location.href = newUrl;

})();

(こういうスクリプト、多分もうどこかにあるんだろうなーと思いつつ)

しくみは簡単で、今見ているページのURLに特定の文字列(ここではクエリ)が含まれていたら、その部分を削除したURLへ自動的に移動する。

削除して移動したいクエリをこのほかに見つけたら、スクリプトに追記していくつもり。