web-dev-qa-db-ja.com

正方形に画像をトリミングするにはadd_image_size()?

だから私はクールなadd_image_size('name',X,Y,Crop?)を使ってカスタムイメージを設定することを知っていますが、私はイメージを、それらのサイズに関係なく、正方形にトリミングするものを構築する必要があります。

基本的に、ユーザーのアップロードした画像が常に正方形になるようにします。

1
rugbert

最後の$crop引数にtrueを渡すと、いわゆる "hard"トリミングモードが使用されます。これにより、WPが、指定された正確なサイズで結果を生成するようになります(Edgeの場合がほとんどない場合(アップロードされた画像が指定されたサイズより小さい場合など))。

元の画像はそのまま保持されます。あなたが実際にオリジナルも修正する必要があるなら - それはWPネイティブサイズ機能が意図されているものの外です、それはカスタムコードでそれをしなければならないでしょう。

2
Rarst

WordPressが多くの画像に取って代わるので、私は多くのテーマ開発がadd_image_sizeの使用をやめていると思います。そうするのではなく、あなたのテーマに統合するプラグイン、あるいはプラグインを使うことができます。これは使いやすい良いものです。

https://github.com/sy4mil/Aqua-Resizer

Add_image_sizeを実行するよりも、これを実行するほうが良い方法だと思います。スクリプトから、あなたはただあなたが必要とするどんな大きさと形ででも呼びます。

例えば。あなたはあなたに素敵な広場を与えるだろう125×125の画像が必要だとしましょう。あなたはループの中でこのようなことをすることができます。

 $thumb = get_post_thumbnail_id();
 $img_url = wp_get_attachment_url( $thumb,'full' ); //get full URL to image (use    "large" or "medium" if the images too big)
 $image = aq_resize( $img_url, 125, 125, true ); //resize & crop the image

 ?>

 <article <?php post_class()?> id="post-<?php the_ID(); ?>">

<?php if($image) : ?>
    <img src="<?php echo $image ?>"/>
<?php endif; ?>

それはポストの特色にされたイメージを取り、125 x 125の正方形にイメージを切り取りそしてイメージをエコーアウトする。

あなたはこのページでもっと 例を見ることができます

1
Jamie