【问题标题】:Adding auto hyperlink to images为图像添加自动超链接
【发布时间】:2012-05-07 00:44:27
【问题描述】:

我为图片创建了一个 wordpress 博客。在发布所有帖子时,我没有使用 wordpress 编辑器上传图片。相反,我使用 FillaZilla 上传图像。然后,在 wordpress 编辑器中,我在所有帖子中手动只写了图像标签(如下)并发布。所有帖子都没有文字,只有图片。像这样,

<img alt="" title="" src=""></img>

现在我想问你的是,我希望所有帖子中的图像都获得与图像 src 相同的自动超链接地址。我的 wordpress 博客中有 200 多篇博文。我不想一一编辑它们。这是wordpress内容区的编码,

<div class="post-entry">
                                            <p><img src='http://www.mywebsite.com/wp-content/uploads/2012/04/sun.jpg' title="sun" alt="sun" /></p>

</div>

有人可以帮我解决这个问题吗?如何向图像添加超链接?是否有任何代码可以放在我的 wordpress 主题页面的 post-entry div 中?

@chandu-vkm 解释了(在 cmets 中)我在寻找什么。现在我还有一个问题。当我在 img 之前添加一个 span 标签时,提到的代码 @chandu-vkm 不允许我在 img 标签之前添加 span 标签。相反,它将 place 标记放在 p 标记之外,如下面的代码所示。

<div class="post_div">
<span class="entry"></span>
<p>
<img src='http://www.mywebsite.com/wp-content/uploads/2012/04/sun.jpg' title="Cute Teddy Bear" alt="Cute Teddy Bear" />
</p>
</div>

但我希望将 span 放在 p 之后,像这样。

 <div class="post_div">
        <p>
         <span class="entry"></span>
        <img src='http://www.mywebsite.com/wp-content/uploads/2012/04/sun.jpg' title="Cute Teddy Bear" alt="Cute Teddy Bear" />
        </p>
    </div>

请有人帮帮我。

【问题讨论】:

    标签: image wordpress hyperlink


    【解决方案1】:

    如果你确定你所有的帖子内容只包含&lt;img&gt;标签,你可以将这个sn-p代码添加到你的functions.php文件中:

    function hyperlink_all_my_content( $content ) {
        $link = "http://www.somelink.com";
        return "<a href='$link'>$content</a>";
    }
    add_filter( 'the_content', 'hyperlink_all_my_content' );
    

    请注意,这将链接您的所有内容,甚至在您的 wordpress 页面上。

    编辑:

    function hyperlink_all_my_content( $content ) {
    
        $matches = array();
        $nummatches = preg_match("/src=['|\"](.*)['|\"]/", $content, $matches);
        return "<a href='" . $matches[1] . "'>$content</a>";
    }
    add_filter( 'the_content', 'hyperlink_all_my_content' );
    

    【讨论】:

    • OP 想要数千个不同的 $link,每个都等于各种图像的src。不过使用add_filter() 是个好主意
    • 我想使用图像 src 作为超链接。无论如何感谢您的帮助。 Chandu 发布的上述方法就像一个魅力:)
    • 我再试一次!呵呵。
    【解决方案2】:

    你可以用一些 jquery 来做到这一点

    <div class="post_div">
        <img src='http://www.mywebsite.com/wp-content/uploads/2012/04/sun.jpg' title="sun" alt="sun" />
    </div>
    

    喜欢这个

    $('.post_div img').each(function(){
    $(this).wrap(function() {
      return '<a href="' + $(this).attr('src') + '" />';
    })   
    });
    

    这里是示例http://jsfiddle.net/a4PYd/

    【讨论】:

    • @chandu-ckm 问题已被编辑。我再次需要你的帮助:)
    • 是单独添加的文字吗?它有任何变形标签吗?
    • 对不起@Chandu-vkm 我再次编辑了我的问题。现在这正是我想要做的。再看看编辑过的问题。
    猜你喜欢
    • 2015-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-20
    • 2017-08-06
    • 1970-01-01
    相关资源
    最近更新 更多