wordpress复制插件上传文件到主题目录

时间:2015-06-30 21:18:46

标签: php wordpress

我有一行代码可以将图像从一个目录复制到另一个目录:

copy("http://localhost:8080/wordpress/wp-content/uploads/2015/06/uploaded_background.jpg","http://localhost:8080/wordpress/wp-content/themes/landing-page/img/desktop-background.jpg");

这位于wordpress主题header.php文件中,但是我收到一条错误消息:

  

警告:   拷贝(http://localhost:8080/wordpress/wp-content/themes/landing-page/img/desktop-background.jpg):   无法打开流:HTTP包装器不支持可写   连接   C:\ wamp \ www \ wordpress \ wp-content \ themes \ landing-page \ header.php on   第42行

第42行是我的复制功能行所在的位置。

我该如何解决这个问题。任何建议或链接都​​会有很大帮助。

2 个答案:

答案 0 :(得分:1)

您应该使用本地路径作为copy()的第二个参数,因为http协议不支持文件覆盖。

  

目的地路径。如果dest是URL,则如果包装器不支持覆盖现有文件,则复制操作可能会失败。   资料来源:http://php.net/manual/en/function.copy.php

答案 1 :(得分:1)

而不是使用

 copy("http://localhost:8080/wordpress/wp-content/uploads/2015/06/uploaded_background.jpg","http://localhost:8080/wordpress/wp-content/themes/landing-page/img/desktop-background.jpg");

尝试

copy`("/yourserverfolderpath/wordpress/wp-content/uploads/2015/06/uploaded_background.jpg","/yourserverfolderpath//wordpress/wp-content/themes/landing-page/img/desktop-background.jpg");`

yourserverfolderpath/可能类似于/home/user/abc/

见ftp或cpanel获取确切路径

请参阅此SO question作为指南

<强> PS: 对于本地文件,路径类似于D:\php\www\www\xml.php

正如@dlegall在评论中所指出的那样,根据文档,copy()的第一个参数可以是有效的网址,请参阅文档here