挂钩侧边栏小部件并添加一些标记

时间:2013-06-23 作者:user1955643

我想挂接一个侧边栏小部件,这一个特别加载成员。

我所要做的就是在小部件中添加一个链接,我设法得到了一个结果,但这并不完全正确。它不加载原始函数,而是替换它。

以下是我取得的成绩:

function members_dir_link(){
echo \'<a href="/members/">View Members</a>\';
}
add_filter(\'bp_has_members\',\'members_dir_link\');

1 个回复
最合适的回答,由SO网友:Krzysiek Dróżdż 整理而成

我认为这是办不到的。对不起,这个小部件里面没有挂钩。您只能使用bp_has_members 钩子,但你不应该用它来回应任何东西,因为它在许多其他地方都有使用,所以你可能会用这种方式破坏一些东西。

我能看到的实现这一点的唯一方法(这并不完美)是基于这个BP小部件编写自己的小部件。为此,您应该:

查找原始小部件的源代码。(它在bp-core/bp-core-widgets.php 文件)复制其代码并将其放入主题中function.php

  • 将您的新小部件注册到:

    add\\u action(\'widgets\\u init\',create\\u function(\'\',\'return register\\u widget(“”;\');

  • 您还可以尝试从原始BP widget类继承这个新的widget类(您不需要复制整个源代码)。

    结束

    相关推荐

    Usage of filters

    在下面的示例中(从WordPress.org)获取提要后,为什么要删除过滤器<?php function return_7200( $seconds ) { // change the default feed cache recreation period to 2 hours return 7200; } add_filter( \'wp_feed_cache_transient_lifetime\' , \'return_720