上传文件的后处理

时间:2012-10-01 作者:User

当使用.xml 扩展已经上传到我的博客上(通过添加媒体上传程序),我想自动替换一些属性。

例如,如果我上载了包含此内容的文件:

<content creator="foo"></content>
我希望Wordpress在以下位置自动修改它:

<content creator="bar"></content>
我应该用什么钩子,怎么用?

1 个回复
最合适的回答,由SO网友:Tom J Nowell 整理而成

您可以使用wp_handle_upload 挂钩:

http://adambrown.info/p/wp_hooks/hook/wp_handle_upload?version=3.4&file=wp-admin/includes/file.php

创建一个函数并将其添加到此挂钩,使其最后运行,它将被传递一个数组。数组包含新上载文件的位置:

add_filter(\'wp_handle_upload\',\'wpse_66775_handle_upload\',1000,1);
function wpse_66775_handle_upload($args){
    $filename = $args[\'file\'];
    $type = $args[\'type\'];
    // test if it\'s an XML file and do some work on it
    if(the file is an xml file){
        super_magic_xml_file_modifier($filename);
    }
    return $args;
}

function super_magic_xml_file_modifier($filename){
    // General PHP/XML stuff that doesn\'t belong on WPSE
}
修改XML文件等是不在此网站范围内的另一项任务。

结束

相关推荐

Wp.getUser XML-RPC方法仅返回50个用户,如何获取所有用户

在我的iphone应用程序中,我试图列出所有使用wp.getUsers XML-RPC method, 但它并没有返回所有用户,在那个博客中我有大约180个成员,但它只返回了50 users 在列表中,如何获取所有用户??我正在传递以下3个参数blog_id, username 和password ,,我应该通过吗any other parameter 要获取列表中的所有用户??普拉斯提前帮我解决问题