【发布时间】:2014-06-03 14:12:25
【问题描述】:
这是我的 apply_filters 函数,用于返回选择框选项:
function my_shortcode_filters(){
$handle = ''; $value = apply_filters('my_add_shortcode', $handle);
if($value) $handle = "<option value='$value'>$value</option>";
return $handle;
}
这是我调用函数的html:
<select id="my-selectbox">
<?php echo my_shortcode_filters(); ?>
<option value="">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
这是我正在测试的 add_filter 函数:
add_filter('my_add_shortcode', 'yourprefix_new_sc_handle', 10);
function yourprefix_new_sc_handle(){
return 'myhandle';
}
add_filter('my_add_shortcode', 'yourprefix_new_sc_handle2', 11);
function yourprefix_new_sc_handle2(){
return 'myhandle2';
}
但只有第二个 add_filter 函数被添加到下拉菜单中。如果我删除第二个函数,则会添加第一个函数。但是当我添加第二个函数时,它会覆盖第一个 add_filter。我在这里错过了什么?
【问题讨论】: