插件与教程

WordPress强制插入到文章的图片尺寸为全尺寸

authorCrazy uncle publish2022-12-06 update2022-12-06 view2,216

最近设计了一款图片类的WordPress主题 - mango主题,发布后,收到了一个奇怪的bug反馈,就是插入的图片无法显示?

首先确定一下获取缩略图的逻辑是wp_get_attachment_image这个函数,意义就是根据媒体ID来输出裁剪缩略图,能获取到媒体ID就可以输出该图片的缩略图;反之如果获取不到媒体ID则无法输出缩略图;

问题:为什么获取不到媒体的ID呢?

研究:发现插入到文章的图片不是全尺寸的原图文件,而是*****768x500.jpg 这样的文件;因为不是全尺寸的原图文件,所以通过attachment_url_to_postid就查不到媒体ID,所以就无法显示出缩略图了

解决:强制用户上传的图片插入到文章时,以全尺寸插入?是否问题则解决了呢?试试吧

给代码到functions.php文件里

//WordPress文章插入图片显示方式(尺寸/对齐方式/链接到)
add_action( 'after_setup_theme', 'default_attachment_display_settings' );
function default_attachment_display_settings() {
    update_option( 'image_default_align', 'center' ); //居中显示
    update_option( 'image_default_link_type', ' file ' ); //连接到媒体文件本身
    update_option( 'image_default_size', 'full' ); //完整尺寸
}

代码都加了注释,清晰明了,经过此操作后,再插入进来的图像则自动以全尺寸出现,因为是全尺寸则可用查到媒体ID,就可以对其进行裁剪,则正常显示出裁剪后的缩略图。

有用(8)

这些你同样感兴趣

满足你在每个阶段使用模板的需求,帮助你高效完成工作及任务