在wordpress中,如果沒有自己幫文章中的圖片加上ALT屬性,wordpress系統預設上是沒有設定ALT屬性的。
但是如果有幫圖片加上ALT屬性,對SEO上的計分上會有少許的幫助。
但是如果一次在文章中插入了很多張照片,又不想要一張一張的設定ALT屬性,有沒有方法可以一次全自動設定呢?
現在只要在functions.php中加上以下的程式碼,wordpress系統就會自動幫你在文章中插入的圖片加上ALT屬性,而ALT屬性的預設值是抓取該篇文章的標題名稱。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
function image_alt( $imgalt ){ global $post; $title = $post->post_title; $imgUrl = "<img\s[^>]*src=(\"??)([^\" >]*?)\\1[^>]*>"; if(preg_match_all("/$imgUrl/siU",$imgalt,$matches,PREG_SET_ORDER)){ if( !empty($matches) ){ for ($i=0; $i<count($matches); $i++){ $tag = $url = $matches[$i][0]; $judge = '/alt=/'; preg_match($judge,$tag,$match,PREG_OFFSET_CAPTURE); if(count($match)<1) $altURL = ' alt="'.$title.'" '; $url = rtrim($url,'>'); $url .= $altURL.'>'; $imgalt = str_replace($tag,$url,$imgalt); } } } return $imgalt; } add_filter('the_content','image_alt'); |
發佈留言