您可以使用the_content
filter 在将帖子打印到屏幕之前访问帖子的内容。您用来过滤它的函数可以有两种途径:使用regex来解析内容(不是“正确”的方式,而是更快/更脏的方式),也可以使用HTML解析器。然后您应该能够访问src
属性并替换<img/>
.
function my_content_filter( $post_content ){
// parse and modify the <imgs> in $post_content here
return $post_content;
}
add_filter( \'the_content\', \'my_content_filter\' );
请记住,如果您这样做,修改后的内容实际上不会存储在数据库中,因此如果有什么东西访问
$post->post_content
不打电话
apply_filters( \'the_content\', $post->post_content )
那么您的链接将不包括在内。这也会给服务器带来相对较高的负载,以解析/修改每个请求的内容,尤其是在没有缓存插件的情况下。如果希望更新无处不在,那么以编程方式访问和更新保存的值可能是更好的选择。