我的目标是创建一个自定义API端点,通过API调用可以将Wordpress中的自定义头映像更改为另一个映像(该映像将在API调用中传递,或者可能只是切换到Wordpress中的另一个媒体文件或类似文件)。
UPDATE: 我现在找到了set\\u theme\\u mod()函数,这似乎是我正在寻找的,但当我尝试实现它时,我无法让它正常工作。API调用似乎设置正确,因为当我调用它时,当前标题图像会显示出来。问题是新图像没有设置。
提前非常感谢。
function cs_set_logo() {
set_theme_mod(\'header_image\', $_POST[\'http://sprinth.xyz/britetest/wp-content/uploads/sites/2/2020/05/Universe-logo-test.png\']);
return;
}
add_action(\'rest_api_init\', function() {
register_rest_route(\'cs/v1\', \'changelogo\', [
\'methods\' => \'POST\',
\'callback\' => \'cs_set_logo\'
]);
});
最合适的回答,由SO网友:Himad 整理而成
标题图像属于WordPress所称的内容theme modification values. 要更新该类型的值,请使用函数set_theme_mod()
function cs_set_logo($request) {
set_theme_mod(\'header_image\', $request->get_param(\'new_header_image\'));
return new WP_REST_Response(null, 200);
}
add_action(\'rest_api_init\', function() {
register_rest_route(\'cs/v1\', \'changelogo\', [
\'methods\' => \'POST\',
\'callback\' => \'cs_set_logo\'
])
});