WORDPRESS プラグイン
ひとつの記事に、現在のアドレスを。
WordPress が短縮リンクを生成するときに、投稿や固定ページの現在のパーマリンクを返します。生成される参照先を、読者が見慣れたアドレスにそろえられます。
ふたつのアドレスが同じ記事を指すことがあります
自転車修理の記事に、WordPress の ID として 123、パーマリンクとして
/jitensha-shuri/ が設定されているとします。数字を使った短縮リンクも、ID を通じて同じ記事を指します。このプラグインは、生成された短縮リンクを、その記事について WordPress が返すパーマリンクに置き換えます。変更前:
変更後:
https://example.com/?p=123変更後:
https://example.com/jitensha-shuri/
図は、ひとつの記事へ向かうふたつの経路を表しています。プラグインが変更するのは生成されるアドレスです。アドレス自体を短くするわけではありません。
どの記事に対するリクエストなのか
指定された投稿や固定ページ
呼び出し元が投稿 ID を指定して短縮リンクを求めると、プラグインはその投稿のパーマリンクを返します。周囲のページによって、ID が選択する投稿が変わることはありません。
ループ内の現在の投稿
投稿コンテキストで ID を指定せずにリクエストすると、WordPress が現在の投稿を特定します。そのため、ページ内に表示された関連記事にも、周囲のページのアドレスではなく、その記事自身のアドレスを使えます。
投稿や固定ページの個別表示
投稿や固定ページの個別表示でクエリコンテキストからリクエストすると、プラグインはクエリ対象の投稿を使います。アーカイブ表示でクエリコンテキストから求められた短縮リンクは変更しません。
有効化したら、実際の短縮リンクを確認
WordPress 6.0 以降と PHP 7.4 以降が必要です。プラグインに設定画面はなく、サイトの既存のパーマリンク構造を使います。
1. インストールして有効化
ZIP ファイルをダウンロードします。WordPress で「プラグイン → 新規プラグインを追加 → プラグインのアップロード」を開き、ZIP ファイルを選んでインストールし、Devenia Canonical Shortlinks を有効化します。
2. アドレスを比較
公開済みの投稿や固定ページを選びます。HTML ソースに
rel="shortlink" があれば、そのリンク先を現在のパーマリンクと比較してください。プラグインは、存在しない短縮リンクタグを追加しません。3. 返されたリンクを開く
目的の記事が開くことを確認します。パーマリンク設定がもともと数字のアドレスを生成する場合、このプラグインが内容を表す URL 構造を作ることはありません。
このプラグインが担当しないこと
リダイレクトの作成、記事内に保存済みのリンクの更新、パーマリンク設定の変更、
rel="canonical" タグの編集は行いません。これらは、別の WordPress 機能や SEO 機能が担当します。受け取った短縮リンクが空の場合、コンテキストが未対応の場合、または WordPress が投稿やパーマリンクを特定できない場合は、既存の短縮リンクの値をそのまま返します。
開発者向け情報
プラグインは WordPress 標準の
get_shortlink フィルターを使います。外部サービスへのリクエストは行わず、独自の設定項目やデータベーステーブルも追加しません。テーマやプラグインに短縮リンクを組み込む場合は、WordPress の wp_get_shortlink() と get_shortlink フィルターのドキュメントを参照してください。
