monkeyscode/customizer

在WordPress中创建主题选项

该软件包的官方仓库似乎已消失,因此该软件包已被冻结。

1.2.0 2018-01-09 15:18 UTC

This package is not auto-updated.

Last update: 2019-06-11 08:46:04 UTC


README

创建主题选项

安装

composer require monkeyscode/customizer

使用

必须在 customize_register 动作下运行。

  • 通过实例传递的数据是数组。该数组的每个元素必须具有 data:infodata:fields。数据中的每个元素必须具有所需的 info:name。其他部分选项是可选的。每个 data:field 必须有 field:namefield:type。其他字段选项是可选的。

例如

$data = [
    [
        'info' => [
            'name' => 'duy_customize_section',
            'label' => 'Duy Section',
            'description' => '',
            'priority' => 0,
        ],
        'fields' => [
            [
                'name' => 'my_text',
                'type' => 'text',
                'default' => 'hole',
                'label' => 'Text Field'
            ]
        ]
    ],
    [
        'info' => [
            'name' => 'duy_customize_section_2',
            'label' => 'Duy Section 2',
            'description' => '',
            'priority' => 0,
        ],
        'fields' => [
            [
                'name' => 'my_text_2',
                'type' => 'text',
                'default' => 'hole 2',
                'label' => 'Text Field 2'
            ]
        ]
    ],
];

$customizer = new Customizer($data);
$customizer->create();

字段列表

  • 文本字段
[
    'name' => 'my_field',
    'type' => 'text',
    'default' => 'hole',
    'label' => 'Text Field'
]
  • 多行文本字段
[
    'name' => 'my_field',
    'type' => 'textarea',
    'default' => 'hole',
    'label' => 'Textarea Field'
]
  • 单选字段
[
    'name' => 'my_field',
    'type' => 'radio',
    'default' => 'hole',
    'label' => 'Radio Field',
    'choices' => [
        1 => 1,
        2 => 2
    ]
]
  • 复选框字段
[
    'name' => 'my_field',
    'type' => 'checkbox',
    'default' => 'hole',
    'label' => 'Checkbox Field',
]
  • 选择字段
[
    'name' => 'my_field',
    'type' => 'select',
    'default' => 'hole',
    'label' => 'Select Field',
    'choices' => [
        1 => 1,
        2 => 2
    ]
]
  • 上传字段
[
    'name' => 'my_field',
    'type' => 'upload',
    'default' => 'hole',
    'label' => 'Upload Field',
]
  • 颜色字段
[
    'name' => 'my_field',
    'type' => 'color',
    'default' => 'hole',
    'label' => 'Color Field',
]

在模板文件中使用

get_option('<section_name>_<field_name>');

贡献者

Duy Nguyen