WordPress メディアライブラリでSVGをサポートしているSVG Supportプラグイン

WordPress メディアライブラリでSVGをサポートしているSVG Supportプラグイン2

WordPress メディアライブラリでSVGをサポートするようにしてSVG Supportプラグイン

SVG画像を WordPressで使用する場合は、CSSを使用してSVG内にある要素のスタイルを調整するのが容易ではないことがあります。 無料のプラグインであるSVG Supportを使用すると、簡単にできます。

このプラグインはSVGサポートを提供するだけでなく、単純なIMGタグを使用してSVGファイル全体のコードを簡単に挿入できます。 IMG要素に「style-svg」を追加して、「style-svg」を含むIMG要素を完全なSVGに動的に置き換えます。

このプラグインは、 WordPress 4.8以上で導入された新しいImage Widgetでも使用可能であるとします。 (現在の WordPress 4.9-alpha-41335バージョンまでテストされた表示されていますね。)

もっと詳しく SVG Supportプラグイン ページを参照してみてください。

コードを使用して WordPress メディアアップローダを使用してSVGをアップロードできるようにする

WordPress 4.7.1以前のバージョンでは、次のコードを使用することができます。

function cc_mime_types($mimes) {
$mimes['svg'] = 'image/svg+xml';
return $mimes;
}
add_filter('upload_mimes', 'cc_mime_types');
// 출처: css-tricks

WordPress 4.7.1以降のバージョンでは、次のようなコードが動作することです。

// Allow SVG
// SVG 허용
add_filter( 'wp_check_filetype_and_ext', function($data, $file, $filename, $mimes) {

global $wp_version;
if ( $wp_version !== '4.7.1' ) {
return $data;
}

$filetype = wp_check_filetype( $filename, $mimes );

return [
'ext' => $filetype['ext'],
'type' => $filetype['type'],
'proper_filename' => $data['proper_filename']
];

}, 10, 4 );

function cc_mime_types( $mimes ){
$mimes['svg'] = 'image/svg+xml';
return $mimes;
}
add_filter( 'upload_mimes', 'cc_mime_types' );

function fix_svg() {
echo '<style type="text/css">
.attachment-266x266, .thumbnail img {
width: 100% !important;
height: auto !important;
}
</style>';
}
add_action( 'admin_head', 'fix_svg' );
// 출처: https://codepen.io/chriscoyier/post/wordpress-4-7-1-svg-upload

メモ:

一部の記事にはアフィリエイトリンクが含まれている場合があり、パートナーの活動で一定額の手数料を受け取ることがあります。

5のコメント

  1. 画像をsvgにアップロードすることを解決しました。 チャイルドテーマを有効にしてからこそsvgアップロードが可能になりました。 しかし、jpgはまだかすんで出ますね.. ^^それでsvgは鮮明に出てきます。

    やってみるとまた問題が生じました~(Word様かどうか分からなかったのかもしれません~) svgは容量も少なく持ち、鮮明にしていいのに、問題はモバイルでフォントが割れる現象がありますね…これはどうすればいいですか?

    1. フォント割れ現象を解決しました! しかし、主にjpgで作業してjpgからぼやけている現象をつかむ必要があります...

  2. WordPressで画像をアップロードするとぼやけてしまう現象が発生し続けており、お知らせいただいたfunctions.phpファイルも修正しましたが、ダメなのでSVGにすると鮮明になります。 でも露出がダメですね… エレメントでは露出になって他の場所をクリックすればなくなり… 上のコードをfunctions.phpにも載せてみたのにダメですね…理由は何でしょうか?

    1. こんにちは、ブカシ石ころ様。

      svgファイルサイズの問題はないでしょう?

      次のコードを一度入れてみましょ?

      function custom_admin_head() {
      $css = '';
      $css = 'td.media-icon img[src$=".svg"] { width: 100% !important; height: auto !important; }';
      echo '<style type="text/css">'.$css.'</style>';
      }
      add_action('admin_head', 'custom_admin_head');

      よくないと、次のようなCSSコードでも一度テストしてみてください?

      img.wp-post-image {
      min-width: 100% !important;
      }

      CSSコードを追加する方法は、次の記事を参照してください。

      https://www.thewordcracker.com/basic/how-to-add-css-in-wordpress/

コメントを残す

*電子メール情報は公開されません。