我想使用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()