joomla 2.5修改后端组件

时间:2012-11-12 01:02:40

标签: templates joomla override custom-backend

我想做下一件事:

我正在开发一个Joomla网站,其背景显示一些图像。

我想要的是根据显示的网站部分显示不同的图像,例如:

HOME: ../images/img1.jpg ../图像/ img2.jpg

关于我们: ../images/img3.jpg ../图像/ img4.jpg

我想在后端的“编辑菜单项”布局上使用某种覆盖来添加一些新字段,我选择要显示的部分的图片,然后将这些文件作为HTML输出到模板。

有办法做到这一点吗?

或者可能有更简单的方法。

4 个答案:

答案 0 :(得分:2)

这不是你需要为Joomla编写代码所需的东西,因为有很多方法可以使用模板样式变体(2.5+)或各种扩展来实现这一点。

多年来,当我们需要一个简单的解决方案时,我们使用了“Menu Dependent Items”扩展,并且它可以在1.5-> 2.5上工作。

答案 1 :(得分:0)

如果我理解你的问题

<?php
$menu = &JSite::getMenu();
$menuItem = $menu->getActive();

print_r($menuItem);
?>

根据您所在的菜单,您可以输出CSS。如果您有任何问题,请告诉我。

答案 2 :(得分:0)

我同意使用模板样式。

复制模板并将背景图像的新参数添加到template.xml。 然后添加代码以将图像插入到index.php中以获取模板。

然后为您要使用的每个图像创建一个样式。

将适当的样式分配给相应的菜单项。

答案 3 :(得分:0)

这可能对你有帮助....

首先,您必须在administrator/components/com_menus/models/forms/item.xml

中创建一个字段

示例

<field name="your_fieldname" type="media"
                label="fieldname"
                description="Give your field description" />

administrator/components/com_menus/views/item/tmpl/edit.php

中添加此行
<li><?php echo $this->form->getLabel('your_fieldname'); ?>
<?php echo $this->form->getInput('your_fieldname'); ?></li>

yourtableprefix_menu中添加一个字段,字段名称必须是您的字段名称。

<强>加

在文件includes/menu.php中,函数load()

在以下行中添加您的字段名

$query->select('m.id, m.menutype, m.title, m.alias, m.path AS route, m.link, m.type, m.level, m.language,m.our_image');

我添加m.our_image,您可以添加您的字段名

index.php档案

$menu = &JSite::getMenu();
$menuItem = $menu->getActive();
print_r($menuItem); 
echo $menuItem->your_fieldname; //for get the particular value