WordPress建立選項頁面
阿新 • • 發佈:2019-02-11
目錄[隱藏] |
前言
在WordPress中建立自定義選項面板非常容易。
首先,請檢視新增管理選單以瞭解如何建立選單條目和新頁面。
只要按照步驟進行操作,WordPress就會為你處理好選項建立,升級,儲存和重定向等操作。它還會審查許可權並進行其它幕後操作。
開啟頁面
如果要和現有WordPress選項頁面的外觀相匹配,請開啟:
< div class="wrap"> < h2>Your Plugin Name</h2>
表單標籤
然後,使用以下程式碼建立一個 HTML格式:
<form method="post" action="options.php">
隨機數
在以上表單標籤開頭部分,插入以下PHP程式碼:
<?php wp_nonce_field('update-options'); ?>
這將插入兩個隱藏的域,它會自動幫助使用者更新選項,並讓使用者轉向正確的管理頁面(因為表單行為位於另一個頁面)。
表單表格
許多選項頁都使用帶有"form-table"類的表格來顯示選項。為了和這些頁面的外觀相匹配,請建立新表格:
< table class="form-table">
建立和你新建選項(儲存在選項表格中)名稱相同的域,如:
< tr valign="top"> < th scope="row">New Option Name</th> < td><input type="text" name="new_option_name" value="<?php echo get_option('new_option_name'); ?>" /></td> </tr>
仔細觀察<input>內的元素 :
<input type="text" name="new_option_name" value="<?php echo get_option('new_option_name'); ?>" />
使用get_option()函式作為域的值,儲存選項時系統會自動更新函式。
所有選項新增完成後,關閉表格:
</table>
行為域
接下來,建立一個包括update值的名為action的hidden(隱藏)域,
<input type="hidden" name="action" value="update" />
page_options 域
最後,建立名為page_options的隱藏域,並用逗號隔開頁面中要儲存的所有選項。
<input type="hidden" name="page_options" value="new_option_name,some_other_option,option_etc" />
關閉標籤
關閉其它選項後的表單標籤,如果願意,也可再包含一個"Update Options"按鈕,雖然WordPress預設檔案已包括一個。
< p class="submit"> <input type="submit" name="Submit" value="<?php _e('Save Changes') ?>" /> </p> </form> </div>
另外,the _e()函式會處理文字的翻譯。更多資訊請檢視Localizing WordPress
全文
< div class="wrap"> < h2>Your Plugin Name</h2> <form method="post" action="options.php"> <?php wp_nonce_field('update-options'); ?> < table class="form-table"> < tr valign="top"> < th scope="row">New Option Name</th> < td><input type="text" name="new_option_name" value="<?php echo get_option('new_option_name'); ?>" /></td> </tr> < tr valign="top"> < th scope="row">Some Other Option</th> < td><input type="text" name="some_other_option" value="<?php echo get_option('some_other_option'); ?>" /></td> </tr> < tr valign="top"> < th scope="row">Options, Etc.</th> < td><input type="text" name="option_etc" value="<?php echo get_option('option_etc'); ?>" /></td> </tr> </table> <input type="hidden" name="action" value="update" /> <input type="hidden" name="page_options" value="new_option_name,some_other_option,option_etc" /> < p class="submit"> <input type="submit" name="Submit" value="<?php _e('Save Changes') ?>" /> </p> </form> </div>