0

我需要帮助。我需要从重新调整大小的 url 的 url 中获取上传到 wprdpress 中的图像的主 url。如果可能,请附上附件的链接。请高手帮忙。先谢谢了。

例子-

调整大小的网址 -

1. http://www.example.com/wp-content/uploads/2013/05/image-1-90x120.jpg
2. http://www.example.com/wp-content/uploads/sites/9/2013/01/image-1-1040x320.png
3. http://www.example.com/wp-content/uploads/custom_upload_folder/image-1-430x210.jpg

我在找什么——

1. http://www.example.com/wp-content/uploads/2013/05/image-1.jpg or http://www.example.com/?attactment_id=12
2. http://www.example.com/wp-content/uploads/sites/9/2013/01/image-1.png or http://www.example.com/?attactment_id=12
3. http://www.example.com/wp-content/uploads/custom_upload_folder/image-1.jpg or ttp://www.example.com/?attactment_id=12

我不能使用正则表达式,因为我是新手。再次我不能使用substr,因为调整大小的图像大小不同。如果图像是通过 wordpress 媒体上传器上传的,attactment_id 是附件 id。

非常感谢。

4

2 回答 2

0

使用此代码获取主要上传图片网址:

<?php
  while ( have_posts() ) : the_post(); 
    $image_id = get_post_thumbnail_id(); 
    $image_url = wp_get_attachment_image_src($image_id,'full');   
?>
<?php if ( has_post_thumbnail() ) { ?>

<a href="#"> <img class="img_slide" src="<?php echo $image_url[0]; ?>" alt="<?php the_title(); ?>" /> </a>
<?php 
    endwhile; 
    wp_reset_query();
?>
于 2013-05-31T06:46:32.283 回答
0

您可能无法使用 substr 执行此操作,但其他一些字符串操作可能会有所帮助。这会起作用,但我不建议使用它,因为它效率不高(太多的 var 分配),应该只是给你一个想法。但是,如果您不打算使用一些繁重的生产代码来解析这些 url,您仍然可以使用它。

$url = 'http://www.example.com/wp-content/uploads/2013/05/image-1-90x120.jpg';
list($first, $second, $third, $forth) = explode("-", $url);
echo $first.'-'.$second.'-'.$third.'.jpg';

有很多关于如何使用字符串的示例,尤其是使用 explode 和 implode 函数,以使其更高效、更优雅。另一方面,我不相信 Wordpress 无论如何都可以从您提供的网址中检索原始网址。

于 2013-05-30T23:27:07.070 回答