JavaScript (jQuery) で特定のドメインのURLにパラメーターを付与する

  • ブックマーク
  • -
    コピー
JavaScript を使って自サイトのドメインや「/ (スラッシュ)」から始まる相対パスの最後にパラメーターを付与する方法について、実装時に調べたことや方法などをまとめます。 今回は WordPress のテーマに実装し jQuery が組み込まれているので、jQuery を利用している前提で進めています。そのため jQuery(function ($) { 処理 } といった書き方をしています。

jQuery(function ($) {
  $(function () {
    // anchorsにaタグを配列ですべて格納
    const anchors = document.getElementsByTagName("a");
    // 条件判定用のURLを取得
    const matchStr = document.domain;

    for (let i = 0; i < anchors.length; i++) {
      // アンカータグを変数に格納
      const linkElement = anchors[i];
      // hrefの中身を変数にとりだす
      let linkUri = linkElement.getAttribute('href');
      // 空じゃなければ次へ
      if (linkUri) {
        // 条件判定用のURLを含んでる、もしくはスラッシュで始まっていれば
        if (linkUri.match(matchStr) || linkUri.startsWith('/')) {
          // 末尾にスラッシュがあれば削除
          linkUri = linkUri.replace(/\/$/, '');
          // パラメータを付与して配列に戻す
          anchors[i].href = linkUri + "?from_app=true";
        }
      }
    }
  });
});

WordPress のテーマに実装する場合はこのままペタッとはればok。

参考記事

URLを変えたりパラメータ・ハッシュを追加する方法
JavaScriptを使ってパラメーターを付与について
条件付きでリンクの作り方について
JSのパラメーターやハッシュの取り回しについて詳しく書いてある
  • ブックマーク
  • -
    コピー

この記事を書いた人

Susumu Seino

1988年 東京都足立区生まれ。瀬戸内海の小島と東京に拠点を持ち、2020年からは夫婦でアドレスホッピングを計画しているデジタルノマドな日本人。デジタルパブリッシング代理店のアニューマの創業者です。