我在后端插件中使用WordPress媒体库。如何动态更改其上载路径?它可以在排队过程中完成,还是在JavaScript中创建时完成?
我正在使用wp_enqueue_media()
在里面admin_enqueue_scripts
操作,然后使用wp.media
.
上载时,我已使用更改了目录plupload_default_params
过滤器,但我不知道如何连接到query-attachments
将文件查询到库中的操作。
Update: 经过几个小时的修补,我放弃了,我采用了不同的解决方案。我在插件的编辑页面上添加了一个新设置,并以其他方式重置它。这样,我就可以在ajax调用中访问该选项。
function change_upload_dir( $args ) {
$user_id = get_current_user_id();
$form = false;
if( defined(\'DOING_AJAX\') && DOING_AJAX ) {
$form = get_option( \'test_edit_\' . $user_id );
}
if($form || isset($_GET[\'type\']) || isset($_POST[\'subfolder\'])) {
// change upload path
在插件构造中:
if( !(defined(\'DOING_AJAX\') && DOING_AJAX)
&& false === strpos($_SERVER[\'REQUEST_URI\'], \'wp-content\') ) {
$edit = get_option( \'test_edit_\' . get_current_user_id() );
if ( $edit && $edit != \'\' ) {
update_option( \'test_edit_\' . get_current_user_id(), \'\' );
}
}
除非用户打开一个新选项卡并重置设置,否则这一切正常。现在还可以,但我真的很想知道是否有更简单的方法。