Tom*_*Tom 5 css joomla joomla2.5
我正在使用Joomla 2.5的自定义插件扩展.此插件针对我网站上的单个页面.但出于某种原因,我注意到它在每一页上都加载了css文件.
插件的代码加载此css文件:
$doc->addStyleSheet($pluginAssetsUrl . '/css/aecuserpage.css');
Run Code Online (Sandbox Code Playgroud)
我不认为这很常见,但我不确定插件.我可以使它只应用我想要的页面而不是每一页.任何关于如何调试这个的想法将不胜感激.
该插件在文章页面上打印一个简单的表格并使用插件功能 onContentPrepare
使用这些代码段来管理您的问题:
1)通过检查活动菜单项来加载CSS
$menu = &JSite::getMenu();
$menuItem = $menu->getActive();
$Itemid = $menuItem->id;
if($Itemid!=1)
{
$doc->addStyleSheet($pluginAssetsUrl . '/css/aecuserpage.css');
}
Run Code Online (Sandbox Code Playgroud)
2)在组件上加载CSS
if (JRequest::getCmd( 'option' ) == 'com_k2'){
$doc->addStyleSheet($pluginAssetsUrl . '/css/aecuserpage.css');
}
Run Code Online (Sandbox Code Playgroud)
3)仅在主页中加载CSS
<?php if(JRequest::getInt('Itemid') == $menu->getDefault()) {
$doc->addStyleSheet($pluginAssetsUrl . '/css/aecuserpage.css');
}?>
Run Code Online (Sandbox Code Playgroud)
4)在活动菜单ID上加载CSS
<?php
$menuID = JSite::getMenu()->getActive()->id ;
if ($menuID == '6')
{
$doc->addStyleSheet($pluginAssetsUrl . '/css/aecuserpage.css');
}
?>
Run Code Online (Sandbox Code Playgroud)
5)在活动语言上加载CSS:
$lang =& JFactory::getLanguage();
switch ($lang) {
case 'en-gb':
$doc->addStyleSheet($pluginAssetsUrl . '/css/aecuserpage.css');
break;
}
Run Code Online (Sandbox Code Playgroud)
6)在用户上加载CSS
$user =& JFactory::getUser();
if($user->get('id')==0){
//user is logged in
$doc->addStyleSheet($pluginAssetsUrl . '/css/aecuserpage.css');
}
Run Code Online (Sandbox Code Playgroud)
7)在URL上加载CSS
$u =& JFactory::getURI();
if($u=="http://www.example.com/joomla/index.php?task=view&id=12&Itemid=29")
{
$doc->addStyleSheet($pluginAssetsUrl . '/css/aecuserpage.css');
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
819 次 |
| 最近记录: |