bp_group_extension :: get_screen_callback(细绳$ context.=''那细绳$ type.='屏幕'的)
获取指定上下文/类型的相应屏幕回调。
描述
BP组扩展有三个特殊的“屏幕上下文”:创建,管理员和编辑。这些上下文中的每一个都具有相应的_screen()和_screen_save()方法,该方法允许组扩展插件为每个上下文定义不同的标记和逻辑。
BP还支持返回Setains_Screen()和setings_screen_save()方法,该方法可用于定义在上下文之间共享的标记和逻辑。对于每个上下文,您可以提供特定于上下文的方法,或者您可以让BP返回共享设置_ *回调。
例如,考虑一个bp_group_extension.如下所示的实现:
// ...函数create_screen($ group_id){...}函数create_screen_save($ group_id){...}函数设置_screen($ group_id){...}函数settings_screen_save($ group_id){...} // ......
bp_group_extension.将使用您的create_用于创建步骤的方法,并将使用您的通用设置_编辑和管理上下文的方法。此架构允许插件作者最大的灵活性,而无需重复。
get_screen_callback()方法使用反镜本对象来确定您的分机是否提供了给定的回调。
参数
- $ context.
-
(细绳的)(可选的)屏幕上下文。'创建','编辑'或'admin'。
默认值: ''
- $ type.
-
(细绳的)(可选的)屏幕类型。'屏幕'或'screen_save'。默认值:'屏幕'。
默认值:'屏幕'
返回
(可调用)可调用的功能句柄。
来源
文件:bp-groups / classes / class-bp-group-extension.php
公共函数get_screen_callback($ context ='',$ type ='屏幕'){$ callback ='';//首先尝试特定于上下文的回调。$ method = $ context。'_'。$ type;$ rmethod = $ this-> class_reflection-> getMethod($方法);if(isset($ rmethod-> class)&& $ this-> class_name === $ rmethod-> class){$ callback = array($ this,$ method);}如果(空($回调)){$ shownback_method ='settings_'。$ type;$ rfletback_method = $ this-> class_reflection-> getmethod($ stallback_method); if ( isset( $rfallback_method->class ) && $this->class_name === $rfallback_method->class ) { $callback = array( $this, $fallback_method ); } } return $callback; }
变更乐
版本 | 描述 |
---|---|
BuddyPress 1.8.0. | 介绍。 |