将 Harvest Chosen 添加到前端 post 插件
Add Harvest Chosen to frontend post plugin
我是新手,所以我很确定这个问题的答案可能非常简单,但我已经尝试了很多不同的方法,但仍然无法找到答案。
我在我的 Wordpress 网站上有一个前端插件 (Frontier Post) posting。以下代码生成 post 个类别的多选:
Function frontier_post_tax_multi($tmp_cat_list, $tmp_selected, $tmp_name, $tmp_id, $tmp_size)
{
$tmp_html = '<select class="frontier_post_dropdown" name="'.$tmp_name.'"id="'.$tmp_id.'" multiple="multiple" size="'.$tmp_size.'">';
foreach ( $tmp_cat_list as $taxid => $taxname) :
$tmp_html = $tmp_html.'<option class="fp_multi" value="'.$taxid.'"';
if ( $tmp_selected && in_array( $taxid, $tmp_selected ) )
{
$tmp_html = $tmp_html.' selected="selected"';
}
$tmp_html = $tmp_html.'>'.$taxname.'</option>';
endforeach;
$tmp_html = $tmp_html.'</select>';
return $tmp_html;
}
这是根据在管理仪表板中选择的设置调用创建多选函数的开关:
switch ($input_type)
{
case "single":
if (count($tmp_selected) == 0)
$tmp_selected[0] = '';
wp_dropdown_categories(array('taxonomy' => $tmp_tax_name, 'id'=>$tmp_field_name, 'exclude' => $exclude_list, 'hide_empty' => 0, 'name' => $tmp_input_field_name, 'orderby' => 'name', 'selected' => $tmp_selected[0], 'hierarchical' => true, 'show_count' => true, 'show_option_none' => __("None", "frontier-post"), 'option_none_value' => '0','class' => 'frontier_post_dropdown'));
//echo "selected: ".$tmp_selected[0]."<br>";
break;
case "multi":
echo frontier_post_tax_multi($tmp_tax_list , $tmp_selected, $tmp_input_field_name, $tmp_field_name, 10);
break;
case "checkbox":
echo frontier_post_tax_checkbox($tmp_tax_list , $tmp_selected, $tmp_input_field_name, $tmp_field_name);
break;
case "radio":
echo frontier_post_tax_radio($tmp_tax_list , $tmp_selected, $tmp_input_field_name, $tmp_field_name);
break;
case "radioline":
echo frontier_post_tax_radioline($tmp_tax_list , $tmp_selected, $tmp_input_field_name, $tmp_field_name);
break;
case "readonly":
echo frontier_post_tax_readonly($tmp_tax_list , $tmp_selected, $tmp_input_field_name, $tmp_field_name);
break;
} // switch
我尝试回显脚本并使用所选文件作为源,我尝试回显脚本并将函数放入其中,我将所选文件包含在包含上述代码的 php 文件中,我使用 wp_enqueue_script 但无论我尝试什么,它都不会显示它应该如何显示。想不通了。
这主要是我一直在尝试做的事情:
<script src="chosen.jquery.js"></script>;
<script>
$(function() {
$(".frontier_post_dropdown").chosen();
});
</script>;
我更改了 class 名称,但没有任何作用。
我不熟悉 jQuery 并且我看到 jQuery(document).ready(function(){ jQuery(".chosen").chosen(); });
被描述为正确的用法。有人可以提供一些指导吗?
那么,如何将 Chosen 函数添加到这个特定的多选?
拜托,帮忙。
(注意:我联系了 Frontier Post 开发人员,但没有得到回复)
我预感问题可能出在选择的路径上。此外,您需要包含一个 css 文件才能使用 chosen。你能用这个替换你现有的吗?
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/chosen/1.6.2/chosen.min.css"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/chosen/1.6.2/chosen.jquery.min.js"></script>
<script>
$(function() {
$(".frontier_post_dropdown").chosen();
});
</script>
您也可以尝试用 jQuery 替换美元符号,看看是否可行。像这样:
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/chosen/1.6.2/chosen.min.css"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/chosen/1.6.2/chosen.jquery.min.js"></script>
<script>
jQuery(function() {
jQuery(".frontier_post_dropdown").chosen();
});
</script>
我是新手,所以我很确定这个问题的答案可能非常简单,但我已经尝试了很多不同的方法,但仍然无法找到答案。
我在我的 Wordpress 网站上有一个前端插件 (Frontier Post) posting。以下代码生成 post 个类别的多选:
Function frontier_post_tax_multi($tmp_cat_list, $tmp_selected, $tmp_name, $tmp_id, $tmp_size)
{
$tmp_html = '<select class="frontier_post_dropdown" name="'.$tmp_name.'"id="'.$tmp_id.'" multiple="multiple" size="'.$tmp_size.'">';
foreach ( $tmp_cat_list as $taxid => $taxname) :
$tmp_html = $tmp_html.'<option class="fp_multi" value="'.$taxid.'"';
if ( $tmp_selected && in_array( $taxid, $tmp_selected ) )
{
$tmp_html = $tmp_html.' selected="selected"';
}
$tmp_html = $tmp_html.'>'.$taxname.'</option>';
endforeach;
$tmp_html = $tmp_html.'</select>';
return $tmp_html;
}
这是根据在管理仪表板中选择的设置调用创建多选函数的开关:
switch ($input_type)
{
case "single":
if (count($tmp_selected) == 0)
$tmp_selected[0] = '';
wp_dropdown_categories(array('taxonomy' => $tmp_tax_name, 'id'=>$tmp_field_name, 'exclude' => $exclude_list, 'hide_empty' => 0, 'name' => $tmp_input_field_name, 'orderby' => 'name', 'selected' => $tmp_selected[0], 'hierarchical' => true, 'show_count' => true, 'show_option_none' => __("None", "frontier-post"), 'option_none_value' => '0','class' => 'frontier_post_dropdown'));
//echo "selected: ".$tmp_selected[0]."<br>";
break;
case "multi":
echo frontier_post_tax_multi($tmp_tax_list , $tmp_selected, $tmp_input_field_name, $tmp_field_name, 10);
break;
case "checkbox":
echo frontier_post_tax_checkbox($tmp_tax_list , $tmp_selected, $tmp_input_field_name, $tmp_field_name);
break;
case "radio":
echo frontier_post_tax_radio($tmp_tax_list , $tmp_selected, $tmp_input_field_name, $tmp_field_name);
break;
case "radioline":
echo frontier_post_tax_radioline($tmp_tax_list , $tmp_selected, $tmp_input_field_name, $tmp_field_name);
break;
case "readonly":
echo frontier_post_tax_readonly($tmp_tax_list , $tmp_selected, $tmp_input_field_name, $tmp_field_name);
break;
} // switch
我尝试回显脚本并使用所选文件作为源,我尝试回显脚本并将函数放入其中,我将所选文件包含在包含上述代码的 php 文件中,我使用 wp_enqueue_script 但无论我尝试什么,它都不会显示它应该如何显示。想不通了。
这主要是我一直在尝试做的事情:
<script src="chosen.jquery.js"></script>;
<script>
$(function() {
$(".frontier_post_dropdown").chosen();
});
</script>;
我更改了 class 名称,但没有任何作用。
我不熟悉 jQuery 并且我看到 jQuery(document).ready(function(){ jQuery(".chosen").chosen(); });
被描述为正确的用法。有人可以提供一些指导吗?
那么,如何将 Chosen 函数添加到这个特定的多选?
拜托,帮忙。
(注意:我联系了 Frontier Post 开发人员,但没有得到回复)
我预感问题可能出在选择的路径上。此外,您需要包含一个 css 文件才能使用 chosen。你能用这个替换你现有的吗?
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/chosen/1.6.2/chosen.min.css"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/chosen/1.6.2/chosen.jquery.min.js"></script>
<script>
$(function() {
$(".frontier_post_dropdown").chosen();
});
</script>
您也可以尝试用 jQuery 替换美元符号,看看是否可行。像这样:
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/chosen/1.6.2/chosen.min.css"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/chosen/1.6.2/chosen.jquery.min.js"></script>
<script>
jQuery(function() {
jQuery(".frontier_post_dropdown").chosen();
});
</script>