在WordPress中,手动为每张上传的图片添加Alt标签和描述可能较为繁琐。不过,你可以通过以下方式自动化这个过程,使得图片的名称自动转化为WordPress的图片标题、描述和说明。以下是实现这一功能的代码,只需将其添加到你的当前主题的functions.php文件中:
“`php
add_Action( ‘add_attachment’, ‘my_set_image_meta_once_image_upload’ );
function my_set_image_meta_once_image_upload( $post_ID ) {
// 检查上传的文件是否为图像,如果不是,则不执行任何操作
if ( ! WP_attachment_is_image( $post_ID ) ) {
return;
}
$my_image_title = get_the_title( $post_ID ); // 获取图片的标题
// 清理标题:移除连字符、下划线和额外空格
$my_image_title = preg_replace( ‘/\s*[-_]\s*/’, ‘ ‘, $my_image_title );
// 首字母大写(其余小写)每个单词
$my_image_title = ucwords( strtolower( $my_image_title ) );
// 创建一个数组,包含要更新的图像元数据(标题、摘录、描述)
// 注意:取消不需要的摘录/题注或内容/描述行的注释
$my_image_meta = array(
‘ID’ => $post_ID, // 指定要更新的图像ID
‘post_title’ => $my_image_title, // 设置图像标题为清理后的标题
‘post_excerpt’ => $my_image_title, // 设置图像摘录(标题)为清理后的标题
‘post_content’ => $my_image_title, // 设置图像描述(内容)为清理后的标题
);
// 设置图片的Alt属性
update_post_meta( $post_ID, ‘_wp_attachment_image_alt’, $my_image_title );
// 更新图片的元数据(如标题、摘录、内容)
wp_update_post( $my_image_meta );
}
“`
这段代码会自动清理图片名称中的空格和其他不必要的字符,并将其用作图片的标题、摘录和内容。请注意,此代码仅对新上传的图片生效,对已上传的图片不会产生影响。