将摘录中的图像链接更改为指向帖子

时间:2013-06-01 作者:iceteea

默认情况下,文章中包含的图像链接到全尺寸图像url。

在起始页上显示的摘录中有这样的图像,因为在图像之后添加了更多标记(这是预期的),所以图像缩略图仍然链接到图像URL。

Which action has to be taken to make it link to the article?
同时将其指向特定文章页面中的图像url?(给我的Fancybox)

澄清:我不是指张贴缩略图,只是文章中的图像,如特定文章页面所示。

1 个回复
SO网友:s_ha_dum

图像作为非常直接的HTML嵌入到帖子内容中。

<a href="http://192.168.1.10/wp_release/wp-content/uploads/2011/01/boat.jpg">
  <img src="http://192.168.1.10/wp_release/wp-content/uploads/2011/01/boat.jpg?w=300" alt="" title="boat" class="size-medium wp-image-544" height="198" width="300">
</a>
要改变这一点并不容易。你可以改变它,但它意味着regex或使用html解析器,如Simple HTML DOM Parser (不是背书,只是一个例子)。

这个regex 方式如下所示:

function replace_image_link_cb_101524($match) {
  global $post;
  if (!empty($match[2])) {
    $match[0] = preg_replace(\'|\'.$match[1].\'|\',get_permalink($post),$match[0],1);
  }
  return $match[0];
}

function replace_image_link_101524($content) {
  if (is_archive()) {
    $pattern = \'|<a.*?href="(.*)".*>?(<img.*?/?>)(?:</a>)?|\';
    $content = preg_replace_callback($pattern,\'replace_image_link_cb_101524\',$content);
  }
  return $content;
}
add_filter(\'the_content\',\'replace_image_link_\');
那口井可能有马车。regex 在标记上最多也很棘手。

结束

相关推荐

Multi site and media uploader

在我的live博客上,我的多站点似乎有一个奇怪的问题。可能是因为我有一个网站设置为“已删除”-所以我可以编辑它,但公众看不到它?我当前的上载设置如下:wp-content/blogs.dir/10/files这给了我一个链接,例如(链接是真实的,我用example.com替换了我的网站地址):http://example.com/files/2013/01/Screenshot-from-2013-01-04-141248-300x150.png这适用于我拥有的每一个站点,我最近创建了一个新站点,通过上传