WooCommerce 开发:添加自定设置选项卡

2023-05-2112:35:12后端程序开发Comments765 views字数 1359阅读模式

开发WooCommerce插件时,我们需要添加一些自定义设置到WordPress后台,WooCommerce的设置页面是一个好地方,我们可以添加一个自定设置选项卡到WooCommerce的设置页面。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/40981.html

WooCommerce自定义设置选项卡示例代码

下面的示例代码中,我们添加了一个名为Riskified的选项卡到WooCommerce的设置页面,这个选项卡中有一个riskified_api_key的字段。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/40981.html

class Settings
{

    public function __construct()
    {
        add_filter('woocommerce_settings_tabs_array', [$this, 'add_settings_tab'], 50);

        add_action('woocommerce_settings_tabs_riskified', [$this, 'add_settings']);

        add_action('woocommerce_update_options_riskified', [$this, 'update_settings']);

    }


    function add_settings_tab($settings_tabs)
    {
        $settings_tabs[ 'riskified' ] = __('Riskified', 'woocommerce');

        return $settings_tabs;
    }


    function add_settings(): void
    {
        woocommerce_admin_fields($this->get_settings());
    }


    public function update_settings(): void
    {
        woocommerce_update_options($this->get_settings());
    }


    public function get_settings(): array
    {
        return [
            'section_title' => [
                'name' => __('Section Title', 'woocommerce-settings-tab-demo'),
                'type' => 'title',
                'desc' => '',
                'id'   => 'wc_settings_tab_riskified_section_title',
            ],
            [
                'name' => __('API Key', 'woocommerce'),
                'desc' => __('Riskified API Key', 'woocommerce'),
                'id'   => 'riskified_api_key',
                'type' => 'text',
                'css'  => 'min-width:350px;',
            ],
            'section_end'   => [
                'type' => 'sectionend',
                'id'   => 'wc_settings_tab_riskified_section_end',
            ],
        ];
    }

}

获取选项的值

直接使用WordPress的get_option函数来获取这些设置的值即可。如:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/40981.html

$api_key = get_option('riskified_api_key');

总结

虽然我们也可以使用一些设置框架来添加自定义设置,但是使用本文中介绍的方式不必再引入一个设置框架,代码和界面会更加简洁,与WooCommerce的集成也更加良好。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/40981.html

  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/bc/40981.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定