将每个文本单词或单词用逗号分隔成现有的URL?

时间:2013-11-05 03:30:06

标签: php wordpress function hyperlink shortcode

我正在尝试将用逗号分隔的每个单词或单词自动添加到现有网址中。

我有网址可以说http://stackoverflow.com/search?q=HERE IS THAT TEXT

我有这个功能:

function movie_cast( $atts, $content = null ) {
    return '<div class="movie_cast">Cast: '.$content.'</div>';
}

add_shortcode( 'movie_cast', 'movie_cast' );

我正在使用它:[movie_cast]Actor 1, Actor 2[/movie_cast]

此处的输出只是文字:Actor 1, Actor 2

我怎样才能像这样输出:<a href="http://stackoverflow.com/search?q=Actor 1">Actor 1</a>, <a href="http://stackoverflow.com/search?q=Actor 2">Actor 2</a>

1 个答案:

答案 0 :(得分:1)

这是什么意思?此代码将被称为movie_cast("Actor 1, Actor 2")[movie_cast]Actor 1, Actor 2[/movie_cast],并会返回您要求的输出。

爆炸分裂逗号上的字符串,条件在每个链接后面放一个逗号,除了最后一个,其余的只是字符串连接。

function movie_cast( $atts ) {
    $url = "http://stackoverflow.com/search?q=";
    $str = "";
    foreach (explode(", ",$atts) as $value)
    {
        if ($str != "") $str .= ", ";
        $str .= "<a href=\"" . $url . $value . "\">" . $value . "</a>";
    }

    return $str;
}