Wordpress在帖子中替换字符串

时间:2013-05-31 13:47:11

标签: php wordpress post subset

您好我有RSS从另一个页面进入我的wordpress网站。它自动从rss feed创建帖子。但是在RSS中,feed是指向图像的链接,我需要将其更改为另一个链接。 我制作这个剧本

<?php 
$link="http://www.example.com/thumbs/329/t2_f2ba40a1092b2039a1cf71d2a2b76e91.jpg";
$start = strpos($link, 'thumbs');
$end = strpos($link, 't2_'  )+3;
$length = $end - $start;
$vypis = substr($link, $start, $length);
$new = str_replace($vypis, "i/", $link);
echo $new;

?>

它工作正常,但我不知道我应该把这个脚本放在wordpress模板中。如何自动从帖子链接到$link有任何想法吗?

这是rss Feed的插件http://wordpress.org/plugins/feedwordpress/。它自动创建帖子,它可以在任何模板中工作。循环代码是<?php the_content('Celý článek &raquo;'); ?>

帖子的例子

<a href="http://www.example.com/spray-on-clothes-34751.html"><img src="http://www.example.com/thumbs/329/t2_f2ba40a1092b2039a1cf71d2a2b76e91.jpg"/><br />Click to see the full pic.</a><br/><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/example?a=JFKec5JGE9M:rVB15gLhJKs:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/example?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/example?a=JFKec5JGE9M:rVB15gLhJKs:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/example?i=JFKec5JGE9M:rVB15gLhJKs:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/example?a=JFKec5JGE9M:rVB15gLhJKs:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/example?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/example?a=JFKec5JGE9M:rVB15gLhJKs:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/example?i=JFKec5JGE9M:rVB15gLhJKs:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/example/~4/JFKec5JGE9M" height="1" width="1"/>   

1 个答案:

答案 0 :(得分:0)

是的,那么您应该可以使用以下代码替换the_content('Celý článek &raquo;')。它将拉取页面内容(不输出到浏览器),使用您的代码替换URL,然后输出到浏览器。诀窍在于每次识别URL。我需要查看完整的帖子源,才能使用正则表达式或其他方法来识别要替换的URL。

$content = get_the_content(); // get post content
$content = apply_filters('the_content', $content); // apply formatting
$content = str_replace(']]>', ']]&gt;', $content); // apply formatting

// This specifically will need modification, to identify the URL... 
// I would need to see example post content to find out how

$link="http://www.example.com/thumbs/329/t2_f2ba40a1092b2039a1cf71d2a2b76e91.jpg";

$start = strpos($link, 'thumbs');
$end = strpos($link, 't2_'  )+3;
$length = $end - $start;
$vypis = substr($link, $start, $length);
$new = str_replace($vypis, "i/", $link);

$content = str_replace( $link, $new, $content ); // Replace URL in content
echo $content; // Output to browser