我想使用wp_remote_post将信息从一台服务器发送到另一台网站。

所以基本上,我已经在代码中添加了这一行-

$sidebarHTTP = site_url(); // Retrieves HTTP Url of sidebar
$sidebarActivation = $sidebar.' , '.$sidebarHTTP; // Activate Sidebar
$args = array(
  'method' => 'post',
  'body' => array('sidebar' => $sidebar, 'sidebarHTTP' => $sidebarHTTP),
  'user-agent' => 'My site'
);
wp_remote_post( 'http://mysite.com', $args ); // Loads all default data

因此,基本上,它不发送任何内容。是的,我输入了正确的域。也许它确实发送了一些东西,但是我不知道如何从该站点检索$ args ['body']。另外,我尝试添加$ response = wp_remote_post ....,然后发送邮件$ response ['body'],但它只是将主页的源代码发送到电子邮件中。

希望能有所帮助。

最佳答案

您需要在php.ini文件中启用cURL。
wp_remote_post()使用一个称为WP_Http的类,该类又可以使用三个传输类之一(请参见文件class-http.php函数_get_first_available_transport)。

POST方法适用于WP_Http_Curl类,但不适用于WP_Http_Streams类(cURL后备)。

替代方法是使用wp_remote_get()

09-12 07:46