2010-02-18 114 views
1

我想如果有人可以給我一些關於創建此腳本的建議,我將添加到現有插件中(請參閱代碼下面)腳本。打開文件,寫入文件,將文件另存爲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'); 

回答

0

讀取和寫入文件應該不會爲難你,但這裏是create zip files的好方法

+0

很感謝! 你知道如何通過腳本製作貼子嗎? – 2010-02-18 07:16:29

+0

@Scott:不會對不起:) – Sarfraz 2010-02-18 07:21:28

相關問題