gpt4 book ai didi

wordpress - 在 Widgets Wordpress 中保存复选框组

转载 作者:行者123 更新时间:2023-12-01 12:45:57 24 4
gpt4 key购买 nike

我这辈子都无法让多个复选框一起工作!

其他一切正常,包括一个复选框,但我不知道如何制作多个复选框。

我想要的是:

我有一个名为团队的自定义帖子类型,其中包含所有团队成员。我想为团队中的帖子制作一个小部件。我希望复选框输出团队中的所有帖子,最终用户可以在其中选择要显示的人。

我试过用数组来做,但没用。

我的单选框是这样的:

public function widget( $args, $instance ) {
$teammember = $instance['teammember'];
}

public function update( $new_instance, $old_instance ) {
$instance['teammember'] = $new_instance['teammember'];
return $instance;
}

public function form( $instance ) {
$teammember = $instance['teammember'];
?>
<p>
<input id="<?php echo $this->get_field_id('teammember'); ?>" name="<?php echo $this->get_field_name('teammember'); ?>" type="checkbox" value="Name 1" <?php checked( '1', $teammember ); ?>/> Name 1
<input id="<?php echo $this->get_field_id('teammember'); ?>" name="<?php echo $this->get_field_name('teammember'); ?>" type="checkbox" value="Name 2" <?php checked( '1', $teammember ); ?>/> Name 2
</p>
<?php } ?>

假设我有 10 个团队成员,我希望他们在小部件中都有一个复选框,最终用户可以在其中选择要显示的团队成员。

我该怎么做?

最佳答案

在您的示例中,输入将因 ID 重复而违反 W3C。这些名称将相互覆盖。

$this->get_field_name('teammember'); 将返回相同的结果并相互覆盖。

您需要将其作为一个数组来实现。

<?php
public function form($instance) {
$teammember = $instance['teammember'];
?>
<p>
<?php
foreach($teammember as $id => $name) {
?>
<input id="<?php echo $this->get_field_id('teammember') . $id; ?>" name="<?php echo $this->get_field_name('teammember'); ?>[]" type="checkbox" value="<?php echo $name; ?>" <?php checked('1', $name); ?> />
<?php
}
?>
</p>
<?php
}

关于wordpress - 在 Widgets Wordpress 中保存复选框组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15969464/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com