2012-04-24 88 views
0

我正在寻找将rel =“image_src”添加到所有出现在wordpress中的帖子上的图片标签。我试图从编辑/wp-includes/media.php:将代码添加到所有<img>关于wordpress的标签

$html = '<img src="' . esc_attr($img_src) . '" alt="' . esc_attr($alt) . '" title="' . esc_attr($title).'" '.$hwstring.'class="'.$class.'" />'; 

$html = '<img src="' . esc_attr($img_src) . '" alt="' . esc_attr($alt) . '" rel="image_src" title="' . esc_attr($title).'" '.$hwstring.'class="'.$class.'" />'; 

,但无济于事。我是否在正确的位置,还是有其他我应该编辑的东西?

由于大部分

+2

我可能会使用JQuery而不是试图将其破解到服务器端代码。 – dqhendricks 2012-04-24 19:04:45

+1

我强烈建议您不要编辑'/ wp-includes/media.php'或任何核心wordpress文件。您下次更新wordpress时可能会覆盖您的更改。仅在主题或自定义插件中进行更改。有'actions'和'filters'可以用来影响wordpress核心的部分。 – Robbie 2012-04-24 19:06:37

回答

1

我会去jquery,而不是修改WordPress的核心文件。我可能会使用下面的js:

<script> 
jQuery(document).ready(function ($) { 
    $("img").attr("rel","image_src"); 
}); 
</script> 
2

这可能是很不好做这种方式,因为HTML正则表达式时一般不赞成,但它是跳跃到想到的第一件事。未经测试,但它应该让你开始。

add_filter('the_content', 'add_img_src', 20); 
function add_img_src($content) 
{ 
    preg_match_all('/<img(.*?)>/', get_the_content(), $matches); 
    if(count($matches[1]) && is_single()) 
    { 
     foreach($matches[1] as $count => $match) 
     { 
      str_replace($match, $match.' rel="image_src"', $content); 
     } 
    } 
    return $content; 
} 
+0

这个功能属于哪里?忽略原始? – bswinnerton 2012-04-24 19:13:47

+0

你不想编辑核心文件。把它放在主题文件夹的functions.php文件中。如果没有,请创建一个。 – maiorano84 2012-04-24 19:15:28

+0

如果这有帮助,请标记为“已回答”。 – maiorano84 2012-04-24 20:15:51

相关问题