我有一个使用add_image_size定义几个自定义图像尺寸的主题。在将图像插入帖子中时, 这5种图像尺寸曾经显示在Wordpress 3.4媒体管理器中, 但不再显示在新的Wordpress 3.5媒体管理器中。实际上, 当我尝试将”添加媒体”添加到帖子中时, 仅有的图像大小选项是”缩略图”(100×100)和”全尺寸”(3260×988)。显然, 我的主题设置没有覆盖设置>>媒体中的默认媒体设置。这是我的functions.php文件中的代码:
function custom_theme_support() {
add_theme_support('post-thumbnails');
set_post_thumbnail_size(180, 120, true);
add_image_size( 'hero-desktop-2x', 3200, 800, true);
add_image_size( 'hero-desktop', 1600, 400, true);
add_image_size( 'hero-mobile-2x', 1534, 800, true);
add_image_size( 'hero-mobile', 767, 400, true);
}
add_action('after_setup_theme', 'custom_theme_support');
因此, 我的问题是我需要做些什么来使主题覆盖Wordpress 3.5中的Wordpress Admin设置?
#1
过去遇到类似问题时, 我必须添加带有image_size_names_choose过滤器的图像。那是WordPress 3.5之前的版本;你说它正在3.4上运行, 所以我不知道它是否有帮助, 但是值得尝试。
本教程的第二步中有一个示例。
#2
我使用了下面的代码, 它似乎可以正常工作。
注意:你必须重新生成所有缩略图, 此大小才能追溯显示在现有图像上:
function setup_image_sizes() {
if( function_exists('add_theme_support') ) {
add_theme_support('post-thumbnails');
}
if ( function_exists( 'add_image_size' ) ) {
add_image_size( 'custom-image', 576, 320, true );
}
function my_image_sizes($sizes){
$custom_sizes = array(
'custom-image' => 'Custom Image'
);
return array_merge( $sizes, $custom_sizes );
}
add_filter('image_size_names_choose', 'my_image_sizes');
}
add_action( 'after_setup_theme', 'setup_image_sizes' );
评论前必须登录!
注册