我有一个ACF的WYSIWYG字段,允许用户在其上放置媒体(显示媒体上传按钮?设置为是)。
我在Wordpress 4.5.2上使用ACF Pro 5.3.4,我在我的模板上使用以下代码渲染此字段:
$wysiwyg = apply_filters('the_content', get_field('my_wysiwyg_field_name'));
echo wpautop($wysiwyg);
它有效,但问题是这个WYSIWYG中的图像以其文件名(没有扩展名)呈现为alt
属性。即使我将图像的标题,标题,替代文字和/或描述更改为媒体库。
我试图挂钩不同的过滤器以覆盖alt
属性,但它似乎没有工作......
<?php
add_filter('post_thumbnail_html', 'fix_image_alt_caption', 10);
function fix_image_alt_caption($html, $id, $caption, $title, $align, $url, $size, $alt) {
echo '<!-- fix_image_alt_caption: ' . $id . ' -->';
$html = preg_replace('/(alt)="[^"]*"\s/', 'alt="Test -> ' . $alt . '" ', $html);
return $html;
}
Echo对我的HTML没有回应,所以我猜这个钩子在这个上下文中不起作用......
有关如何修复alt
属性的任何想法或建议?谢谢!