我正在尝试在Wordpress主题自定义区域中创建一个选择框/下拉菜单,其中的选项将从名为"别名"的列中提取。在名为" wp_revslider_sliders"的表中来自我的Wordpress DB。
我已经创建了该部分,以及下拉菜单的基本设置和控件(参见下面的图1),但作为这方面的新手,我无法弄清楚如何查询Wordpress DB,从" Alias"中提取结果。我和#34; wp_revslider_sliders"的列表并将它们输出到"选择数组"以下
图。 1
$wp_customize->add_control(
'select_revslider',
array(
'type' => 'select',
'label' => 'Please Select a Slider:',
'section' => 'example_section_one',
'choices' => array(
'wordpress' => 'WordPress',
),
)
);
图。 2
function example_customizer( $wp_customize ) {
$wp_customize->add_section(
'example_section_one',
array(
'title' => 'Example Settings',
'description' => 'This is a settings section.',
'priority' => 35,
)
);
$wp_customize->add_setting(
'select_revslider',
array(
'default' => 'wordpress',
)
);
$wp_customize->add_control(
'select_revslider',
array(
'type' => 'select',
'label' => 'Please Select a Slider:',
'section' => 'example_section_one',
'choices' => array(
'wordpress' => 'WordPress',
),
)
);
答案 0 :(得分:0)
在你的function.php文件中,crate函数如下:
function alias_from_wp_revslider_sliders() {
$sql = "SELECT aliasname FROM wp_revslider_sliders";
$result = $conn->query($sql);
$alias_list = array();
foreach($alias_list as $alias) {
$alias_list[$alias->aliasname] = $alias->aliasname;
}
return $alias_list;
}
并且当你添加控件而不是选择时,调用我们在functions.php
中创建的函数$wp_customize->add_control(
'select_revslider',
array(
'type' => 'select',
'label' => 'Please Select a Slider:',
'section' => 'example_section_one',
'choices' => function alias_from_wp_revslider_sliders(),
)