WordPress に SVG 画像ファイルを簡単に追加する方法 (3つの簡単なソリューション)

WordPressサイトにSVGファイルを追加すると、画像がシャープでクリアに見えるようになります。

ただし、WordPressでは画像、音声、動画など多くの種類のファイルをアップロードできますが、標準ではSVGファイルはサポートされていません。

これは、SVGファイルがセキュリティリスクをもたらす可能性があるためです。しかし、心配しないでください。SVGを使用するための安全な方法があります。

この記事では、SVG画像ファイルをWordPressに簡単かつ安全に追加する方法を紹介します。

WordPressにSVGファイルを簡単に追加

SVGとは何ですか?

SVG(Scalable Vector Graphics)は、XMLマークアップ言語を使用してベクターグラフィックスを定義するファイル形式です。その主な利点は、品質を失うことなく、またはピクセル化することなく画像を拡大できることです。

SVGはどのように機能しますか?

Scalable Vector Graphics(SVG)は、XMLを使用して2次元の描画を表示するテクノロジーです。PNG、GIF、JPGなどの一般的に使用される画像形式とは異なります。

PNGまたはJPGの画像ファイルを拡大すると、画像がぼやけてピクセル化することがわかります。

ベクターグラフィックスはピクセルを使用しません。

代わりに、表示しているグラフィックを座標として定義する2次元マップを使用します。拡大しても画像がピクセル化しないのは、単純にできないからです。

これにより、ベクターグラフィックを画質を損なわずに拡大できます。最も重要なのは、SVG画像はPNGやJPGファイルよりもファイルサイズがはるかに小さくなる可能性があるため、画像フォーマットの優れた選択肢となることです。

ベクターグラフィックスは、アイコン、アイコンフォント、ウェブサイトのロゴ、ブランディング画像によく使用されます。会社のロゴ、アイコン、その他のグラフィックスのためにWordPressにSVGファイルを追加したい場合があります。

ただし、SVGファイルは少し安全でない場合があります。そのため、WordPressではデフォルトでSVGファイルのアップロードがサポートされていません。

WordPressでSVG画像をアップロードすると、「セキュリティ上の理由により、このファイルタイプは許可されていません。」というエラーメッセージが表示されます。

WordPressでのSVGセキュリティエラー

WordPressにおけるSVGに関するセキュリティ問題

SVGファイルには、HTMLに似たXMLマークアップ言語のコードが含まれています。ブラウザまたはSVG編集ソフトウェアは、XMLマークアップ言語を解析して画面に表示します。

ただし、これにより、ウェブサイトがXMLの脆弱性の影響を受ける可能性があります。ユーザーデータへの不正アクセスや、ブルートフォース攻撃やクロスサイトスクリプティング攻撃をトリガーするために使用される可能性があります。

この記事で共有するメソッドは、SVGファイルをサニタイズしてセキュリティを向上させようとします。ただし、これらのプラグインでは、悪意のあるコードのアップロードや挿入を完全に防ぐことはできません

最善の解決策は、信頼できるソースによって作成されたSVGファイルのみを使用し、SVGのアップロードを信頼できるユーザーに制限することです。セキュリティの詳細については、初心者向けの完全なWordPressセキュリティガイドをご覧ください。

これを踏まえ、WordPressでSVGファイルを簡単かつ安全に使用する方法を3つの方法でご紹介します。特定の metod に興味がある場合は、以下のクイックリンクをご利用ください。

専門家のアドバイス: SVG画像ファイルの使用を決定する前に、ファイルサイズを圧縮してWordPressの速度とパフォーマンスを向上させるために、画像編集ツールを使用できることを忘れないでください。

準備はいいですか?ビデオチュートリアルから始めましょう。

動画チュートリアル

WPBeginnerを購読する

書き言葉での説明をご希望の場合は、そのままお読みください。

方法1:WPCodeを使用してWordPressでSVGファイルを許可する(推奨)

WordPressに安全にSVGファイルをアップロードできるようにする最も簡単な方法は、利用可能な最も強力なコードスニペットプラグインであるWPCodeを使用することです。

WPCodeには、多くの単一目的プラグインを置き換えることができる、事前設定済みのコードスニペットの大きなライブラリがあります。これには、添付ファイルページを無効にするスニペット、クラシック投稿エディターを維持するスニペット、およびSVGファイルアップロードを許可するスニペットが含まれており、これらすべてがウェブサイトを破損するリスクなしに行えます。

開始するには、無料のWPCodeプラグインをインストールして有効化する必要があります。詳細な手順については、WordPressプラグインのインストール方法に関するステップバイステップガイドを参照してください。

有効化したら、WordPressの管理画面のコードスニペット » スニペットを追加に移動してください。'svg'を検索し、「SVGファイルのアップロードを許可」にマウスカーソルを合わせます。

表示されたら、「スニペットを使用」をクリックしてください。

WPCodeのライブラリからSVGアップロードを許可するスニペット

次に、「スニペットの編集」ページに移動します。ここでは、WPCodeがコードの実行に必要なすべての設定をすでに構成しています。

スイッチを「アクティブ」に切り替えてから、「更新」ボタンを押すだけです。

スニペットをアクティブ化し、WPCode で更新をクリックします

これで、WordPressからエラーメッセージや警告メッセージが表示されることなく、SVGファイルをアップロードできます。

その後、WordPressウェブサイト上の他の画像のように扱うことができます。

WPCodeのライブラリスニペットのおかげでアップロードされたキティSVGです

デフォルトでは、WPCodeスニペットは「管理者」ロールを持つユーザーのみがWordPressにSVGを追加できるようにします。

コードスニペットの14〜16行目を削除することで、他のすべてのユーザーロールにも権限を付与できます。その後、11〜13行目の先頭に2つのスラッシュ「//」を追加して「コメントアウト」し、薄いタン色に変えることができます。

WPCodeは、コードではなくコメントと見なしたスニペットの一部を実行しません。これは以下の画像で例として確認できます。

WPCodeですべてのユーザーにSVGファイルのアップロード権限を付与する

いずれにしても、コードを削除すれば、すべてのユーザーがサイトにSVGファイルをアップロードできるようになります。変更を保存するには、必ず「更新」をクリックしてください。

方法2. SVG Supportを使用してWordPressにSVGファイルをアップロードする

この2番目の方法では、SVG Supportプラグインを使用します。これにより、WordPressの投稿やページ内にSVGを表示し、誰がアップロードできるかを制御できます。

まず、SVG Support プラグインをインストールして有効化する必要があります。詳細については、WordPressプラグインのインストール方法に関するステップバイステップガイドをご覧ください。

有効化したら、設定 » SVG サポート に移動してプラグインの設定を行います。

SVGサポート設定

設定ページで、「管理者に制限?」オプションの横にあるチェックボックスをオンにするだけです。これにより、サイト管理者のみがWordPressでSVGファイルをアップロードできるようになります。

次のステップは、高度モードをオンにすることです。高度な機能(CSSアニメーションやインラインSVGレンダリングなど)を使用したい場合にのみ、このオプションをチェックする必要があります。

設定を保存するには、「変更を保存」ボタンをクリックしてください。

新しい投稿を作成するか、既存の投稿を編集できるようになりました。投稿エディターで、他の画像ファイルをアップロードするのと同じようにSVGファイルをアップロードできます。

エディターに画像ブロックを追加し、SVGファイルをアップロードするだけです。

WordPress投稿へのSVGファイル埋め込み

方法3:Safe SVGを使用してWordPressにSVGファイルをアップロードする

この方法ではプラグインも使用し、WordPressにアップロードされたSVGファイルをサニタイズできます。

まず最初に行うべきことは、Safe SVGプラグインをインストールして有効化することです。詳細については、初心者向けWordPressプラグインのインストール方法ステップバイステップガイドをご覧ください。

SVGのバナーを保存

このプラグインはすぐに機能し、設定する必要はありません。そのままSVGファイルをアップロードできます。

欠点は、このプラグインでは、WordPressサイトに投稿できるすべてのユーザーがSVGファイルをアップロードできることです。どのユーザーがファイルをアップロードできるかを制御するには、プラグインのプレミアムバージョンを購入する必要があります。

この記事がWordPressにSVGファイルを安全に追加する方法を学ぶのに役立ったことを願っています。また、ウェブサイトヘッダーにウィジェットを追加する方法に関するガイドや、初心者向けの便利なコードスニペットの専門家のおすすめもご覧ください。

この記事が気に入ったら、WordPressのビデオチュートリアルについては、YouTubeチャンネルを購読してください。 TwitterFacebookでもフォローできます。

開示:当社のコンテンツは読者によってサポートされています。これは、当社のリンクの一部をクリックすると、当社が手数料を得る可能性があることを意味します。WPBeginnerがどのように資金提供されているか、それがなぜ重要か、そしてどのように私たちをサポートできるかについては、こちらをご覧ください。当社の編集プロセスはこちらです。

究極のWordPressツールキット

無料のツールキットにアクセスしましょう - すべてのプロフェッショナルが持つべきWordPress関連の製品とリソースのコレクションです!

読者とのインタラクション

27 CommentsLeave a Reply

  1. クライアントのロゴをPNGからSVGに切り替えました。特にモバイルでの速度差は驚くほどでした!
    私の経験からの簡単なヒント:常にPNGのバックアップを作成し、コードで「picture」要素を使用してください。これにより、古いブラウザにも対応しながら、最新のブラウザではSVGのメリットをすべて享受できます。
    セキュリティに関するヒントも本当に感謝しています。クライアントのサイトを扱う際には非常に重要です!

  2. かつてSVGファイルが危険な理由について興味深い記事を読みました。しかし、その情報を得る前に、WordPressがSVGのアップロードを拒否し続け、私はかなりのフラストレーションを感じていました。ウェブ用のアイコンをSVG形式で持っています。しかし、WPCodeと簡単なスニペットが本当に助けになりました。これは、初心者でも扱える、シンプルで機能的なソリューションです。

  3. すべてのSVGプラグインを追加しましたが、自分で作成したSVGの追加がまだブロックされています。リスクや悪意のあるコードはありません。WordPressにSVGファイルを追加する他の方法はありますか?

    • プラグインでもSVGをサイトに追加できない場合は、ホスティングプロバイダーに連絡して、WordPressの設定を上書きする可能性のあるセキュリティ設定がないか確認することをお勧めします。

      管理者

  4. ブロックが導入されて以来、「カスタムHTMLブロック」にSVGコードを追加するだけで済みます。スニペットプラグインはもう必要ありません。

    • If the image is hosted elsewhere that would work but to upload we would recommend using the snippet at this time. You would also not want to add the PHP code using the HTML snippet if that is what you mean :)

      管理者

  5. こんにちは。
    記事をありがとうございます。
    いつもあなたのウェブサイトを参照しており、多くのことを学んでいます。
    ここで、ウェブサイトでSVGファイルを使用するのは安全ではないと書かれています。

    私の質問は、Adobe IllustratorなどのソフトウェアでSVGファイルを自分で作成した場合、
    ウェブサイトにアップロードするのは再び安全ではないのですか?
    そして、セーフSVGプラグインを使用すべきですか?

    ありがとうございます!

    • If you are the person who created the SVG and there are no other users uploading files to your site, you are fine to not use the safe SVG plugin. :)

      管理者

  6. こんにちは。SVGプラグインを正常にアップロードでき、SVGファイルをアップロードできますが、ロゴのクロッピングの段階でクロッピングができず、ウェブサイトに表示されません。左側のカスタマイズパネルではきれいで鮮明に表示されますが、ウェブサイトには表示されません。一方、PNGファイルをアップロードすると、クロッピングが機能し、カスタマイズパネルとウェブサイトの両方に表示されます。SVGロゴをウェブサイトに表示するために何かする必要がある場合は、お知らせいただけますか?ありがとうございます。

    • WordPressサイト以外のものを使用してSVGを編集し、目的のサイズにトリミングする必要があります。

      管理者

  7. svgz(svg圧縮)をアップロードしたいのですが、セキュリティ上の理由でエラーが発生します。SVG形式は問題なくアップロードできますが、ファイルサイズを削減するためにsvgzが必要です。この件について、ご協力いただけますでしょうか。
    よろしくお願いいたします。

  8. こんにちはWPBeginner様、

    ウェブサイトにSafe SVGプラグインを追加しましたが、SVGファイルが破損してアップロードされるようです。使用できません。これはどうしてですか?

    • You would want to reach out to the plugin’s support and let them know about the issue and they should be able to assist :)

      管理者

  9. 完全に網羅された情報、ありがとうございます。

    SVG Supportを使ってウェブロゴをアップロードできるでしょうか?

  10. ピクセル画像を数学的なものに変換する複雑さを理解しています。

    JPEGや.png画像をSVGに変換するための、かなり簡単または自動化された方法やプログラムはありますか?

    • 私が試した限りでは、Inkscapeはまさにそれを実行できます。無料であり、Windows、Mac、Linuxで動作します。

      Gimp、Illustrator、そして確信はありませんが、Kritaもできるかもしれません。

      GimpとKritaも無料でマルチOSです。

      確かに、かなり重くて高品質な写真をSVGに変換しました(以前はカメラから直接撮影したJPG画像でした)が、問題なく機能しました。時間がかかりましたが、機能します。私のシステムがかなり貧弱だからかもしれません。

    • ほとんどのベクター編集ソフトウェアにはその機能があります。InkscapeとIllustratorの両方で可能です。ただし、複雑な形状や多くの色(すべての実写画像がこれに該当します)がある場合、結果はそれほど良くありません。この機能は、4色未満の画像に使用するのが最適です。色が少ないほど良いです。

返信する

コメントを残していただきありがとうございます。すべてのコメントは、当社のコメントポリシーに従ってモデレーションされますので、ご了承ください。メールアドレスは公開されません。名前フィールドにキーワードを使用しないでください。個人的で有意義な会話をしましょう。