2015-01-01 38 views
0

我正在開發一個wordpress插件,我需要將一些自定義數據存儲到數據庫。 自定義數據,我想存儲像「類標題」,「類的數字名稱(這將是一個整數值)」。網站管理員可以在每次他需要時添加這些數據。如何在不使用自定義表格的情況下將自定義插件數據存儲到數據庫中

要從網站管理員那裏獲取這些數據,我已經創建了一個表單。但是我在將這些數據存儲到數據庫時遇到問題。我不想使用自定義表格。所以我使用選項API來存儲這些數據。我用這個函數來存儲數據

add_option('class_title', $class_title); 
    add_option('class_numeric', $class_numeric); 

但是使用這種方法,用戶只能向數據庫添加一次數據。但是我需要使用相同的選項名稱存儲多次數據(在本例中爲'class_title'和'class_numeric')。

我怎麼能夠將這些自定義數據存儲到具有相同選項名稱的數據庫超過一次使用選項API或任何其他方式沒有自定義表。如果沒有其他方法,那麼我將使用自定義表格。

回答

1

你可以添加一個帖子類型,但你也可以序列化你的選項,即。將其存儲爲陣列陣列

myoptions = array (
0 => array ('class_title' =>$class_title, 'class_numeric'=>$class_numeric) , 
1 => array ('class_title' =>$class_title, 'class_numeric'=>$class_numeric)); 

根據您想實現的目標,兩種解決方案都有其優點。從性能的角度來看,第二個會更好。

+0

感謝您的評論。我試過第二個,它的工作原理,但不是100%。通過嘗試你的解決方案,我可以添加多個值,但只有一次。我需要添加多個值和多個值。我使用此代碼, add_option('class_details',$ myoptions); 。我應該使用update_option()嗎? –

+0

我已經解決了這個問題。我使用此代碼 $ myoptions = array( array('class_title'=> $ class_title,'class_numeric'=> $ class_nummeric), );如果(!get_option('class_details')){ add_option('class_details',$ myoptions); } else { $ arrays_class_detail = get_option('class_details'); $ marge_array = array_merge($ arrays_class_detail,$ myoptions); update_option('class_details',$ marge_array); } –

1

我認爲一個簡單的方法是添加一個post type

WordPress 3.0使您能夠添加自己的自定義帖子類型並以不同的方式使用它們。

相關問題