从JobAdder检索HTTP Post请求

问题描述 投票:0回答:1

我的任务是将Jobadder上的工作链接到我的客户WP网站。

Jobadder不能使用SFTP,这是我的首选选项,因此计划b是将HTTP数据HTTP POST到网站。

他们要求一个URL,所以我做了一些研究,发现WP有内置的功能。

所以这是我在主题的functions.php文件中的代码

add_action( 'rest_api_init', function () {
 register_rest_route( 'xmlfeed/v1', '/jobs', array(
 'methods'  => 'POST',
 'callback' => 'get_jobs',
 ) );
} );

function get_jobs() {
 header('Content-type: text/xml');
 if ( $_SERVER['REQUEST_METHOD'] == 'POST' ) {
    $data = file_get_contents("php://input");
    $xmlfile = "jobs.xml";
    $FileHandle = fopen($xmlfile, "w") or die("can't open file");
    fwrite( $FileHandle, str_replace("xml=", "", urldecode($data)) );
    fclose($FileHandle);
}

所以,当我去Postman的http://xxx.staging.wpengine.com/wp-json/xmlfeed/v1/jobs,并向身体添加一些XML数据时,它会显示出来。

但是,它似乎没有触发写入XML文件的代码。

我之前从未这样做过,也没有在网上找到任何帮助,所以希望有人能指出我正确的方向。

php wordpress http-post
1个回答
0
投票

解决了 - 需要XML文件的完整路径,在这种情况下 - “wp-content / uploads / job-feed / jobs.xml”

© www.soinside.com 2019 - 2024. All rights reserved.