概要
image_constrain_size_for_editorフィルタは、WordPressの投稿やページのエディタで使用される画像の最大サイズを設定するために使用されます。このフィルタは、ユーザーがエディタ内で画像を追加または編集する際に、画像イメージの縮小サイズを取得し、適切なサイズに制約をかけることができます。主に以下のような状況で使用されます。
- エディタでの画像アップロード時に、特定のサイズに制約をかけたい。
- カスタム投稿タイプの画像サイズを変更したい。
- プラグインやテーマが特定の画像サイズをサポートする必要がある場合に調整を行いたい。
- ユーザーがエディタ内での画像の表示サイズを変更するための設定を提供する場合。
- モバイルデバイス上で表示される際の最適な画像サイズを提供する場合。
- 画像がエディタ内で適切に表示されることを保証する場合。
- ブロックエディタや古いクラシックエディタの互換性を確保する場合。
- 画像のアップロードに伴うパフォーマンスを向上させたい場合。
構文
apply_filters( 'image_constrain_size_for_editor', $size, $orig_w, $orig_h );
パラメータ
$size(array): フィルタを通す際に使用されるサイズ。’width’と’height’を含む連想配列。$orig_w(int): オリジナルの画像の幅。$orig_h(int): オリジナルの画像の高。
戻り値
- (array): 制約された画像サイズの配列。
関連する関数
このフィルタに関連する関数は image_constrain_size_for_editor を参照してください。
使用可能なバージョン
このフィルタは、WordPressバージョン 3.5 以降で使用可能です。
コアファイルのパス
wp-includes/media.php
この関数のアクションでの使用可能性
| アクション | 使用例 |
|---|---|
| mu_plugin_loaded | |
| registered_post_type | |
| plugins_loaded | |
| wp_roles_init | |
| setup_theme | |
| after_setup_theme | |
| set_current_user | |
| init | |
| register_sidebar | |
| wp_loaded | |
| send_headers | |
| parse_query | |
| pre_get_posts | |
| wp | |
| template_redirect | |
| get_header | |
| wp_head |
サンプルコード
サンプルコード 1
add_filter('image_constrain_size_for_editor', 'custom_image_size', 10, 3);
function custom_image_size($size, $orig_w, $orig_h) {
return array('width' => 600, 'height' => 400);
}
このコードは、エディタで使用される画像の最大サイズを600×400に制約します。
サンプルコード 2
add_filter('image_constrain_size_for_editor', 'set_editor_image_constraints', 10, 3);
function set_editor_image_constraints($size, $orig_w, $orig_h) {
if ($orig_w > 800 || $orig_h > 800) {
return array('width' => 800, 'height' => 800);
}
return $size;
}
このコードは、オリジナルの画像が800ピクセル以上の場合、エディタでの表示サイズを800×800に制約します。
サンプルコード 3
add_filter('image_constrain_size_for_editor', 'dynamic_image_size_for_editor', 10, 3);
function dynamic_image_size_for_editor($size, $orig_w, $orig_h) {
$new_width = intval($orig_w * 0.75);
$new_height = intval($orig_h * 0.75);
return array('width' => $new_width, 'height' => $new_height);
}
このコードは、元の画像サイズの75%のサイズをエディタで使用します。
サンプルコード 4
add_filter('image_constrain_size_for_editor', 'set_max_image_size_for_editor', 10, 3);
function set_max_image_size_for_editor($size, $orig_w, $orig_h) {
return array('width' => min($orig_w, 500), 'height' => min($orig_h, 500));
}
このコードは、エディタで使用される画像のサイズを500ピクセルに制約します。
サンプルコード 5
add_filter('image_constrain_size_for_editor', 'custom_minimum_image_size', 10, 3);
function custom_minimum_image_size($size, $orig_w, $orig_h) {
return array('width' => max(300, $orig_w), 'height' => max(300, $orig_h));
}
このコードは、エディタでの画像サイズを300ピクセル以上に保ちます。
これらのサンプルコードは、WordPressの image_constrain_size_for_editor フィルタを通じて画像サイズを制御する方法を示しています。詳細な情報は、公式のWordPress Codexまたは開発者向けのドキュメントにてご確認ください。