#在這個迷你係列的第二部分(也是最後一部分)「使用 WordPress 收集捐款」中,您將學習如何編寫一個 WordPress 插件,該插件允許用戶透過比特幣向您發送捐款。
該外掛程式使用自己的後端設定面板,並且高度可自訂。
那麼,讓我們開始吧!
在您網站的 wp-content/plugins
目錄中,建立一個名為 donate-bitcoins
的新資料夾。
現在,在該資料夾中建立一個名為 donate-bitcoins.php
的檔案。
最後,您需要添加外掛程式標頭訊息,這將告訴 WordPress 您的新外掛實際上存在於您的伺服器上。您可以將這些詳細資訊變更為您想要的任何內容,但它們通常應按該順序排列,並包含最少的資訊。
<?php /* Plugin Name: Bitcoin Donate Plugin URI: https://code.tutsplus.com Description: Simple Bitcoin donation plugin. Version: 1.0.0 Author: Sam Berson Author URI: http://www.samberson.com/ */
您現在會看到新外掛程式顯示在 WordPress 管理員的外掛頁面中。繼續啟動插件,儘管您還不會看到太多事情發生。
您可以在您建立的任何貼文或頁面中使用簡單的短代碼來使用捐款按鈕。本質上,短代碼是一小段文本,用方括號括起來,允許您在帖子編輯器中從插件或主題調用任何函數或操作。
在此外掛程式中,短代碼為 [donate]
,可以將其新增至您的貼文或頁面中的任何位置。
要將短代碼新增至 WordPress,您需要使用 add_shortcode
函數,並在其中定義短代碼(在本例中為「捐贈」),然後您將定義一些選項資訊。由於我們將輸出 HTML,因此我們需要開始追蹤輸出。您還需要在下一部分之前關閉 PHP 括號。
function bitcoin_donate_shortcode() { $donate_options = get_option( 'bitcoin_donate_options' ); $address = $donate_options['bitcoin_address']; $counter = $donate_options['bitcoin_counter']; ob_start(); ?>
現在,您將在外掛程式中呼叫 CoinWidget 腳本,並定義一些 JavaScript 資訊。然後,重新開啟 PHP 標記、擷取輸出並關閉該函數。
<script src="http://coinwidget.com/widget/coin.js"></script> <script> CoinWidgetCom.go({ wallet_address: '<?php echo $address; ?>', currency: 'bitcoin', counter: '<?php echo $counter; ?>', alignment: 'bl', qrcode: true, auto_show: false, lbl_button: '<?php _e( 'Donate', 'bitcoin_donate' ) ?>', lbl_address: '<?php _e( 'My Bitcoin Address:', 'bitcoin_donate' ) ?>', lbl_count: 'donations', lbl_amount: 'BTC' }); </script> <?php return ob_get_clean(); }
您現在要為設定表單設定一些訊息,這將允許您設定比特幣的錢包資訊。
您可以先定義一個名為 bitcoin_donate_wallet_address()
的新函數,並使用 get_option()
函數。
function bitcoin_donate_wallet_address() { $options = get_option( 'bitcoin_donate_options' ); echo "<input name='bitcoin_donate_options[bitcoin_address]' type='text' value='{$options['bitcoin_address']}'/>"; }
讓我們繼續新增一個名為bitcoin_donate_counter()
的新函數,它定義設定面板中的下拉選項,讓您設定在旁邊顯示哪些數位捐款按鈕:「交易計數」、「收到金額”或“隱藏”。
function bitcoin_donate_counter() { $options = get_option( 'bitcoin_donate_options' ); ?> <p> <label> <input type='radio' name='bitcoin_donate_options[bitcoin_counter]' value="count" <?php checked( $options['bitcoin_counter'], 'count', true ); ?> /> <?php _e( 'Transaction Count', 'bitcoin_donate' ) ?> </label> </p> <p> <label> <input type='radio' name='bitcoin_donate_options[bitcoin_counter]' value= "amount" <?php checked( $options['bitcoin_counter'], 'amount', true ); ?> /> <?php _e( 'Amount Received', 'bitcoin_donate' ) ?> </label> </p> <p> <label> <input type='radio' name='bitcoin_donate_options[bitcoin_counter]' value= "hide" <?php checked( $options['bitcoin_counter'], 'hide', true ); ?> /> <?php _e( 'Hidden', 'bitcoin_donate' ) ?> </label> </p> <?php }
您現在應該新增一個空回調,這是確保外掛程式正常運作所必需的。它只是定義一個新的 WordPress 函數,打開它,然後再次關閉它。
function bitcoin_donate_callback() { // Optional Callback. }
現在您已經產生了短代碼和表單字段,您需要將其連接回 WordPress 管理員,以便插件正常運行。
您應該先透過新增以下程式碼向後端註冊外掛程式的設定和欄位。簡而言之,這段程式碼告訴 WordPress 在管理員身上顯示什麼。
function bitcoin_donate_register_settings_and_fields() { register_setting( 'bitcoin_donate_options', 'bitcoin_donate_options' ); add_settings_section( 'bitcoin_donate_settings_section', __( 'Main Settings', 'bitcoin_donate' ), 'bitcoin_donate_callback', __FILE__ ); add_settings_field( 'bitcoin_address', __( 'Bitcoin Address:', 'bitcoin_donate' ), 'bitcoin_donate_wallet_address', __FILE__, 'bitcoin_donate_settings_section' ); add_settings_field( 'bitcoin_counter', __( 'What should the counter show?', 'bitcoin_donate' ), 'bitcoin_donate_counter', __FILE__, 'bitcoin_donate_settings_section' ); } add_action( 'admin_init', 'bitcoin_donate_register_settings_and_fields' );
現在,您將告訴 WordPress 在後端顯示「設定」表單時要使用什麼 HTML。
function bitcoin_donate_options_markup() { ?> <div class="wrap"> <h2><?php _e( 'Bitcoin Donate Options', 'bitcoin_donate' ) ?></h2> <form method="post" action="options.php" enctype="multipart/form-data"> <?php settings_fields( 'bitcoin_donate_options' ); do_settings_sections( __FILE__ ); ?> <p class="submit"> <input type="submit" class="button-primary" name="submit" value="<?php _e( 'Save Changes', 'bitcoin_donate' ) ?>"> </p> </form> </div> <?php }
最後,您將告訴 WordPress「設定」頁面的名稱、哪個使用者角色可以存取該頁面以及要使用哪種 HTML(如上定義)。
function bitcoin_donate_initialize_options() { add_options_page( __( 'Bitcoin Donate Options', 'bitcoin_donate' ), __( 'Bitcoin Donate Options', 'bitcoin_donate' ), 'administrator', __FILE__, 'bitcoin_donate_options_markup' ); } add_action( 'admin_menu', 'bitcoin_donate_initialize_options' );
透過將 [donate]
短代碼新增至您的貼文或頁面,您的外掛程式現在應該可以正常運作了!這是該插件的完整原始碼:
登入後複製
您現在已經學習如何開發另一個全新的插件,該插件允許用戶透過比特幣捐贈。現在您可以初始化外掛程式、使用短代碼並為您的 WordPress 管理員添加設定頁面。
如果您有任何疑問,請隨時在下面留言,我一定會幫助您!
以上是使用WordPress收集捐款:比特幣的詳細內容。更多資訊請關注PHP中文網其他相關文章!