javascript - 如何从 WordPress 的特定帖子中隐藏/禁用/删除自定义元框?
问题描述
我正在创建一个 WordPress 插件,并且我有一个自定义元框。我需要从管理员检查的帖子列表中删除自定义元框。我正在插件设置页面中获取所有帖子的列表,如下所示:
<?php
global $post;
$args = array( 'posts_per_page' => -1, 'offset'=> 1, 'category' => 1 );
$myposts = get_posts( $args );
foreach ( $myposts as $post ) : setup_postdata( $post ); ?>
<input type="checkbox" id="postcb" name="postcb[]" value="<?php the_title(); ?>">
<label id='postcbid' for='postcb'>
<?php the_title(); ?>
</label>
<br>
<?php endforeach;
wp_reset_postdata();?>
<?php echo '<input type="button" id="btnenable" name="Enable" value="Enable" onclick="displayenable()">' ?>
我在 Javascript 中有 displayenable() 函数,它检查哪些复选框被选中,如下所示:
<script type="text/javascript">
function displayenable()
{
var chk_arr = document.getElementsByName("postcb[]");
var chklength = chk_arr.length;
var cnt=0;
for(k=0;k< chklength;k++)
{
if(chk_arr[k].checked===true)
{
cnt++;
<?php
function remove_custom_metabox(){
remove_meta_box( 'my-meta-box-id' , 'page' , 'normal' );
}
add_action('add_meta_boxes', 'remove_custom_metabox'); ?>
}
}
//alert(cnt);
}
</script>
现在如何从复选框中选中的所有帖子中删除元框?谢谢!
编辑 1:由于我们不能像我一样在 JS 中执行 PHP,所以我尝试在 PHP 中执行所有操作,如下所示:
<?php
if(isset($_REQUEST['submit_btn']))
{
$cbarray=$_POST['postcheck'];
if($cbarray!=NULL)
{
foreach($cbarray as $val)
{
//echo $val . '</br>';
function remove_custom_metabox($post_type)
{
remove_meta_box('my-meta-box-id', $post_type, 'normal');
}
add_action('add_meta_boxes', 'remove_custom_metabox',99,1);
}
}
}
?>
现在如何修改此代码,以便仅从某些帖子中删除元框?
解决方案
推荐阅读
- python - Tensorflow 图像调整大小无法按预期工作
- jquery - 选择下拉列表上的 jQuery 已更新
- c - 从没有返回的函数返回一个值
- python - 有没有一种简单的方法可以通过 Python Asyncio 进行半开 TCP 连接?
- python - 我尝试编写一个具有 if else 循环功能的代码。我想要一个运行 if 语句的次数的计数器
- go - 无法从恐慌中恢复 - 完全跳过延迟
- dbix-class - DBIx 可能有自定义条件,对象总是 undef
- java - 遍历数组,如果下一个 int 等于当前则返回 True
- python - 如何使用 Python 从 Pdf 导入混合分数?
- java - SnakeYAML scala 中的 YAML 环境变量插值