【问题标题】:Buddypress force groups to have forumBuddypress 强制组有论坛
【发布时间】:2016-10-12 19:39:18
【问题描述】:

我正在使用 BBPress 运行 BuddyPress 安装。在组创建的第 3 步中,有一个为该组添加论坛的选项,我希望所有组都有一个论坛,因此我正在为组自定义 BuddyPress 文件; create.php,我发现“这个组应该有一个论坛”的相关代码 - 复选框在那里。我尝试设置 checked="checked"-attribute 但没有任何改变。

我想让它默认选中,然后用 CSS 隐藏,这样用户甚至看不到选择,并且论坛与组一起创建。

对应代码:

<p><?php _e( 'Should this group have a forum?', 'buddypress' ); ?></p>

<div class="checkbox">
    <label for="group-show-forum"><input type="checkbox" name="group-show-forum" id="group-show-forum" value="1" checked="checked" <?php checked( bp_get_new_group_enable_forum(), true, true ); ?> /> <?php _e( 'Enable discussion forum', 'buddypress' ); ?></label>
</div>

【问题讨论】:

    标签: php wordpress buddypress bbpress


    【解决方案1】:

    您设置了两次checked。 试试:

    <input type="checkbox" name="group-show-forum" id="group-show-forum" value="1" checked="checked" /> <?php _e( 'Enable discussion forum', 'buddypress' ); ?>
    

    或者,不要破解create.php,而是使用过滤器钩子:apply_filters( 'bp_get_new_group_enable_forum', $forum );

    function james_default_enable_forum( $forum ) {
        $forum = 1;
        return $forum;
    }
    add_filter( 'bp_get_new_group_enable_forum', 'james_default_enable_forum', 10, 1 );
    

    【讨论】:

    • 谢谢,效果很好。并感谢您花时间提供过滤器挂钩。这显然要好得多。
    • 不客气。请接受答案。 stackoverflow.com/help/accepted-answer
    • @shanebp 您提到 bp_get_new_group_enable_forum 作为过滤器并用作操作!我检查了代码,它是一个过滤器,所以为什么不 apply_filter ,因为它正在返回 $forum 。抱歉打扰,但我正在阅读堆栈中的好友新闻,因为在官方文档中的一些内容旁边没有找到好的文档。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-14
    • 2019-11-02
    • 1970-01-01
    相关资源
    最近更新 更多