AdministratorApplication
扩展自 CMSApplicationJoomla! 管理员应用程序类
自版本 |
3.2 |
---|---|
包 |
Joomla CMS |
方法
__construct
类构造函数。
__construct(\Joomla\CMS\Input\Input input = null, \Joomla\Registry\Registry config = null, \Joomla\Application\Web\WebClient client = null, \Joomla\DI\Container container = null) :
自版本 |
3.2 |
---|
参数
- input
Input|null
一个可选参数,用于为应用程序的输入对象提供依赖注入。如果参数是 JInput 对象,则该对象将成为应用程序的输入对象,否则将创建一个默认的输入对象。- config
Registry|null
一个可选参数,用于为应用程序的配置对象提供依赖注入。如果参数是 Registry 对象,则该对象将成为应用程序的配置对象,否则将创建一个默认的配置对象。- client
WebClient|null
一个可选参数,用于为应用程序的客户端对象提供依赖注入。如果参数是 WebClient 对象,则该对象将成为应用程序的客户端对象,否则将创建一个默认的客户端对象。- container
Container|null
依赖注入容器。
返回值
混合类型
afterSessionStart
会话启动后,我们需要用一些默认值填充它。
afterSessionStart(\Joomla\Session\SessionEvent event) :
自版本 |
3.0.1 |
---|
参数
- 事件
SessionEvent
触发中的会话事件
返回值
空
bootComponent
启动给定名称的组件。
bootComponent( component) : \Joomla\CMS\Extension\ComponentInterface
bootModule
启动给定名称的模块。
bootModule( module, applicationName) : \Joomla\CMS\Extension\ModuleInterface
bootPlugin
启动具有给定名称和类型的插件。
bootPlugin( plugin, type) : \Joomla\CMS\Extension\PluginInterface
checkSession
检查用户会话。
checkSession() :
如果会话记录不存在,则初始化它。如果会话是新的,则创建会话变量
自版本 |
3.2 |
---|---|
抛出 |
|
返回值
空
checkToken
检查请求中是否存在表单令牌。
checkToken( method = 'post') :
与 getFormToken 结合使用。
自版本 |
4.0.0 |
---|
参数
- 方法
字符串
要在其中查找令牌键的请求方法。
返回值
布尔值
如果找到且有效,则为真,否则为假。
checkUserRequireReset
检查用户是否需要重置密码。
checkUserRequireReset( option, view, layout, tasks) :
如果用户需要重置密码,则会重定向到管理密码重置的页面。
抛出 |
|
---|
参数
- 选项
字符串
管理密码重置的选项- 视图
字符串
管理密码重置的视图- 布局
字符串
管理密码重置的视图的布局- 任务
字符串
允许的任务
返回值
空
createExtensionNamespaceMap
允许应用程序加载自定义或默认身份。
createExtensionNamespaceMap() :
自版本 |
4.0.0 |
---|
返回值
空
decryptLegacyTFAString
尝试解密旧的 MFA 配置。
decryptLegacyTFAString( secret, stringToDecrypt) :
链接 | |
---|---|
自版本 |
4.2.0 |
参数
- 密钥
字符串
站点的密钥- 待解密字符串
字符串
Base64 编码并加密,JSON 编码的信息
返回值
字符串
已解密,但 JSON 编码的信息
dispatch
分派应用程序
dispatch( component = null) :
自版本 |
3.2 |
---|
参数
- 组件
字符串
正在呈现的组件。
返回值
空
doExecute
运行 Web 应用程序例程的方法。
doExecute() :
自版本 |
3.2 |
---|
返回值
空
enqueueMessage
将系统消息入队。
enqueueMessage( msg, type = self::MSG_INFO) :
自版本 |
3.2 |
---|
参数
- 消息
字符串
要入队的消息。- 类型
字符串
消息类型。默认为消息。
返回值
空
execute
执行应用程序。
execute() :
自版本 |
3.2 |
---|
返回值
空
findOption
返回应用程序选项字符串 [主组件]。
findOption() :
自版本 |
4.0.0 |
---|
返回值
字符串
要访问的组件。
flushAssets
刷新媒体版本以刷新可版本化的资产
flushAssets() :
自版本 |
3.2 |
---|
返回值
空
getCfg
获取配置值。
getCfg( varname, default = null) :
自版本 |
3.2 |
---|---|
已弃用 |
3.2 将在 6.0 中删除,请改用 get()。例如:Factory::getApplication()->get($varname, $default); |
参数
- 变量名
字符串
要获取的值的名称。- 默认值
字符串
要返回的默认值
返回值
混合类型
用户状态。
getClientId
获取当前运行应用程序的客户端 ID。
getClientId() :
自版本 |
3.2 |
---|
返回值
整数
客户端标识符。
getConfig
检索应用程序配置对象。
getConfig() : \Joomla\Registry\Registry
自版本 |
4.0.0 |
---|
返回值
Registry
getContainer
获取 DI 容器。
getContainer() : \Joomla\DI\Container
自版本 |
4.0.0 |
---|---|
抛出 |
|
返回值
Container
getDispatcher
获取事件调度器。
getDispatcher() : \Joomla\Event\DispatcherInterface
自版本 |
4.0.0 |
---|---|
抛出 |
|
返回值
DispatcherInterface
getDocument
获取应用程序文档对象的方法。
getDocument() : \Joomla\CMS\Document\Document
getFormToken
确定用于反欺骗变量名称的哈希值的方法
getFormToken( forceNew = false) :
自版本 |
4.0.0 |
---|
参数
- 强制新建
布尔值
如果为真,则强制创建新的令牌
返回值
字符串
哈希的变量名
getInstance
返回对全局 CmsApplication 对象的引用,仅当它尚不存在时才创建它。
getInstance( name = null, prefix = 'JApplication', \Joomla\DI\Container container = null) : \Joomla\CMS\Application\CmsApplication
此方法必须以以下方式调用:$web = CmsApplication::getInstance();
自版本 |
3.2 |
---|---|
抛出 |
|
已弃用 |
4.0 将在 6.0 中删除,请改用 DI 容器中的应用程序服务。例如:Factory::getContainer()->get($name); |
参数
- 名称
字符串
要实例化的 CmsApplication 类的名称(可选)。- 前缀
字符串
对象的类名前缀。- container
Container|null
一个可选的依赖注入容器,注入到应用程序中。
返回值
CmsApplication
getLanguage
获取应用程序语言对象的方法。
getLanguage() : \Joomla\CMS\Language\Language
getLogger
获取记录器。
getLogger() : \Psr\Log\LoggerInterface
自版本 |
4.0.0 |
---|
返回值
LoggerInterface
getMenu
返回应用程序 \JMenu 对象。
getMenu( name = null, mixed||string|int options = []) : \Joomla\CMS\Menu\AbstractMenu
getMessageQueue
获取系统消息队列。
getMessageQueue( clear = false) : mixed||string|int
自版本 |
3.2 |
---|
参数
- 清除
布尔值
清除当前附加到应用程序对象的邮件
返回值
数组<字符串|整数, 混合类型>
系统消息队列。
getName
获取当前运行应用程序的名称。
getName() :
自版本 |
3.2 |
---|
返回值
字符串
应用程序的名称。
getRouter
返回对 Router 对象的引用。
getRouter( name = 'administrator', mixed||string|int options = []) : \Joomla\CMS\Router\Router
自版本 |
3.2 |
---|---|
已弃用 |
4.3 将在 6.0 中删除,请注入路由器或从依赖注入容器中加载它。例如:Factory::getContainer()->get(AdministratorRouter::class); |
参数
- 名称
字符串
应用程序的名称。- 选项
数组<字符串|整数, 混合类型>
一个可选的配置设置关联数组。
返回值
getTemplate
获取当前模板的名称。
getTemplate( params = false) : string|\stdClass
自版本 |
3.2 |
---|---|
抛出 |
|
参数
- 参数
布尔值
如果为真,则返回模板参数
返回值
字符串|stdClass
如果 params 参数为假,则为模板的名称。如果 params 参数为真,则为模板对象。
getUserState
获取用户状态。
getUserState( key, default = null) :
自版本 |
3.2 |
---|
参数
- 键
字符串
状态的路径。- 默认值
混合类型
可选的默认值,如果内部值为 null 则返回。
返回值
混合类型
用户状态或 null。
getUserStateFromRequest
获取用户状态变量的值。
getUserStateFromRequest( key, request, default = null, type = 'none') :
自版本 |
3.2 |
---|
参数
- 键
字符串
用户状态变量的键。- 请求
字符串
请求中传递的变量的名称。- 默认值
字符串
如果未找到变量的默认值。可选。- 类型
字符串
变量的过滤器。可选。@see \Joomla\CMS\Filter\InputFilter::clean() 获取有效值。
返回值
混合类型
请求用户状态。
hasRejectedMultiFactorAuthenticationSetup
用户是否有“不要再次显示”标记?
hasRejectedMultiFactorAuthenticationSetup() :
自版本 |
4.2.0 |
---|
返回值
布尔值
hasUserConfiguredTwoFactorAuthentication
不再使用
hasUserConfiguredTwoFactorAuthentication() :
自版本 |
4.0.0 |
---|---|
抛出 |
|
已弃用 |
4.2 将在 6.0 中删除,将被删除且无替换。 |
返回值
布尔值
initialiseApp
初始化应用程序。
initialiseApp(mixed||string|int options = []) :
自版本 |
3.2 |
---|
参数
- 选项
数组<字符串|整数, 混合类型>
一个可选的配置设置关联数组。
返回值
空
isCli
应用程序实例是 CLI 还是基于 Web 的应用程序的标志。
isCli() :
辅助函数,您应该使用本机 PHP 函数来检测它是否是 CLI 应用程序。
自版本 |
4.0.0 |
---|---|
已弃用 |
4.0 将在 6.0 中删除,将被删除且无替换。 |
返回值
布尔值
isClient
按名称检查客户端接口。
isClient( identifier) :
自版本 |
3.7.0 |
---|
参数
- 标识符
字符串
应用程序接口的字符串标识符
返回值
布尔值
如果此应用程序属于给定类型的客户端接口,则为真。
isHandlingMultiFactorAuthentication
处理重定向到多因素身份验证强制登录或设置页面。
isHandlingMultiFactorAuthentication() :
抛出 |
|
---|---|
自版本 |
4.2.0 |
返回值
bool
如果我们当前正在处理多因素身份验证强制页面,则为真。
isHttpsForced
检查客户端配置中是否强制使用 HTTPS。
isHttpsForced( clientId = null) :
自版本 |
3.7.3 |
---|
参数
- clientId
int
可选的客户端 ID(默认为当前应用程序客户端)。
返回值
bool
如果对客户端强制执行,则为真,否则为假。
isMultiFactorAuthenticationPage
此页面是否与多因素身份验证功能有关?
isMultiFactorAuthenticationPage( onlyCaptive = false) :
自版本 |
4.2.0 |
---|
参数
- onlyCaptive
bool
我是否只需要检查 MFA 强制页面?
返回值
布尔值
isMultiFactorAuthenticationPending
当前用户是否需要完成 MFA 身份验证才能访问站点?
isMultiFactorAuthenticationPending() :
抛出 |
|
---|---|
自版本 |
4.2.0 |
返回值
布尔值
isTwoFactorAuthenticationRequired
不再使用
isTwoFactorAuthenticationRequired() :
自版本 |
4.0.0 |
---|---|
抛出 |
|
已弃用 |
4.2 将在 6.0 中删除,将被删除且无替换。 |
返回值
布尔值
loadDocument
允许应用程序加载自定义或默认文档。
loadDocument(\Joomla\CMS\Document\Document document = null) : \Joomla\CMS\Application\WebApplication
创建此对象的相关逻辑和选项对于默认情况来说足够通用,但对于许多应用程序来说,根据更具体的需要覆盖此方法并创建文档(如果需要)将很有意义。
自版本 |
1.7.3 |
---|
参数
- document
Document|null
可选的文档对象。如果省略,则创建工厂文档。
返回值
WebApplication
此方法是可链接的。
loadExtension
加载扩展。
loadExtension( type, extensionName, extensionPath) : \Joomla\CMS\Extension\ComponentInterface|\Joomla\CMS\Extension\ModuleInterface|\Joomla\CMS\Extension\PluginInterface
自版本 |
4.0.0 |
---|
参数
- 类型
string
扩展类型- extensionName
string
扩展名称- extensionPath
string
扩展的路径
返回值
loadIdentity
允许应用程序加载自定义或默认身份。
loadIdentity(\Joomla\CMS\User\User identity = null) :
loadLanguage
允许应用程序加载自定义或默认语言。
loadLanguage(\Joomla\CMS\Language\Language language = null) : \Joomla\CMS\Application\WebApplication
创建此对象的相关逻辑和选项对于默认情况来说足够通用,但对于许多应用程序来说,根据更具体的需要覆盖此方法并创建语言(如果需要)将很有意义。
自版本 |
1.7.3 |
---|
参数
- language
Language|null
可选的语言对象。如果省略,则创建工厂语言。
返回值
WebApplication
此方法是可链接的。
loadLibraryLanguage
加载应用程序的库语言文件
loadLibraryLanguage() :
自版本 |
3.6.3 |
---|
返回值
空
loadPluginFromFilesystem
从文件系统创建 CMS 插件。
loadPluginFromFilesystem( plugin, type) : \Joomla\CMS\Plugin\CMSPlugin
loadSession
允许应用程序加载自定义或默认会话。
loadSession(\Joomla\CMS\Session\Session session = null) : \Joomla\CMS\Application\WebApplication
创建此对象的相关逻辑和选项对于默认情况来说足够通用,但对于许多应用程序来说,根据更具体的需要覆盖此方法并创建会话(如果需要)将很有意义。
自版本 |
1.7.3 |
---|---|
已弃用 |
4.3 将在 6.0 中移除 会话应作为服务注入。 |
参数
- session
Session|null
可选的会话对象。如果省略,则创建会话。
返回值
WebApplication
此方法是可链接的。
loadSystemUris
用于加载应用程序系统 URI 字符串的方法。
loadSystemUris( requestUri = null) :
自版本 |
1.7.3 |
---|
参数
- requestUri
string
可选的请求 URI,用于代替从服务器环境变量中检测请求 URI。
返回值
空
login
登录身份验证函数
login(mixed||string|int credentials, mixed||string|int options = []) :
自版本 |
3.2 |
---|
参数
- credentials
array<string|int, mixed>
Array('username' => string, 'password' => string)- 选项
array<string|int, mixed>
Array('remember' => boolean)
返回值
bool
成功时为真。
logout
注销身份验证函数。
logout( userid = null, mixed||string|int options = []) :
将当前用户信息传递给 onUserLogout 事件,并将当前会话记录恢复为“匿名”参数。如果任何身份验证插件未成功完成注销例程,则整个方法将失败。在此处应在插件中引发任何错误,因为这提供了提供更多有关例程失败原因的信息的能力。
自版本 |
3.2 |
---|
参数
- userid
int
要加载的用户 - 可以是整数或字符串 - 如果是字符串,则会自动转换为 ID- 选项
array<string|int, mixed>
Array('clientid' => 客户端 ID 数组)
返回值
bool
成功时为真
migrateFromLegacyMFA
自动将用户的旧版 MFA 记录迁移到新的强制 MFA 格式。
migrateFromLegacyMFA() :
自版本 |
4.2.0 |
---|
返回值
空
needsMultiFactorAuthenticationRedirection
检查我们是否需要重定向到多因素身份验证强制页面。
needsMultiFactorAuthenticationRedirection() :
自版本 |
4.2.0 |
---|
返回值
布尔值
purgeMessages
清除 jos_messages 表中的旧消息
purgeMessages() :
自版本 |
3.2 |
---|---|
已弃用 |
4.3 将在 6.0 中移除 通过消息模型清除消息 示例:Factory::getApplication()->bootComponent('messages')->getMVCFactory() ->createModel('Messages', 'Administrator')->purge(Factory::getApplication()->getIdentity()->id); |
返回值
空
redirect
重定向到另一个 URL。
redirect( url, status = 303) :
如果尚未发送标头,则重定向将通过标头中指向新位置的“301 Moved Permanently”或“303 See Other”代码来完成。如果标头已发送,则将使用 JavaScript 语句来完成此操作。
自版本 |
3.2 |
---|
参数
- url
string
要重定向到的 URL。只能是 http/https URL- status
int
要提供的 HTTP 1.1 状态代码。默认情况下假定为 303。
返回值
空
registerEvent
向特定事件组注册处理程序。
registerEvent( event, Warning: Array to string conversion in /opt/phpdoc/vendor/twig/twig/src/Extension/CoreExtension.php on line 768 |Array handler) :
自版本 |
4.0.0 |
---|
参数
- 事件
string
事件名称。- handler
callable
处理程序,函数或事件对象的实例。
返回值
$this
render
呈现是将文档缓冲区推送到模板占位符、从文档中检索数据并将其推送到应用程序响应缓冲区的过程。
render() :
自版本 |
3.2 |
---|
返回值
空
route
路由应用程序。
route() :
路由是检查请求环境以确定哪个组件应接收请求的过程。然后在请求对象中设置组件可选参数,以便在调度应用程序时进行处理。
自版本 |
3.2 |
---|
返回值
空
sanityCheckSystemVariables
确保几个核心系统输入变量不是数组。
sanityCheckSystemVariables() :
自版本 |
3.9 |
---|
返回值
空
setMenuFactory
设置内部菜单工厂。
setMenuFactory(\Joomla\CMS\Menu\MenuFactoryInterface menuFactory) :
setupLogging
设置日志记录功能。
setupLogging() :
自版本 |
4.0.0 |
---|
返回值
空
setUserState
设置用户状态变量的值。
setUserState( key, value) :
自版本 |
3.2 |
---|
参数
- 键
字符串
状态的路径。- value
mixed
变量的值。
返回值
mixed
先前状态(如果存在)。否则为 null。
toString
在返回字符串之前发送所有标头
toString( compress = false) :
自版本 |
3.2 |
---|
参数
- compress
bool
如果为真,则压缩数据
返回值
string
triggerEvent
调用与事件组关联的所有处理程序。
triggerEvent( eventName, array|\Joomla\Event\Event args = []) : mixed||string|int
这是一个旧版方法,实现了旧式(Joomla! 3.x)插件调用。最好直接通过调度程序处理返回的 EventInterface 对象,而不是通过此方法。此方法已弃用,将在 Joomla! 5.x 中删除。
此方法仅返回事件的“result”参数
自版本 |
4.0.0 |
---|---|
抛出 |
|
已弃用 |
4.0 将在 6.0 中移除 使用 Dispatcher 方法代替 示例:Factory::getApplication()->getDispatcher()->dispatch($eventName, $event); |
参数
- eventName
string
事件名称。- args
array<string|int, mixed>|Event
参数数组或事件对象(可选)。
返回值
array<string|int, mixed>
每个函数调用的结果数组。请注意,如果未设置调度程序,则此数组将为空。
属性
JComponentTitle
应用程序组件标题。
自版本 |
4.3.0 |
---|
类型(s)
string
item_associations
项目关联
自版本 |
4.3.0 |
---|---|
已弃用 |
4.4.0 将在 6.0 中移除,因为此属性不再使用 |
类型(s)
int
instance
应用程序实例。
自版本 |
1.7.3 |
---|
类型(s)
static
docOptions
\JDocument 对象的选项数组
自版本 |
3.2 |
---|
类型(s)
array<string|int, mixed>
instances
应用程序实例容器。
自版本 |
3.2 |
---|
类型(s)
array<string|int, CmsApplication>
scope
应用程序的范围。
自版本 |
3.2 |
---|
类型(s)
string
clientId
客户端标识符。
自版本 |
4.0.0 |
---|
类型(s)
int
messageQueue
应用程序消息队列。
自版本 |
4.0.0 |
---|
类型(s)
array<string|int, mixed>
名称
应用程序的名称。
自版本 |
4.0.0 |
---|
类型(s)
string
template
当前活动模板
自版本 |
3.2 |
---|
类型(s)
object
authenticationPluginType
身份验证插件类型
自版本 |
4.0.0 |
---|
类型(s)
string
allowedUnprivilegedOptions
访客和没有 core.login.admin 权限的用户允许的组件列表。
默认情况下,我们允许两个核心组件
- com_login 绝对必要,以允许用户登录站点的后端。请勿删除!
- com_ajax 处理 AJAX 请求或其他管理回调,无需登录。使用 WebAuthn 进行无密码身份验证时需要此功能。
类型(s)
array<string|int, mixed>