WordPress站長在發(fā)表文章時,往往不注意給圖片添加說明(ALT),導(dǎo)致大量文章中的圖像缺少 ALT屬性,不利于SEO。網(wǎng)上有很多自動給文章圖片添加ALT屬性的教程,這里轉(zhuǎn)個國外的方法供參考。
將title標(biāo)簽作為WordPress文章圖片的ALT
只需將下面的代碼添加到當(dāng)前主題函數(shù)模板functions.php中即可。
function callback($buffer) { /* modify buffer here, and then return the updated code*/ $title=''; $res = preg_match('/<title>(.*?)<\/title>/', $buffer, $title_matches); if ($res) { /*Clean up title: remove EOL's and excessive whitespace.*/ $title = preg_replace('/\s+/', ' ', $title_matches[1]); $title = trim($title); } preg_match_all('/<img (.*?)\/>/', $buffer, $images); if(!is_null($images)) { foreach($images[1] as $index => $value) { preg_match('/alt="(.*?)"/', $value, $img); preg_match('/alt=\'(.*?)\'/', $value, $img2); if(!is_null($images)) { if((!isset($img[1]) || $img[1] == '') || (!isset($img2[1]) || $img2[1] == '')) { $new_img = str_replace('<img', '<img alt="'.$title.'"', $images[0][$index]); $buffer = str_replace($images[0][$index], $new_img, $buffer); } } } } return $buffer; } function buffer_start() { ob_start(); } function buffer_end() { echo callback(ob_get_clean()); } add_action('wp', 'buffer_start', 0); add_action('wp_footer', 'buffer_end');
代碼中雖然加了緩沖區(qū),但還是會降低效率,建議安裝靜態(tài)緩存插件。
附其它方法:
function img_alt($content) { global $post; preg_match_all('/<img (.*?)\/>/', $content, $images); if(!is_null($images)) { foreach($images[1] as $index => $value) { $new_img = str_replace('<img', '<img alt="'.get_the_title().'-'.get_bloginfo('name').'" title="'.get_the_title().'-'.get_bloginfo('name').'"', $images[0][$index]); $content = str_replace($images[0][$index], $new_img, $content); } } return $content; } add_filter('the_content', 'img_alt', 99999);
版權(quán)聲明: 本站資源均來自互聯(lián)網(wǎng)或會員發(fā)布,如果侵犯了您的權(quán)益請與我們聯(lián)系,我們將在24小時內(nèi)刪除!謝謝!
轉(zhuǎn)載請注明: WordPress將標(biāo)題作為圖片的ALT