我正在开发一个插件,它使用一个模板和一些图像来构建一个新闻稿。
已使用媒体库上载图像(uploads/current_year/current_month/
) 我想通过使用图像名称获取图像URL。
有没有办法在不迭代所有图像的情况下实现这一点?
我曾尝试将图像存储在插件文件夹中,但该网站使用https,如果没有身份验证,则无法访问该位置。
有没有关于存储图像的不同位置的建议?
我正在开发一个插件,它使用一个模板和一些图像来构建一个新闻稿。
已使用媒体库上载图像(uploads/current_year/current_month/
) 我想通过使用图像名称获取图像URL。
有没有办法在不迭代所有图像的情况下实现这一点?
我曾尝试将图像存储在插件文件夹中,但该网站使用https,如果没有身份验证,则无法访问该位置。
有没有关于存储图像的不同位置的建议?
wp_upload_dir()
是完美的。这是您唯一可以期望获得写入权限的地方。
存储附件ID,而不是路径。那你呢get the image 使用:
wp_get_attachment_url( $attach_id )
有时,用户可能已删除每个媒体库的图像。要避免丢失文件的问题,请检查wp_get_attachment_url()
第一摘自我的一个插件:/**
* Returns image markup.
* Empty string if there is no image.
*
* @param int $attach_id
* @return string
*/
protected function get_image_tag( $attach_id )
{
$img_url = (string) wp_get_attachment_url( $attach_id );
if ( \'\' == $img_url )
{
return \'\';
}
$img = "<img src=\'$img_url\' alt=\'\' width=\'$this->width\' height=\'$this->height\'>";
return $img;
}
我认为应该对wp\\u posts表运行自定义mySQL查询,类似于-
SELECT ID FROM `wp_posts` where guid like \'%filename.jpg\';
(当然,可以使用$wpdb对象来查询数据库)。然后,您将拥有该附件文件的postid,您可以使用wp_get_attachment_url() 来自WP API。今天早上我wordpress博客上的大部分图片(http://records.photodharma.net)已停止加载。这甚至发生在嵌入式系统上。此处嵌入的所有图像:http://records.photodharma.net/photos/chiang-mai-photo-albums-of-modern-structures 当我在Firebug中查看它们时,它们会出现,但不会出现在页面上。有几次我看到图像加载后不久就消失了,所以它们似乎试图加载,但被阻止了。我做了一些搜索,并尝试了各种方法,如更新