我在WordPress上有一篇约5页的分页文章。我想设置它,使上一页内容中的图像自动链接到下一页。
我在中使用了以下代码functions.php
文件:
<?php
add_action(\'the_content\',function($content) {
global $page, $numpages, $multipage;
if ( $multipage ) {
$nextPage = $page + 1;
if ( $nextPage <= $numpages ) {
$link = _wp_link_page( $nextPage );
$content = preg_replace(\'/(<img(.+?)\\/>)/i\',\'<a href="\'.$link.\'">$1</a>\', $content);
}
}
// send back our content, modified or not
return $content;
});
?>
上面的代码几乎可以工作。当我替换
$link
实际URL的变量,例如。
http://google.com
, 分页帖子中的所有图像最终链接到
google.com
. 但是,当我放置变量时
$link
在那里,没有任何图像链接到任何地方。不确定我使用
_wp_link_page
变量
我完全不明白为什么当$link
变量已放置,但它可与任何其他值一起使用。
希望有人能帮忙。让我知道!
谢谢
最合适的回答,由SO网友:Sally CJ 整理而成
_wp_link_page()
返回HTML字符串,而不仅仅是链接的URL地址。因此,如果链接的URL地址是http://example.com/blah/2/
, 然后_wp_link_page()
将返回:
<a href="http://example.com/blah/2/">
。。i、 e.返回开口
a
标记该链接。
因此,请更换以下部件:
$content = preg_replace(\'/(<img(.+?)\\/>)/i\',\'<a href="\'.$link.\'">$1</a>\', $content);
。。使用此选项:
$content = preg_replace(\'/(<img(.+?)\\/>)/i\', $link . \'$1</a>\', $content);