簡體   English   中英

Joomla:如何檢查管理員是否已登錄

[英]Joomla: How to check if admin is logged in

我添加了一個自定義PHP頁面,該頁面不使用任何Joomla組件。 我在.htaccess中進行了更改,因此現在可以訪問該頁面。

鏈接將類似於http://www.example.com/administrator/mypage.php

但是每個人都可以訪問該頁面,而無需登錄到管理面板。 如何使它只能由管理員查看?

我的Joomla版本是3。

非常感謝。

首先,您的php頁面必須包含joomla框架,否則您將無法使用任何joomla函數。

我通常在php文件的開頭使用此代碼段(該php文件位於根目錄中):

 define( '_JEXEC', 1 );

 define('JPATH_BASE', './' ); //config this as you need

 define( 'DS', DIRECTORY_SEPARATOR );
 require_once ( JPATH_BASE .DS.'includes'.DS.'defines.php' );
 require_once ( JPATH_BASE .DS.'includes'.DS.'framework.php' );

 JDEBUG ? $_PROFILER->mark( 'afterLoad' ) : null;
 $mainframe =& JFactory::getApplication('site');
 $mainframe->initialise();
 JPluginHelper::importPlugin('system');
 JDEBUG ? $_PROFILER->mark('afterInitialise') : null;
 $mainframe->triggerEvent('onAfterInitialise');

// Get user
$user = JFactory::getUser();
if ($user->authorise('core.admin')) {
//your code here

}

請記住,這不是正確的解決方案,您應該為joomla創建一個組件以對其進行擴展。 自定義php頁面可能會造成安全問題。

希望對您有所幫助,馬可

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM