---
title: "Udemy クーポン URL を WordPress で一元管理する「OD Udemy Links」を作りました"
canonical_url: "https://olein-design.com/blog/od-udemy-links"
language: "ja"
date_published: "2026-08-19T09:13:14+09:00"
date_modified: "2026-08-19T09:13:16+09:00"
content_type: "post"
author: "久野晃司"
taxonomies:
  category:
    - "WordPress"
  post_tag:
    - "オリジナルプラグイン"
---

# Udemy クーポン URL を WordPress で一元管理する「OD Udemy Links」を作りました

Udemy で講座を公開していると、クーポン URL の扱いに少し悩むことがあります。

ブログ記事やメール、SNS などにクーポン URL を掲載したあとで、キャンペーンの終了や新しいクーポンの発行に合わせてリンクを差し替える。掲載場所が少ないうちは対応できますが、少しずつ増えてくると「どこに、どの URL を載せたのか」を追いかけるだけでも大変になってきます。

また、Udemy では、常時利用できるカスタム価格のクーポンと、短い期間だけ利用できる最安値のクーポンを並行して公開することがあります。期間限定クーポンが有効な間はそちらを案内し、終了後は常設クーポンへ戻したい。できれば、ブログ記事などに掲載した URL は変更したくありません。

こうした運用を WordPress 側でまとめるために、WordPress プラグイン「OD Udemy Links」を作りました。

この記事では、OD Udemy Links でできることと、基本的な設定方法、導入前に知っておきたい点を紹介します。

## OD Udemy Links とは

OD Udemy Links は、WordPress サイト内に Udemy 講座用の固定 URL を作り、そのアクセスを現在有効なクーポン URL へ転送するプラグインです。

このように、ある URL へのアクセスを別の URL へ自動的に転送する仕組みを「リダイレクト」と呼びます。

たとえば、次の URL をブログ記事やメールに掲載しておきます。

```
https://example.com/coupon/udemy/wpbbp/
```

アクセスされたときに有効なクーポンをプラグインが選び、実際の Udemy クーポン URL へ転送します。Udemy 側のクーポン URL が変わっても、WordPress 側の設定だけを変更すればよいため、公開済みの記事やメールを一つずつ修正する必要がありません。

2026年8月10日時点の最新バージョンは `0.3.0` です。WordPress.org のプラグインディレクトリには掲載しておらず、[GitHub のリリースページ](https://github.com/Olein-jp/od-udemy-links/releases/tag/0.3.0)から ZIP ファイルをダウンロードして利用します。

| 項目 | 内容 |
| --- | --- |
| プラグイン名 | OD Udemy Links |
| 開発者 | Koji Kuno |
| 最新バージョン | 0.3.0 |
| 必要な WordPress | 5.9以上 |
| 動作確認済み WordPress | 6.9まで |
| 必要な PHP | 7.4以上 |
| ライセンス | GPLv2 or later |
| 配布場所 | GitHub |

最新のバージョンや必要環境は、[公式リポジトリの readme.txt](https://github.com/Olein-jp/od-udemy-links/blob/0.3.0/readme.txt)でも確認できます。

## 1つの固定 URL に複数のクーポンを登録できる

OD Udemy Links では、アクセス用のスラッグごとに複数のクーポンを登録できます。

スラッグとは、URL の末尾で内容を識別するための文字列です。先ほどの例では、`wpbbp` の部分がアクセススラッグにあたります。

各クーポンには、次の項目を設定します。

- 管理名
- クーポン URL
- 優先順
- 開始日時
- 終了日時
- 有効・無効

アクセスがあると、有効になっていて、なおかつ設定した期間内にあるクーポンが候補になります。そのなかから「優先順」の数値が最も小さいクーポンが選ばれます。

たとえば、次のような設定ができます。

| 管理名 | 優先順 | 開始・終了 | 用途 |
| --- | --- | --- | --- |
| 期間限定セール | 10 | 期間を指定 | 最安値クーポン |
| 常設クーポン | 20 | 期間を指定しない | 通常時のカスタム価格 |

期間限定セールが有効な間は優先順 `10` の URL が使われ、期間が終了すると優先順 `20` の常設クーポンへ切り替わります。

優先順が同じ場合は、開始日時が新しいクーポンが優先されます。開始日時も同じ場合に結果が不安定にならないよう、内部の識別子を使って最終的な順序を決めています。この選択処理は[リダイレクト処理のソースコード](https://github.com/Olein-jp/od-udemy-links/blob/0.3.0/includes/class-redirector.php)で確認できます。

## Udemy の終了日時をそのまま入力できる

Udemy 側では、クーポンの終了日時が次のような形式で表示されることがあります。

```
2026/09/09 19:03 PDT
```

`PDT` は米国太平洋夏時間、`PST` は米国太平洋標準時を表します。日本の WordPress サイトで運用する場合、そのままでは時差を計算する必要があります。

OD Udemy Links の「終了日時（Udemy）」には、この文字列をそのまま貼り付けられます。保存時に WordPress で設定されているサイトのタイムゾーンへ変換されるため、手作業で時差を計算する必要はありません。

開始日時は WordPress サイトのタイムゾーンで入力します。期間の開始と終了はどちらもその時刻を含み、空欄にした側には期間制限がかかりません。

## 有効なクーポンがない場合の転送先も用意できる

クーポンの公開期間が切れたり、一時的にすべてのクーポンを無効にしたりすることもあります。そのため、アクセススラッグごとに「フォールバック URL」を設定できます。

フォールバック URL とは、条件に合うクーポンがないときに使う予備の転送先です。Udemy 講座の通常 URL や、期限のない紹介用 URL などを設定しておけば、固定 URL の行き先がなくなる状況を避けられます。

フォールバック URL も設定されていない場合、または存在しないアクセススラッグが指定された場合は、WordPress の 404 ページとして処理されます。

## 固定 URL の共通パスも変更できる

初期状態の共通パスは `go/udemy` です。

```
https://example.com/go/udemy/wpbbp/
```

この部分は、WordPress 管理画面の「設定」→「OD Udemy Links」にある「共通の基底パス」から変更できます。

たとえば、`coupon/udemy` に変更すると、固定 URL は次のようになります。

```
https://example.com/coupon/udemy/wpbbp/
```

ただし、共通の基底パスを変更すると、それまで公開していた固定 URL も変わります。すでにブログ記事やメールなどで利用している場合は、変更前に影響範囲を確認しておきたいところです。

## 管理画面は日本語と英語に対応している

管理画面の文言は、WordPress で設定されているサイトの言語に合わせて表示されます。プラグインのソース言語は英語で、日本語翻訳を同梱しています。

翻訳のもとになる POT ファイルも含めているため、翻訳ファイルを追加すれば、ほかの言語にも対応できる構成です。

## インストールと基本設定

### 1. プラグインをダウンロードする

[OD Udemy Links 0.3.0 のリリースページ](https://github.com/Olein-jp/od-udemy-links/releases/tag/0.3.0)を開き、`od-udemy-links.zip` をダウンロードします。

### 2. WordPress にインストールする

WordPress 管理画面で「プラグイン」→「プラグインを追加」→「プラグインのアップロード」と進み、ダウンロードした ZIP ファイルを選択します。

インストール後、「有効化」を押します。

### 3. 共通の基底パスを決める

「設定」→「OD Udemy Links」を開き、「共通の基底パス」を入力します。

これから使い始める場合は、`coupon/udemy` のように用途が分かる文字列にしておくと管理しやすいと思います。すでに運用中の場合は、変更によって既存の固定 URL が変わる点に注意してください。

### 4. アクセススラッグを追加する

「スラッグを追加」を押し、管理名とアクセススラッグを入力します。

管理名は WordPress 内で設定を見分けるための名前です。アクセススラッグには、講座名を短くした文字列などを設定します。必要に応じて、フォールバック URL も入力しておきます。

### 5. クーポンを登録する

「クーポンを追加」を押して、クーポン URL、優先順、開始日時、終了日時を設定します。

常設クーポンと期間限定クーポンを併用する場合は、期間限定クーポンに小さい優先順を付けるのが分かりやすいでしょう。

### 6. 設定を保存して固定 URL をコピーする

「設定を保存」を押すと、アクセススラッグの入力欄の下に固定 URL が表示されます。右側のコピーアイコンを押せば、その URL をクリップボードへコピーできます。

コピーした URL をブログ記事、ボタン、メール、SNS などに掲載します。念のため、ログアウトした状態やプライベートブラウズでもアクセスし、想定した Udemy のページへ転送されることを確認しておくと安心です。

## 開発途中で管理方法を見直した

開発を始めた当初は、講座とクーポンを WordPress のカスタム投稿タイプとして管理する構成も検討していました。カスタム投稿タイプは、通常の「投稿」や「固定ページ」とは別に、独自の投稿データを管理する仕組みです。

ただ、実際に必要だったのは、講座そのものを WordPress に登録することではありませんでした。必要なのは「公開する固定 URL」と「その URL から転送する候補」の組み合わせです。

そこで、アクセススラッグを中心にして、その配下へ複数のクーポンを登録する形へ設計を変更しました。現在はカスタム投稿タイプを作らず、プラグインの設定データとして保存しています。

個人的には、この形の方が実際の運用に近く、設定画面で何を管理しているのかも分かりやすくなったと感じています。

## 導入前に知っておきたいこと

### WordPress.org からはインストールできない

OD Udemy Links は、現時点では WordPress.org のプラグインディレクトリに掲載していません。最初のインストールには GitHub のリリースページからダウンロードした ZIP ファイルを使います。

プラグイン内には GitHub のリリースを確認する更新処理が組み込まれていますが、サーバーから GitHub API へ接続できない環境では更新情報を取得できない可能性があります。

### Udemy API とは連携しない

このプラグインは Udemy API を呼び出さず、クーポン情報を自動取得しません。クーポン URL、優先順、公開期間は WordPress 管理画面から手動で設定します。

自動取得がない分、仕組みは比較的シンプルですが、クーポンを発行したあとの登録作業は必要です。

### クリック数の計測機能はない

現時点では、固定 URL のクリック数やクーポンごとの利用状況を集計する機能はありません。詳細な計測が必要な場合は、アクセス解析ツールなどと組み合わせる必要があります。

### リダイレクト先として外部 URL を登録できる

クーポン URL とフォールバック URL には、管理者が `http` または `https` の外部 URL を登録できます。サイトの管理を複数人で行っている場合は、設定を変更できるユーザーを適切に管理してください。

リダイレクトには、一時的な転送を示す HTTP ステータスコード `302` を使っています。また、固定 URL 自体が検索結果へ登録される用途ではないため、検索エンジン向けに `noindex, nofollow` を返します。

### プラグインを削除しても設定データは自動削除されない

現時点では、プラグイン削除時に設定データを消去する処理を用意していません。一時的に無効化・削除したあとで再導入する場合には設定が残る一方、完全にデータを消したい場合はデータベース内のオプションを別途整理する必要があります。

## どのような人に向いているか

OD Udemy Links は、次のような運用に向いています。

- WordPress サイトから自分の Udemy 講座を案内している
- クーポン URL をブログ記事、メール、SNS など複数の場所で使っている
- 常設クーポンと期間限定クーポンを自動的に切り替えたい
- 公開する URL を自分のドメインにそろえたい
- クーポン管理のために大きな仕組みを導入したくない

一方で、Udemy 以外のさまざまなアフィリエイト URL をまとめて管理したい場合や、クリック分析、A/B テスト、外部サービスとの自動連携まで必要な場合は、別のリンク管理ツールも含めて検討した方がよいでしょう。

## まとめ

Udemy のクーポン URL を直接掲載すると、クーポンが変わるたびに掲載場所の修正が必要になります。OD Udemy Links を間に置くことで、公開する固定 URL は変えずに、転送先だけを WordPress 管理画面から切り替えられます。

特に、常設クーポンと短期間のセールクーポンを併用している場合は、優先順と公開期間を設定しておくことで、切り替え作業を減らせます。

必要な機能に絞ったプラグインではありますが、同じように Udemy クーポンのリンク管理で困っている方の参考になれば嬉しいです。

## 参考リンク

- [OD Udemy Links GitHub リポジトリ](https://github.com/Olein-jp/od-udemy-links)
- [OD Udemy Links 0.3.0 リリース](https://github.com/Olein-jp/od-udemy-links/releases/tag/0.3.0)
- [OD Udemy Links readme.txt](https://github.com/Olein-jp/od-udemy-links/blob/0.3.0/readme.txt)
- [リダイレクト処理のソースコード](https://github.com/Olein-jp/od-udemy-links/blob/0.3.0/includes/class-redirector.php)
