ウェブサイト上の個々の画像やその他のアップロードされたファイルは、単一の添付ファイルページに表示されます。しかし、多くのテーマでは添付ファイルのテンプレートが提供されていません。
WordPressでカスタム添付ファイルテンプレートを作成すると、個々の添付ファイルページの表示方法を制御でき、機能性と美観の両方を向上させる柔軟性が得られます。
この記事では、WordPress でカスタムの単一添付ファイルテンプレートを簡単に作成する方法を紹介します。

WordPress の添付ファイルページとは何ですか?
デフォルトでは、WordPressウェブサイトにあるすべてのメディア添付ファイルに対して、単一のページが自動的に作成されます。これには、画像、動画、音声ファイル、PDFなどが含まれます。
投稿や固定ページと同様に、添付ファイルは WordPress データベースの wp_posts テーブルに保存されます。実際、添付ファイルは特別な種類の投稿であり、投稿タイプは「attachment」です。これにより、検索や表示が容易になります。
添付ファイルページでは、タイトル、キャプション、説明などのメタデータをファイルアップロードに追加できます。また、訪問者が画像や動画にコメントすることもできます。
多くのユーザーは、追加情報を表示するために添付ファイルテンプレートをカスタマイズすることを好みます。たとえば、写真テーマでは、添付ファイルページを使用してEXIFデータを表示できます。これにより、使用されたカメラモデル、カメラ設定、さらには画像の場所データも表示できます。
ただし、添付ファイルページを使用する予定がない場合は、無効にすることをお勧めします。
それでは、WordPress でカスタムシングル添付ファイルテンプレートを作成する方法を見ていきましょう。このガイドでは次の内容をカバーします。
- WordPressで添付ファイルページを表示する方法
- 添付ファイルページにはどのテンプレートが使用されますか?
- WordPressで添付ファイルページを無効にする
- テーマビルダープラグインを使用したカスタムシングル添付ファイルテンプレートの作成
- コードを使用してカスタム単一添付ファイルテンプレートを作成する
- ボーナス: WordPress で投稿の添付ファイルをアイキャッチ画像として追加する
WordPressで添付ファイルページを表示する方法
シングル添付ファイルテンプレートをカスタマイズする際は、添付ファイルページを表示して変更を確認すると便利です。WordPressで添付ファイルページを表示するいくつかの方法を以下に示します。
メディアライブラリから添付ファイルページを表示する
WordPressダッシュボードからメディア » ライブラリページに移動し、画像またはその他の添付ファイルをクリックする必要があります。「添付ファイルの詳細」ウィンドウが表示されます。
ここで、画像の代替テキスト、タイトル、キャプション、説明を入力できます。この情報は添付ファイルページに表示される可能性があるため、フィールドに入力して表示方法を確認することをお勧めします。

ウィンドウの右下にある「添付ファイルページを表示」リンクが表示されます。
そのリンクをクリックすると、その画像の添付ファイルページに移動します。
投稿またはページから添付ファイルページを表示する
WordPress のコンテンツエディターで投稿またはページを開き、画像を追加するだけです。
次に、画像を選択し、ツールバーの「リンク」ボタンをクリックします。ドロップダウンで、「添付ファイルページ」を選択するオプションが表示されます。

これで、画像をクリックすると、その添付ファイルページに移動します。
添付ファイルページにはどのテンプレートが使用されますか?
投稿やページと同様に、添付ファイルもテンプレートを使用して表示されます。使用されるテンプレートは、テーマで利用可能なテンプレートとWordPressテンプレート階層によって異なります。
存在する場合、WordPressは添付ファイルページの表示を制御するためにattachment.phpテンプレートを使用します。ただし、サイトにアップロードできる各ファイルタイプに対して異なるテンプレートを作成することもできます。
例えば、image.php という名前のテンプレートファイルは画像添付ページの表示方法を制御し、video.php という名前のテンプレートは動画添付ページを制御します。
特定のファイル拡張子に対してカスタム添付ファイルテンプレートを作成することもできます。例えば、テンプレートimage-gif.phpはGIF画像添付ファイルページを制御します。

ただし、WordPressテーマに添付ファイル用の特定のテンプレートがない場合、デフォルトで single.php(シングル投稿タイプテンプレート)または index.php(デフォルトのフォールバックテンプレート)が使用されます。
その場合、添付ファイルページは他の投稿やページと同じレイアウトになり、必ずしも見栄えが良くない場合があります。
WordPressで添付ファイルページを無効にする
WordPressで添付ファイルページを使用しない場合は、無効にすることをお勧めします。
多くのテーマには添付ファイル用の特別なテンプレートがないため、サイト上で不完全なページのように見えることがあります。これは訪問者に悪い印象を与える可能性があります。
また、検索ランキングに否定的なSEOへの影響を与える可能性もあります。これは、検索エンジンがテキストがほとんどまたは全くないページを「低品質」または「薄いコンテンツ」と見なすためです。
WordPressで画像添付ファイルページを無効にする方法に関するガイドで詳細を確認できます。
ただし、添付ファイルページを使用する予定がある場合は、WordPressで添付ファイルテンプレートをカスタマイズする方法を読み進めてください。2つの方法を説明します。最初の方法は最も簡単で、プラグインを使用します。
テーマビルダープラグインを使用したカスタムシングル添付ファイルテンプレートの作成
カスタム単一添付ファイルテンプレートを作成する最も簡単な方法は、SeedProdを使用することです。これは最高のWordPressテーマビルダーであり、コードを書かずに美しいウェブサイトのレイアウトやカスタムテンプレートを作成できます。
SeedProd を使用して、カスタムのシングル添付ファイルテンプレートを含む、完全にカスタムな WordPress テーマを作成できます。詳細については、当社の完全な SeedProd レビューをご覧ください。
注意: SeedProd の無料版がありますが、テーマビルダーにアクセスしてカスタム添付ファイルテンプレートを作成するには、Pro バージョンが必要です。
まず、SeedProd プラグインをインストールして有効化する必要があります。詳細については、WordPress プラグインのインストール方法に関するステップバイステップガイドをご覧ください。
アクティベート後、ライセンスキーを入力する必要があります。この情報はSeedProdウェブサイトのアカウントで見つけることができます。

その後、SeedProdを使用してカスタムWordPressテーマを簡単に作成する必要があります。
カスタムWordPressテーマの作成
SeedProd テーマビルダーは、SeedProd » Theme Builder ページに移動すると見つかります。ここでは、SeedProd の 既製のサイトキットまたはテンプレート のいずれかを開始点として使用します。これにより、既存の WordPress テーマが新しいカスタムデザインに置き換えられます。
これは、「テーマ」ボタンをクリックすることで実行できます。

プロがデザインした様々なタイプのウェブサイト向けのテーマのリストが表示されます。「モダンビジネス」「マーケティングエージェンシー」「住宅ローンブローカーテーマ」といったテンプレートがあります。
オプションを確認し、チェックマークアイコンをクリックしてニーズに最も合ったものを選択してください。

テーマを選択すると、SeedProdは必要なすべてのテーマテンプレートを生成します。これで、カスタムの単一添付ファイルテンプレートを作成できます。
カスタム添付ファイルテンプレートの作成
デフォルトでは、添付ファイルテンプレートはなく、添付ファイルにはSingle Postテンプレートが使用されます。

新しい添付ファイルテンプレートを作成して修正します。新しいテンプレートがテーマと一貫するように、シングル投稿テンプレートを開始点として使用します。
これを行うには、シングル投稿テンプレートにカーソルを合わせ、リンクが表示されるまで「シングル投稿の複製」を繰り返します。その後、「複製」リンクをクリックしてテンプレートのコピーを作成します。

リストの一番上に、「Single Post- Copy」という新しいテンプレートが表示されます。
新しいテンプレートの上にマウスカーソルを合わせ、表示される「Edit Conditions」リンクをクリックします。

テンプレートの設定を変更できるウィンドウが表示されます。まず、「添付ファイル」という名前を付けることから始められます。
次に、このテンプレートが使用される条件を定義する必要があります。「条件」セクションで、最初の設定を「含める」のままにし、2番目のドロップダウンメニューから「添付ファイル」を選択します。

その後、テンプレートに優先度を付ける必要があります。単一投稿テンプレートの優先度は0なので、このテンプレートにそれよりも高い優先度を付ける必要があります。これにより、一致するすべてのページでこのテンプレートが代わりに使用されます。このチュートリアルでは、優先度を5に割り当てます。
設定を保存するには、完了したら必ず「保存」ボタンをクリックしてください。
次に、テンプレートのデザインとコンテンツをカスタマイズします。「Edit Design」リンクをクリックして実行できます。

これで SeedProd ページビルダーが開きます。ここで、ブロックをページにドラッグして、ドラッグ&ドロップでコンテンツを並べ替えることで、新しいコンテンツを追加できます。
ブロックをクリックすると、その設定にアクセスできます。ブロックにカーソルを合わせると、ゴミ箱アイコンをクリックして削除できます。

このチュートリアルでは、ブログに関連するページ上部の2つのブロックを削除し、投稿情報ブロックを画像の下にドラッグします。
また、ページ下部のコメントセクションも削除します。完了したら、ページ上部にある「保存」ボタンをクリックしてください。その後、右上にある「X」ボタンをクリックしてページビルダーを閉じることができます。

テンプレートのリストに戻ります。新しいテンプレートを有効にするには、「公開済み」トグルをオンの位置に切り替える必要があります。
これで、ウェブサイトで添付ファイルページを表示して変更を確認できます。

コードを使用してカスタム単一添付ファイルテンプレートを作成する
この方法はより高度であり、WordPressテーマのテンプレートファイルにコードを追加する必要があります。以前にこれを行ったことがない場合は、WordPressにウェブ上のスニペットをコピー&ペーストする方法に関するガイドを参照してください。
テーマをアップデートすると、テーマのカスタマイズの多くが失われます。代わりに子テーマを作成してカスタマイズすることで、それを回避することをお勧めします。詳細については、WordPressテーマのカスタマイズを失わずにアップデートする方法に関するガイドをご覧ください。
添付ファイルテンプレートファイルの作成
まず、カスタマイズするテンプレートを選択する必要があります。すべての添付ファイルの表示方法を変更するには、attachment.php をカスタマイズする必要があります。
ただし、画像または動画のみをカスタマイズしたい場合は、image.php または video.php を編集する必要があります。
次に、お使いのテーマにそれらのテンプレートファイルが既に含まれているかどうかを確認します。たとえば、Twenty Twenty-Oneテーマのテンプレートは、WordPressホスティングのファイルマネージャーのwp/content/themes/twentytwentyoneフォルダーにアクセスすると見つけることができます。

Twenty Twenty-Oneテーマにはimage.phpテンプレートはありますが、attachment.phpテンプレートはないことがわかります。
カスタマイズしたいテンプレートがお使いのテーマにない場合は、自分で作成する必要があります。必要なファイル名で空のファイルを保存するだけです。
次に、single.php ファイルの内容を新しい空のファイルにコピーし、保存します。これにより、添付ファイルテンプレートがウェブサイトの他の部分と視覚的に一貫性が保たれます。
新しい添付ファイルテンプレートが作成されましたが、今のところ、添付ファイルページは以前と同じように表示されます。カスタマイズを行う時間です。
添付ファイルテンプレートファイルのカスタマイズ
これで、テンプレートのコードを変更することで、添付ファイルページをカスタマイズできます。テンプレートファイルは、WordPressの他のテーマファイルと同様です。このファイルに、HTML、テンプレートタグ、またはPHPコードを追加できます。
テンプレートをコンピューターにダウンロードし、メモ帳などのテキストエディターで開くことができます。コードの編集が完了したら、ファイルを保存し、FTPを使用してテーマフォルダーに再度アップロードしてください。
Twenty Twenty-One テーマの image.php テンプレートをカスタマイズする例をいくつか紹介します。これは、変更を加える前の状態です。

ページは画像のタイトルから始まり、次に画像自体とキャプションが続きます。その後、画像の説明と画像に関するその他の詳細が表示されます。最後に、コメントセクションが表示されます。
これらのセクションが表示される順序を並べ替えることができます。たとえば、画像のコードをタイトルの上に移動させることができます。

画像のキャプションを表示するコード行を削除するだけで、キャプションを削除することもできます。
添付ファイルページは現在このようになっています。

画像へのコメントを訪問者に許可したくない場合は、コメントセクションを完全に削除できます。
コメントセクションを表示するコード行を、下部近くで削除するだけです。

ボーナス: WordPress で投稿の添付ファイルをアイキャッチ画像として追加する
ほとんどのWordPressテーマでは、サムネイルがウェブサイトのブログ投稿の横に表示されます。ただし、この機能をサポートしていなかったテーマから切り替えたばかりの場合、ブログページに多くの空白スペースが表示されることになります。
公開済みのすべてのブログ投稿にアイキャッチ画像を作成するのは時間がかかるため、投稿の添付ファイルをサムネイルとして使用できます。これにより、ブログのトラフィックが増加し、ユーザーエンゲージメントが高まります。
これを行うには、Auto Featured Image プラグインをインストールして有効化します。その後、Auto Featured Image » Settings ページにアクセスし、「Generation Method」ドロップダウンメニューで「Find in post」オプションを選択します。

次に、「投稿タイプ生成」セクションで「ページ」オプションのチェックを外します。
次に、上部から「画像の生成」セクションに切り替え、「投稿タイプ」ドロップダウンメニューから「投稿」オプションを選択します。
プラグインは、アイキャッチ画像がないブログ投稿の数を表示します。ここで、「アイキャッチ画像を生成」ボタンをクリックします。

これで、アイキャッチ画像がないすべてのブログ投稿に、最初の添付画像がサムネイルとして自動的に表示されます。詳細は、WordPressで投稿添付ファイルをアイキャッチ画像として追加する方法に関するチュートリアルを参照してください。
このチュートリアルで、WordPressでカスタム単一添付ファイルテンプレートを作成する方法を学んでいただけたことを願っています。また、WordPressページの公開を停止する方法を学んだり、すべてのブログに必要ないくつかの重要なページのリストを確認したりすることもできます。
この記事が気に入ったら、WordPressのビデオチュートリアルについては、YouTubeチャンネルを購読してください。 TwitterやFacebookでもフォローできます。

apachx
このように、記事の画像を新しいページで開く方法:
そして、この記事のすべての画像をこの画像のページの下部に表示するにはどうすればよいですか(NEXT、PREVボタンも含む)?
Caroline
attachment.php を作成しましたが、機能していないようです。添付ファイルページとそのレイアウトは以前と同じように見えます。何か見落としていますか?
Wayne G.
この投稿、ありがとうございます。本当に助かりました。
Googleが私の添付ファイルページをコンテンツのようにインデックス付けしてしまう問題がありました。それを修正する方法を調べましたが、何も効果がありませんでした。YostのSEOプラグインはこれを行いますが、私は別のものを使用しており、それを変更したくありません。他の提案は効果がありましたが、カスタム投稿タイプの一部に影響を与えました。
その後、この投稿を見て、javascriptでホームページにリフレッシュする単一添付ファイル.phpページを作成するだけで良いことに気づき、うまくいきました!
これを行うことによる欠点はありますか?
WPBeginnerスタッフ
Monolopsでは、投稿に.zipファイルを添付でき、投稿に追加する際にファイルではなく添付ファイルページにリンクするように選択できます。ユーザーがファイルリンクをクリックすると、添付ファイルページに移動します。
Twenty Thirteenテーマが画像と.zipファイルをどのように異なる方法で表示するかを、そのattachment.phpテンプレートを調べることで確認してください。
より簡単な解決策としては、WP File Managerプラグインを使用することが考えられます。
monoloops
指摘してくれてありがとう。そのテーマで添付ファイルページを探してみます。 .zip ファイルを添付ファイルページにポイントできることは知っていますが、カスタマイズ方法がわかりません。それが私の問題です。WP ファイルマネージャーは良いプラグインですが、直接ダウンロードしか提供しません。しかし、添付ファイルページを使用すると、無料ファイルをダウンロードしたい場合に広告を掲載できる、もう 1 つの便利な場所が得られます。
monoloops
Very nice tutorial..I am wordpress beginer in customizing and I love your website. Can you please help me with this matter but instead of photography I need file attachment like .zip or .rar. I’ve tried to work on my own based on your tutorial but my skills isn’t on that level yet
Every google search for customizing attachment page is about images. No one thinks that people might want to share files i guess…
Rita
このコードは驚くほどうまく機能しました – 本当にありがとうございます!
Agnes
単一添付ファイルを表示するために single-attachment.php を使用することに興味があります。しかし、本当にやりたいのは、そのようなページのリストをサイトマップに含めることで、既存のプラグインではそれができませんでした(画像の一覧URLはありますが、画像/添付ファイルページのURLはありません)。そこで、画像/添付ファイルページのすべてのURLを一覧表示するページまたはアーカイブを作成することを考えています。どうすればそれができますか?