WordPress по умолчанию при загрузке изображений не заполняет поле
"Атрибут alt" и при вставке такого изображения в контент данный атрибут будет пустой.
Желательно, чтобы в атрибуте alt был текст, описывающий картинку. Это нужно для людей, у которых по какой-либо причине картинка отобразиться не смогла (тогда вместо неё выведется текст из атрибута alt) и для СЕО, конечно, так как это один из способов дать понять Поисковым системам, что изображено на фото.
Код ниже решает эту проблему. При создании записи и выборе изображения из медиабиблиотеки для вставки в контент, поле под alt (если пустое) будет заполнено на основе title автоматически.
Вставьте код в functions.php своей темы или оформите в виде плагина.
/**
* Заполняет поле для атрибута alt на основе заголовка изображения при его вставки в контент поста.
*
* @param array $response
*
* @return array
*/
function change_empty_alt_to_title( $response ) {
if ( ! $response['alt'] ) {
$response['alt'] = sanitize_text_field( $response['title'] );
}
return $response;
}
add_filter( 'wp_prepare_attachment_for_js', 'change_empty_alt_to_title' );
Достоинством данного способа является то, что информацию мы подменяем динамически именно во время выбора и вставки изображения в запись, а значит она не хранится в базе данных, занимая место.

