我想在管理员在wordpress上添加新缩略图时强制缩略图上的“alt”属性。
如果在输入“标题”上保存缩略图验证器时存在javascript钩子,那就太棒了!
谢谢。
答案 0 :(得分:2)
找到它,将它放在主题目录
中的functions.php文件中function add_alt_tags($content)
{
global $post;
preg_match_all('/<img (.*?)\/>/', $content, $images);
if(!is_null($images))
{
foreach($images[1] as $index => $value)
{
if(!preg_match('/alt=/', $value))
{
$new_img = str_replace('<img', '<img alt="'.$post->post_title.'"', $images[0][$index]);
$content = str_replace($images[0][$index], $new_img, $content);
}
}
}
return $content;
}
add_filter('the_content', 'add_alt_tags', 99999);
在此处查找更多内容http://www.paulund.co.uk/add-missing-alt-tags-to-wordpress-images
这是我的代码段网站上的内容。希望它有所帮助
答案 1 :(得分:0)
默认情况下,返回的图像没有title或alt属性。 (由于WordPress 4.7,alt属性不再自动添加。如果你专门输入&#34; Alt text&#34;上传图片,或者如果你回到媒体库并输入,它将只有一个alt属性&#34;替换文字&#34;为图像)。
如果您的图片都包含(标题属性标记)以及(alt标记),目前来自Google搜索的网站流量要高得多。因此,我添加了title和alt属性来发布缩略图,其中包含以下功能,该功能包含在您的主题中#34; functions.php&#34;文件。 title和alt属性的值将取自图像的标题,即附件的标题(不是实际的帖子标题)。
function eln_add_img_title( $attr, $attachment = null ) {
$img_title = trim( strip_tags( $attachment->post_title ) );
$attr['title'] = $img_title;
$attr['alt'] = $img_title;
return $attr;
}
add_filter( 'wp_get_attachment_image_attributes','eln_add_img_title', 10, 2
);
如果您不想从默认图片名称中获取图片属性 您可以更改代码,以便从中获取图像属性 &#34; POST_TITLE&#34;如下:
// Force adding missing image alt & title for WordPress.
function eln_add_img_title( $attr, $attachment = null ) {
$img_title = trim( strip_tags( $attachment->post_title ) );
$attr['title'] = the_title_attribute( 'echo=0' );
$attr['alt'] = the_title_attribute( 'echo=0' );
return $attr;
}
add_filter( 'wp_get_attachment_image_attributes','isa_add_img_title', 10, 2 );
希望这能帮到你,节省你的时间,祝你有愉快的一天:)