Forked from BFTrick/woocommerce-settings-tab-demo.php
Created
January 20, 2018 00:48
Revisions
-
BFTrick revised this gist
Jul 12, 2014 . 1 changed file with 0 additions and 2 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -42,9 +42,7 @@ public static function init() { * @return array $settings_tabs Array of WooCommerce setting tabs & their labels, including the Subscription tab. */ public static function add_settings_tab( $settings_tabs ) { $settings_tabs['settings_tab_demo'] = __( 'Settings Demo Tab', 'woocommerce-settings-tab-demo' ); return $settings_tabs; } -
BFTrick revised this gist
Jul 12, 2014 . 1 changed file with 13 additions and 17 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -29,13 +29,23 @@ class WC_Settings_Tab_Demo { * */ public static function init() { add_filter( 'woocommerce_settings_tabs_array', __CLASS__ . '::add_settings_tab', 50 ); add_action( 'woocommerce_settings_tabs_settings_tab_demo', __CLASS__ . '::settings_tab' ); add_action( 'woocommerce_update_options_settings_tab_demo', __CLASS__ . '::update_settings' ); } /** * Add a new settings tab to the WooCommerce settings tabs array. * * @param array $settings_tabs Array of WooCommerce setting tabs & their labels, excluding the Subscription tab. * @return array $settings_tabs Array of WooCommerce setting tabs & their labels, including the Subscription tab. */ public static function add_settings_tab( $settings_tabs ) { $settings_tabs['settings_tab_demo'] = __( 'Settings Demo Tab', 'woocommerce-settings-tab-demo' ); return $settings_tabs; } @@ -61,20 +71,6 @@ public static function update_settings() { } /** * Get all the settings for this plugin for @see woocommerce_admin_fields() function. * -
BFTrick revised this gist
Jul 11, 2014 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,7 +1,7 @@ <?php /** * Plugin Name: WooCommerce Settings Tab Demo * Plugin URI: https://gist.github.com/BFTrick/b5e3afa6f4f83ba2e54a * Description: A plugin demonstrating how to add a WooCommerce settings tab. * Author: Patrick Rauland * Author URI: http://speakinginbytes.com/ -
BFTrick created this gist
Jul 11, 2014 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,115 @@ <?php /** * Plugin Name: WooCommerce Settings Tab Demo * Plugin URI: https://gist.github.com/BFTrick/__________ * Description: A plugin demonstrating how to add a WooCommerce settings tab. * Author: Patrick Rauland * Author URI: http://speakinginbytes.com/ * Version: 1.0 * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. * */ class WC_Settings_Tab_Demo { /** * Bootstraps the class and hooks required actions & filters. * */ public static function init() { add_filter( 'woocommerce_settings_tabs_array', __CLASS__ . '::add_settings_tab', 50 ); add_action( 'woocommerce_settings_tabs_settings_tab_demo', __CLASS__ . '::settings_tab' ); add_action( 'woocommerce_update_options_settings_tab_demo', __CLASS__ . '::update_settings' ); } /** * Uses the WooCommerce admin fields API to output settings via the @see woocommerce_admin_fields() function. * * @uses woocommerce_admin_fields() * @uses self::get_settings() */ public static function settings_tab() { woocommerce_admin_fields( self::get_settings() ); } /** * Uses the WooCommerce options API to save settings via the @see woocommerce_update_options() function. * * @uses woocommerce_update_options() * @uses self::get_settings() */ public static function update_settings() { woocommerce_update_options( self::get_settings() ); } /** * Add a new settings tab to the WooCommerce settings tabs array. * * @param array $settings_tabs Array of WooCommerce setting tabs & their labels, excluding the Subscription tab. * @return array $settings_tabs Array of WooCommerce setting tabs & their labels, including the Subscription tab. */ public static function add_settings_tab( $settings_tabs ) { $settings_tabs['settings_tab_demo'] = __( 'Settings Demo Tab', 'woocommerce-settings-tab-demo' ); return $settings_tabs; } /** * Get all the settings for this plugin for @see woocommerce_admin_fields() function. * * @return array Array of settings for @see woocommerce_admin_fields() function. */ public static function get_settings() { $settings = array( 'section_title' => array( 'name' => __( 'Section Title', 'woocommerce-settings-tab-demo' ), 'type' => 'title', 'desc' => '', 'id' => 'wc_settings_tab_demo_section_title' ), 'title' => array( 'name' => __( 'Title', 'woocommerce-settings-tab-demo' ), 'type' => 'text', 'desc' => __( 'This is some helper text', 'woocommerce-settings-tab-demo' ), 'id' => 'wc_settings_tab_demo_title' ), 'description' => array( 'name' => __( 'Description', 'woocommerce-settings-tab-demo' ), 'type' => 'textarea', 'desc' => __( 'This is a paragraph describing the setting. Lorem ipsum yadda yadda yadda. Lorem ipsum yadda yadda yadda. Lorem ipsum yadda yadda yadda. Lorem ipsum yadda yadda yadda.', 'woocommerce-settings-tab-demo' ), 'id' => 'wc_settings_tab_demo_description' ), 'section_end' => array( 'type' => 'sectionend', 'id' => 'wc_settings_tab_demo_section_end' ) ); return apply_filters( 'wc_settings_tab_demo_settings', $settings ); } } WC_Settings_Tab_Demo::init();