1 Crop Hints

1.1 crophints_get (array $options)

画像のクロップヒントを読み込みます。

Crop Hint

Parameters

type default description
post_id * int null

メディアライブラリにアップロードされた画像の post ID を指定します。

type string null

クロップヒントのタイプを指定します。

  • 'auto' または 'manual'
  • 未指定の場合マニュアルクロップヒントが存在すれば 'manual' が優先され、次に 'auto' が選択されます。
force_analyze boolean false

画像にオートクロップヒントが存在しない場合に、即座に抽出を行うか指定します。

  • オートクロップヒントの抽出は API へアクセスし画像の解析を行うため、ストア済みのデータを読み込むよりも時間が必要です。
  • テンプレート内で連続して多量の抽出処理を行う場合、ページ生成までに多くの時間がかかる可能性があります。
unit string 'px'

返り値のクロップヒントデータの単位指定が可能です。

  • 'px' または '%'

Example

$crophint = crophints_get(array(
	'post_id' => 123
));

Return

(array) The crop hint data.

SUCCESS

Array
(
    [id] => 202  /* クロップヒントの ID */
    [post_id] => 123  /* 画像の Post ID */
    [status] => 'success'  /* 関数の実行結果 */
    [parent_width] => 2560  /* 解析した画像の幅(単位は常にpx) */
    [parent_height] => 1707  /* 解析した画像の幅(単位は常にpx) */
    [width] => 955  /* クロップヒントの幅 */
    [height] => 1706  /* クロップヒントの高さ */
    [vertices] => Array  /* クロップヒントの各頂点の座標 */
        (
            [0] => Array
                (
                    [x] => 1024
                    [y] => 0
                )

            [1] => Array
                (
                    [x] => 1979
                    [y] => 0
                )

            [2] => Array
                (
                    [x] => 1979
                    [y] => 1706
                )

            [3] => Array
                (
                    [x] => 1024
                    [y] => 1706
                )

        )

    [center] => Array  /* クロップヒントの中央座標 */
        (
            [x] => 1501.5
            [y] => 853
		)

    [focus] => Array  /* クロップヒントに設定されたフォーカスの座標 */
        (
            [x] => 1722
            [y] => 648
        )

    [load] => 'cache'  /* 生成済みのキャッシュから読み込まれたか */
    [type] => 'auto'  /* クロップヒントのタイプ */
    [unit] => 'px'  /* データの単位 */
)
ERROR

Array
(
    [status] => 'error'
    [message] => (エラーメッセージ)
)

1.2 crophints_get_hint_image (array $options)

Hint Image(=クロップヒントで切り抜いた画像)のメタデータを取得します。

Crop Hint

Parameters

type default description
post_id * int null

メディアライブラリにアップロードされた画像の post ID を指定します。

type string null

クロップヒントのタイプを指定します。

  • 'auto' または 'manual'
  • 未指定の場合マニュアルクロップヒントが存在すれば 'manual' が優先され、次に 'auto' が選択されます。
force_generate boolean false

Hint Image が未生成の場合に、即座に生成を行うか指定します。

  • 画像の生成処理を行うため、テンプレートのページ生成に時間がかかる場合があります。
  • 大量の画像生成を連続して行う場合、サーバーが高負荷となる可能性がありまます。
  • Hint Image が既に生成済みの場合には高速にロードされます。

Example

$hint_image = crophints_get_hint_image(array(
	'post_id' => $post_id
));

Return

(array) The metadata of Hint Image.

SUCCESS

Array
(
    [id] => 202  /* Hint Image の ID */
    [post_id] => 123  /* 画像の Post ID */
    [type] => 'auto'  /* クロップヒントのタイプ */
    [filepath] => 'htdocs/wp/wp-content/uploads/crophints/2020/04/image123_ch-auto.jpg'  /* Hint Image の絶対パス */
    [url] => 'https://crophints.com/wp/wp-content/crophints/uploads/2020/04/image123_ch-auto.jpg'  /* Hint Image のURL */
    [width] => 955  /* Hint Image の幅 */
    [height] => 1706  /* Hint Image の高さ */
    [load] => 'cache'  /* 生成済みのキャッシュから読み込まれたか */
    [status] => 'success'  /* 関数の実行結果 */
)
ERROR

Array
(
    [status] => 'error'
    [message] => (エラーメッセージ)
)

2 Smart Cropped Images

2.1 crophints_get_smartcrop (array $options)

Smart Cropped Image は、クロップヒントを考慮し×任意のアスペクトで×オリジナルから最大限に切り出した画像です。

Smart Cropped Image を切り出すクロップエリアのメタデータを取得します。

Crop Hint
Smart Crop

Parameters

type default description
post_id * int null

メディアライブラリにアップロードされた画像の post ID を指定します。

type string null

算出元となるクロップヒントのタイプを指定します。

  • 'auto' または 'manual'
  • 未指定の場合マニュアルクロップヒントが存在すれば 'manual' が優先され、次に 'auto' が選択されます。
aspect float 1.0

アスペクト比を指定します。

unit string 'px'

返り値のクロップヒントデータの単位指定が可能です。

  • 'px' または '%'

Example

$smartcrop = crophints_get_smartcrop(array(
	'post_id' => 245,
	'aspect' => .666
));

Return

(array) The metadata of hint image.

SUCCESS

Array
(
    [parent_width] => 2560  /* 算出元の画像の幅(単位は常にpx) */
    [parent_height] => 1707  /* 算出元の画像の高さ(単位は常にpx) */
    [x] => 1250.12083636  /* スマートクロップの x 座標 */
    [y] => 16  /* スマートクロップの y 座標 */
    [width] => 1126.206  /* スマートクロップの幅 */
    [height] => 1691  /* スマートクロップの高さ */
    [crophint] => 'manual'  /* スマートクロップ算出元としたクロップヒントのタイプ */
    [unit] => 'px'  /* データの単位 */
)

2.2 crophints_get_sci (array $options)

指定した post_id の画像から切り出した Smart Cropped Image の画像メタデータを読み込みます。

Smart Cropped Image が未生成の場合には wp_get_attachment_image_src() 関数実行時に相当するデータを返します。

Crop Hint

Parameters

type default description
post_id * int null

メディアライブラリにアップロードされた画像の post ID を指定します。

type string null

Smart Cropped Image の生成元となるクロップヒントのタイプを指定します。

  • 'auto' または 'manual'
  • 未指定の場合マニュアルクロップヒントが存在すれば 'manual' が優先され、次に 'auto' が選択されます。
size string null

取得したいサイズを指定します。WordPress に設定されているサイズと同じサイズ名の指定が可能です。

aspect float 1.0

Smart Cropped Image のアスペクト比を指定します。

force_generate boolean false

指定した条件の Smart Cropped Image が存在しない場合に、即座に生成を行うか指定します。

  • 画像の生成処理は一般的にサーバーへの負荷が高くなりがちです。
  • テンプレート内で一度に多量の Smart Cropped Images を生成する実装はおすすめできません。よく利用するアスペクト比は、設定ページで行える自動生成プリセットをご活用ください。

Example

$smart_cropped_image = crophints_get_sci(array(
	'post_id' => 123,
	'size'    => 'w640',
	'aspect'  => .666
));

Return

(array) The metadata of Smart Cropped Image.

SUCCESS
// * 指定された条件の Smart Cropped Image が存在した場合

Array
(
    [status] => 'success'  /* 関数の実行結果 */
    [src] => Array  /* 画像メタデータ */
        (
            [0] => 'https://crophints.com/wp/wp-content/uploads/crophints/2020/04/image123_ch-manual_sci-666_w640.jpg'
            [1] => 639
            [2] => 960
            [3] => 1
        )

    [size] => 'w640'  /* 画像サイズ */
    [aspect] => 0.666  /* アスペクト比 */
    [crophint] => 'manual'  /* Smart Cropped Image 生成の元としたクロップヒントタイプ */
    [is_sci] => 1  /* 画像メタデータが Smart Cropped Image であるか */
    [load] => 'cache'  /* 生成済みのキャッシュから読み込まれたか */
)
SUCCESS_ERROR
// * 指定された条件の Smart Cropped Image が存在しなかった場合

Array
(
    [status] => 'success'  /* 関数の実行結果 */
    [src] => Array  /* 画像メタデータ */
        (
            [0] => 'https://crophints.com/wp/wp-content/uploads/2020/04/image123-640x427.jpg'
            [1] => 640
            [2] => 427
            [3] => 1
        )

    [size] => 'w640'  /* 画像サイズ */
    [aspect] => 1.499  /* アスペクト比 */
    [is_sci] => 0  /* 画像メタデータが Smart Cropped Image であるか */
)
ERROR

Array
(
    [status] => 'error'
    [message] => (エラーメッセージ)
)