我正在尝试使用TimThumb在我的博客上显示图像
<?php the_title(); ?>'><img src="<?php bloginfo('template_directory'); ?>/timthumb.php?src=<?php echo catch_that_image() ?>&w=290&h=160
以上是我使用的代码
问题是图片无法显示,因为网址就是这样的。
http://myurl.com/wp-content/themes/ThemeName/timthumb.php?src=&w=290&h=160
其中假设是这样的例如
http://myurl.com/wp-content/themes/ThemeName/timthumb.php?src=http://myurl.com/wp-content/uploads/i0n1c.png&w=290&h=160
正如您在上面看到的那样,src=
缺少部分而且缺少的部分是这段代码<?php echo catch_that_image() ?>
我已经单独测试了这段代码并且它工作得很好但是当我将它们组合在一起时它就可以了没有正确显示它?
我是否需要添加一些东西以使其有效?
更新:
这是我用来抓取图像的功能
function catch_that_image() {
global $post, $posts;
$first_img = '';
ob_start();
ob_end_clean();
$output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
$first_img = $matches [1] [0];
if(empty($first_img)){ //Defines a default image
$first_img = "/images/default.jpg";
}
return $first_img;
}
以下是调用图像的URL路径的代码。
<?php echo catch_that_image() ?>
答案 0 :(得分:3)
我已经单独测试了这个代码,它运行得很好
该代码应输出变量,因此您在另一个正确设置值的上下文中执行此操作。
更新
您检查了生成的源代码吗?你在这里有反对意见:
?src='<?php echo $image[0]; ?>'&w=
_ _