为了澄清起见,我不问如何创建新图像图片大小。
#1 楼
在这里找到它。答案是:global $_wp_additional_image_sizes;
print '<pre>';
print_r( $_wp_additional_image_sizes );
print '</pre>';
评论
将其添加到functions.php文件的顶部将不起作用,但是将其粘贴到该文件中的任何函数中,它将起作用。
–kevnk
17年8月15日在20:40
#2 楼
WordPress核心没有用于获取中间图像大小(即宽度和高度)的本机方法,但是以下辅助函数将获取所有已注册图像大小及其尺寸: /**
* Get all the registered image sizes along with their dimensions
*
* @global array $_wp_additional_image_sizes
*
* @link http://core.trac.wordpress.org/ticket/18947 Reference ticket
*
* @return array $image_sizes The image sizes
*/
function _get_all_image_sizes() {
global $_wp_additional_image_sizes;
$default_image_sizes = get_intermediate_image_sizes();
foreach ( $default_image_sizes as $size ) {
$image_sizes[ $size ][ 'width' ] = intval( get_option( "{$size}_size_w" ) );
$image_sizes[ $size ][ 'height' ] = intval( get_option( "{$size}_size_h" ) );
$image_sizes[ $size ][ 'crop' ] = get_option( "{$size}_crop" ) ? get_option( "{$size}_crop" ) : false;
}
if ( isset( $_wp_additional_image_sizes ) && count( $_wp_additional_image_sizes ) ) {
$image_sizes = array_merge( $image_sizes, $_wp_additional_image_sizes );
}
return $image_sizes;
}
输出类似以下内容的结果:
Array
(
[thumbnail] => Array
(
[width] => 150
[height] => 150
[crop] => 1
)
[medium] => Array
(
[width] => 300
[height] => 300
[crop] =>
)
[medium_large] => Array
(
[width] => 768
[height] => 0
[crop] =>
)
[large] => Array
(
[width] => 1024
[height] => 1024
[crop] =>
)
)
评论
+1获得更完整的答案。其他返回其他大小,但不返回默认大小。
– Cazuma Nii Cavalcanti
17年1月8日在22:30
如果使用$ default_image_sizes = get_intermediate_image_sizes();甚至会更好。因为自WP 4.4起存在中型尺寸。
–natebeaty
17年9月21日在22:23
好建议;我已根据您的建议更新了答案。
–rjb
17年9月23日在19:24
ACF用它的媒体阵列宠坏了我。
–亚当·帕特森(Adam Patterson)
19年5月21日在2:54
在2020年3月使用PHP 7.3的WP 5.4中有用:)
– EsaulFarfan
20-4-1在7:43
#3 楼
如果只需要所有图像尺寸的名称,则可以使用get_intermediate_image_sizes:<pre>
<?php print_r(get_intermediate_image_sizes()); ?>
</pre>
#4 楼
如果其他答案不起作用,请使用此代码,以便它将在WordPress初始化后运行。add_action('init', 'get_all_image_sizes');
function get_all_image_sizes(){
global $_wp_additional_image_sizes;
print '<pre>';
print_r( $_wp_additional_image_sizes );
print '</pre>';
}
评论
我已经测试了几种方法,这种方法终于奏效了。 (WP + WooCommerce +自定义主题)
–朱拉·洛林(Juraj.Lorinc)
18年2月19日在11:19
#5 楼
从WP 5.3开始,使用此功能就足够了:wp_get_registered_image_subsizes();
#6 楼
从WP 4.7开始,您可以使用wp_get_additional_image_sizes()获取其他已注册的图像大小(不包括WP添加的默认图像大小)。自WP 5.3起,您可以使用wp_get_registered_image_subsizes()获取所有已注册的图像大小。 >
评论
在搜索类似内容但具有界面的过程中,遇到了插件其他图像尺寸(zui)。它有500天没有更新,但通过了第一批测试。