将 css 更改为index.php

发布于 2024-11-05 12:04:34 字数 77 浏览 0 评论 0原文

我只想将templete.css应用于joomla中的index.php或home,并将mycss.css应用于其他文件。我该怎么办?请帮我

i want to apply templete.css only for index.php or home in joomla and apply mycss.css to other files . how can i do this . please help me

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

谈下烟灰 2024-11-12 12:04:34

如果你不考虑太多的话,这很简单。 Joomla 已经在菜单项中提供了页面类后缀,允许您根据页面后缀控制页面上的 CSS。这使您可以最终控制每个页面,而无需加载不同的样式表。您只需在 index.php 文件中添加一点代码即可使其正常工作。

在头部的某处添加此 php 代码 -

   $menu = &JSite::getMenu();
   $active = $menu->getActive();

   if (is_object( $active )) :
     $params = new JParameter( $active->params );
     $pageclass = $params->get( 'pageclass_sfx' );

   endif;

然后用此替换您的 body 标记 -

<body id="<?php echo $pageclass ? $pageclass : 'default'; ?>">

如果您为菜单项指定页面类后缀,则该 ID 将是正文的 ID,否则 ID 将是“默认”。这使得拥有特定于页面的 CSS 变得微不足道。

This is rather simple if you don't over think it. Joomla already has a page class suffix available in menu items that will allow you to control the CSS on a page based on the suffix of the page. This gives you ultimate control over each page without having to load differnt style sheets. You just need to add a little bit of code to your index.php file to make it all work.

Somewhere in the head add this php code -

   $menu = &JSite::getMenu();
   $active = $menu->getActive();

   if (is_object( $active )) :
     $params = new JParameter( $active->params );
     $pageclass = $params->get( 'pageclass_sfx' );

   endif;

Then replace your body tag with this -

<body id="<?php echo $pageclass ? $pageclass : 'default'; ?>">

If you specify a page class suffix for a menu item, that will be come the ID for the body, otherwise the ID will be "default". This makes it trivial to have page specific CSS.

鲜血染红嫁衣 2024-11-12 12:04:34

您可以通过两种方式做到这一点...

1) 创建 2 个不同的 Joomla 模板:

一个使用 template.css,另一个使用 mycss.css,然后将其分配给您想要的任何页面。

2) 添加此代码以将您的 CSS 文件包含在所需页面中:

<?php if(JRequest::getCmd('Itemid') == 1 ) {?>
<link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?>/css/mycss.css" type="text/css" />
<?php } ?>

并将 Itemid 更改为您要使用的 Itemid。

如果您想在除一页之外的所有页面上使用 mycss.css,您可以将代码修改为:

<?php if(JRequest::getCmd('Itemid') != 1 ) {?>
<link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?>/css/mycss.css" type="text/css" />
<?php } ?>

这样就可以了。

You can do that by 2 ways ...

1) Create 2 Different Joomla Templates :

One that use template.css and the other use mycss.css then assign it to whatever pages you want.

2) Add this code to include your CSS file in the desired pages :

<?php if(JRequest::getCmd('Itemid') == 1 ) {?>
<link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?>/css/mycss.css" type="text/css" />
<?php } ?>

And Change the Itemid to the Itemid you want to use.

If you want to use mycss.css on all pages except one page you can modify the code to be :

<?php if(JRequest::getCmd('Itemid') != 1 ) {?>
<link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?>/css/mycss.css" type="text/css" />
<?php } ?>

That would do it.

深空失忆 2024-11-12 12:04:34

在您的“index.php”或“home in joomla”中仅包含“template.css”文件

<link href="template.css" type="text/css" rel="stylesheet" />

在您的“其他文件”中仅包含“mycss.css”文件

<link href="mycss.css" type="text/css" rel="stylesheet" />

希望我正确理解了问题

In your "index.php" or "home in joomla" include only the "template.css" file

<link href="template.css" type="text/css" rel="stylesheet" />

In your "other Files" include ony the "mycss.css" file

<link href="mycss.css" type="text/css" rel="stylesheet" />

Hope I understood the question right

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文