微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 打开文件,写入文件,将文件保存为zip并流式传输给用户下载

我想如果有人可以给我一些关于创建这个脚本的建议,我将添加到下面的现有插件(参见下面的代码)脚本中.

所以我现在拥有(使用下面的脚本)是一种向wordpress站点插入一组预定义的认值的方法.我想要添加的是一个辅助工具,由一个按钮或链接激活,只读取“复制设置”,它将获取站点的现有设置(sb2_options),将其写入文件,然后打包生成文件,以及原始文件一个新的zip文件,该文件基本上成为原始插件自定义副本,以便在另一个站点中使用.

因此代码需要获取包含静态代码的现有.PHP文件,打开它进行编写,然后插入与特定前缀匹配的wordpress选项表中的所有名称/值对(例如,我的所有自定义选项都带有前缀“sb2_”).完成此操作后,它会将生成文件保存为“plugin.zip”,然后将其传输给用户进行下载.

这是我现在的代码,它设置了网站的认值…

<?PHP
/**
 * Plugin Name: my plugin
 * Description: Sets up your sites defaults.
 * Version: 1.0
 */

function sb2_plugin_init() 
{

    if ( get_option( 'sb2_plugin' ) == "") 
    {

        //Begin Insert List here. Open the file and write out all the name value pairs, just like in the example.

        //Option 1",
        $sb2_option1 = "test";

        //Option 2",
        $sb2_option2 = "test";


        //Option 1",
        $sb2_option3 = "test";

        //End insert list here

        //update site defaults
        update_option('sb2_option1', sb2_option1);
        update_option('sb2_option2', sb2_option2);
        update_option('sb2_option3', sb2_option3);
        //etc


        // Create post objects
        $my_post = array();
        $my_post['post_title'] = 'Main Blog Post Title';
        $my_post['post_content'] = 'Main Blog Post Content';
        $my_post['post_type'] = 'post';

        //Todo >>> NEED TO MAKE THE POST STICKY

        // Insert the post into the database
        wp_insert_post($my_post);

        wp_cache_flush();
        update_option('sb2_plugin', "1");
    }
}

add_action( 'init','sb2_plugin_init');

解决方法:

阅读和写入文件对你来说应该不难,但这是create zip files的好方法.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐