单击更新按钮时,在WordPress中解压缩zip文件

时间:2018-09-04 05:10:45

标签: php wordpress

单击更新按钮后,我尝试解压缩zip文件,但是它不能正常工作吗?

function check_values($post_ID, $post_after, $post_before)
{


    if ( !function_exists( 'unzip_file' ) ) 
    { 
     require_once ABSPATH . '/wp-admin/includes/file.php'; 
    } 

       $file = '/wp-content/themes/xyz/XML.zip';  
       $to = '/wp-content/themes/xyz/'; 

       $result = unzip_file($file, $to);        

      }

 add_action( 'post_updated', 'check_values', 10, 3 ); //don't forget the last argument to allow all three arguments of the function

1 个答案:

答案 0 :(得分:0)

您需要文件和目的地的完整路径。根据要构建的内容,内置函数可以获取所需的路径。这是列出所有链接的链接: https://codex.wordpress.org/Determining_Plugin_and_Content_Directories

出于测试目的,您可以尝试使用ABSPATH。

$file = ABSPATH . '/wp-content/themes/xyz/XML.zip';  
$to = ABSPATH . '/wp-content/themes/xyz/'; 

请记住,WordPress允许用户更改其主题文件夹的位置,因此使用正确的功能比对路径进行硬编码更好。没有更多信息,我的最佳猜测是您应该使用get_stylesheet_directory();

如果没有打开调试,请重新创建问题: https://codex.wordpress.org/Debugging_in_WordPress

检查您的文件夹权限: https://codex.wordpress.org/Changing_File_Permissions

请尝试解压缩文件。是否显示任何错误?