Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 打开文件,写入文件,将文件另存为zip文件,并流式传输给用户以供下载_Php_Wordpress - Fatal编程技术网

Php 打开文件,写入文件,将文件另存为zip文件,并流式传输给用户以供下载

Php 打开文件,写入文件,将文件另存为zip文件,并流式传输给用户以供下载,php,wordpress,Php,Wordpress,我希望有人能给我一些关于创建这个脚本的建议,我将把它添加到下面现有的插件(见下面的代码)脚本中 因此,我现在(使用下面的脚本)可以在wordpress站点中插入一组预定义的默认值。我想添加的是一个助手实用程序,由一个按钮或链接激活,该按钮或链接只读取“复制设置”,它将获取站点的现有设置(sb2_选项),将其写入文件,然后打包生成的文件,与原始文件一起转换为新的zip文件,该文件实质上成为原始插件的自定义副本,供其他站点使用 因此,代码需要获取一个包含静态代码的现有.php文件,打开该文件进行编写

我希望有人能给我一些关于创建这个脚本的建议,我将把它添加到下面现有的插件(见下面的代码)脚本中

因此,我现在(使用下面的脚本)可以在wordpress站点中插入一组预定义的默认值。我想添加的是一个助手实用程序,由一个按钮或链接激活,该按钮或链接只读取“复制设置”,它将获取站点的现有设置(sb2_选项),将其写入文件,然后打包生成的文件,与原始文件一起转换为新的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');

读取和写入文件对您来说应该不难,但这里有一个很好的方法

很酷,谢谢!你知道如何通过脚本使帖子变得有粘性吗?