如何将文件保存到wordpress
我在本地主机上运行wordpress,我的代码从URL检索照片,并使用文件内容将照片添加到当前目录,但我需要它将照片添加到/wordpress/wp content/uploads,wordpress在其中保存手动上载的文件如何将文件保存到wordpress,wordpress,plugins,Wordpress,Plugins,我在本地主机上运行wordpress,我的代码从URL检索照片,并使用文件内容将照片添加到当前目录,但我需要它将照片添加到/wordpress/wp content/uploads,wordpress在其中保存手动上载的文件 $Address = "www.xxx.com/" . $file; $ch = curl_init(); curl_setopt($ch, CURLOPT_POST, 0); curl_setopt($ch, CURLOPT_URL, $file); curl_setop
$Address = "www.xxx.com/" . $file;
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, 0);
curl_setopt($ch, CURLOPT_URL, $file);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$url = curl_exec($ch);
curl_close($ch);
$location = "/wordpress/wp-content/uploads/2013/a.jpg";
file_put_contents($location, file_get_contents($url));
if(! function_exists('wp_upload_dir'))
{
define('WP_USE_THEMES',false);
require 'wordpress/wp-load.php';
}
$upload_dir = wp_upload_dir();
echo $upload_dir['path'];
echo $upload_dir['url'];
echo $upload_dir['subdir'];
我想我理解这个问题 此语句或任何等效语句应位于加载WP的文件顶部:
require_once("path/to/wp-load.php");
路径/to/是相对的,取决于文件的位置。例如,如果您的文件位于wordpress/here
的文件夹中,则路径应该类似于“./wp load.php”
,但这是您必须弄清楚的
使用如下代码,尝试显示错误,以便了解发生了什么:
ini_set( 'display_errors', TRUE );
error_reporting( E_ALL );
然后,添加以下代码:
$UploadDir = wp_upload_dir();
$UploadURL = $UploadDir['baseurl'];
$location = $UploadURL . "/2013/a.jpg";
删除:
$location = "/wordpress/wp-content/uploads/2013/a.jpg"; and all code from:
if(! function_exists('wp_upload_dir')) {
一直到最后一行
在适当的位置插入echo
语句以查看结果
有什么问题?您正在代码中获取WP upload目录。它不会显示任何内容如果您指的是最后一个
echo
不显示任何内容,很可能是因为WP load.php
脚本的路径在require'wordpress/WP load.php'中出错代码>和WP未加载。?您的问题所在的文件在WP目录结构中的什么位置?我确实遇到了以下错误致命错误:在第36行的/Applications/MAMP/htdocs/wordpress/WP content/plugins/Photos/classes/Photos.php中调用未定义的函数WP_upload_dir()。这意味着您启用了错误显示,并且wp load.php
的路径仍然错误。从错误中的路径来看,您的脚本比WP根目录低6级,脚本WP load.php
位于该目录下。你需要这样的东西,。/../../../../../../../wp load.php
删除。/
,直到没有错误。我给了它一个绝对地址,现在它显示以下错误,无法打开流:中没有这样的文件或目录,错误在第二行$location=“Applications/MAMP/htdocs/wordpress/wp content/uploads”;文件内容($location,文件内容($url));检查以更好地了解require
和include
路径。我没有看到您上次的评论更新。您的路径正常运行时,WP似乎已经加载。您现在的问题是file\u put
函数,更确切地说是URL参数。
// the curl thing from question...results in `$url`
$upload = wp_upload_bits('a.jpg', null, file_get_contents($url));
echo $upload['file'], $upload['url'], $upload['error'];