Как по кнопке «Добавить медиафайл» добавлять к ссылке на изображение атрибут title?
По кнопке «Добавить медиафайл» ссылка выводится в виде:
<a href="http://wp.old-land.ru/wp-content/uploads/144.jpg"><img и т.д.
Хотелось бы, чтобы она выглядела так:
<a href="/wp-content/uploads/144.jpg" title="ЗАГОЛОВОК ИЗОБРАЖЕНИЯ"><img и т.д.
Пробовала использовать хук img_caption_shortcode по аналогии с ответом на вопрос «изменить код вставки изображения вставляемой по кнопке «Добавить медиафайл»:
add_filter( 'img_caption_shortcode', 'filter_function_name_6592', 10, 3 );
function filter_function_name_6592( $output, $attr, $content ){
$content = str_replace("<a","<a title='". $attr['caption'] . "'", $content);
return $content;
}
Не работает.
Убирать http пока не пробовала.
вот кусок кода для alt - можете подкорректировать под title
а вообще загаловок заполняется автоматически, и его нужно вызывать через php
get_post_meta( id картинки, 'post_title' );
//автозаполнение полей при вставке медиафайлов start function wph_auto_alt_title_caption($attachment_ID) { $filename = $_REQUEST['name']; $withoutExt = preg_replace('/\\.[^.\\s]{3,4}$/', '', $filename); $withoutExt = str_replace(array('-','_'), ' ', $withoutExt); $alt = "PaxToy " . $withoutExt; $my_post = array( 'ID' => $attachment_ID, // 'post_title' => $withoutExt, // title // заполняет // 'post_excerpt' => $withoutExt, // подпись и alt // caption // заполняет // 'post_content' => $withoutExt, // описание // description // заполняет 'alt' => $alt ); wp_update_post($my_post); //атрибут alt update_post_meta($attachment_ID, '_wp_attachment_image_alt', $alt); } add_action('add_attachment', 'wph_auto_alt_title_caption'); //автозаполнение полей при вставке медиафайлов endА вы точно отвечали на тот вопрос, который я задавала?
Я как раз интересовалась, ГДЕ нужно вызвать заголовок через php, чтобы он попал и в атрибут title тега "a" ТОЖЕ.
И этот код, исправленный для title, ничего не меняет. Я бы проверила на alt, но у тега "a" нет атрибута alt, а в теге "img" он и так заполнялся автоматически.
Вы точно отвечали не на тот вопрос. Я нашла, где работает этот код - при загрузке изображения. А мне надо при вставке загруженного изображения (у которого уже давно ручками заполнены все поля) в пост.
Поговорю сама с с собой...
Но если кому-то тоже надо:
// При вставке медиафайла в пост добавляет атрибут title к коду ссылки add_filter( 'media_send_to_editor', 'filter_function_name_5765', 10, 3 ); function filter_function_name_5765( $html, $send_id, $attachment ){ return str_replace( "<a","<a title='" . get_the_title($send_id) . "'", $html ); }