Sooo anbei die Anleitung für das Startmenü (image menü) + dem neuen untermenü (das menü das angezeigt wird, wenn man nicht auf der startseite ist)
Benötigte Scripte:
http://web9.cpsrv01.agentur2c.net/out/azure/src/js/libs/jquery.easing.1.3.js
http://web9.cpsrv01.agentur2c.net/out/azure/src/js/libs/jquery.bgImageMenu.js
[B]Die Schritte[/B]
[B]1. neue Datei namens StartMenu.tpl in “/out/azure/tpl/widget” mit folgendem Inhalt erstellen:[/B]
[{oxscript include="js/libs/jquery.easing.1.3.js"}]
[{oxscript include="js/libs/jquery.bgImageMenu.js"}]
<div id="sbi_container" class="sbi_container" style="width:960px;height:568px;">
[{foreach from=$oxcmp_categories item=ocat key=catkey name=root}]
[{if $ocat->getIsVisible() }]
<div class="sbi_panel" data-bg="[{$ocat->getThumbUrl()}]">
<a href="[{$ocat->getLink()}]" class="sbi_label">[{$ocat->oxcategories__oxtitle->value}]</a>
<div class="sbi_content">
<ul>
[{foreach from=$ocat->getSubCats() item=osubcat key=subcatkey name=SubCat}]
[{if $osubcat->getIsVisible() }]
<li><a href="[{$osubcat->getLink()}]">[{$osubcat->oxcategories__oxtitle->value}]</a></li>
[{/if}]
[{/foreach}]
</ul>
</div>
</div>
[{/if}]
[{/foreach}]
</div>
- neue Datei namens MenuNew.tpl in “/out/azure/tpl/widget” mit folgendem Inhalt erstellen:
<ul id="oe_menu" class="oe_menu">
[{foreach from=$oxcmp_categories item=ocat key=catkey name=root}]
[{if $ocat->getIsVisible() }]
<li><a href="[{$ocat->getLink()}]">[{$ocat->oxcategories__oxtitle->value}]</a>
<div>
[{foreach from=$ocat->getSubCats() item=osubcat key=subcatkey name=SubCat}]
[{if $osubcat->getIsVisible() }]
<ul>
<li class="oe_heading">[{$osubcat->oxcategories__oxtitle->value}]</li>
[{foreach from=$osubcat->getSubCats() item=osubcat2 key=subcatkey name=SubCat}]
[{if $osubcat2->getIsVisible() }]
<li><a href="[{$osubcat2->getLink()}]">[{$osubcat2->oxcategories__oxtitle->value}]</a></li>
[{/if}]
[{/foreach}]
</ul>
[{/if}]
[{/foreach}]
</div>
</li>
[{/if}]
[{/foreach}]
</ul>
[B]3. in der “/out/azure/tpl/header.tpl” den eintrag des Menüs suchen (topcategories.tpl glaube ich) und ersetzen mit:[/B]
[{if $oView->getClassName() == 'start'}]
[{include file="widget/StartMenu.tpl"}]
[{else}]
[{include file="widget/MenuNew.tpl"}]
[{oxid_include_dynamic file="widget/minibasket/minibasket.tpl"}]
[{oxid_include_dynamic file="widget/minibasket/minibasketmodal.tpl"}]
[{include file="widget/header/search.tpl"}]
[{/if}]
[B]4. eine datei zum initalisieren aller javascript dateien erstellen. in meinem fall ist dies /out/azure/src/js/libs/init-all.js mit folgendem inhalt:[/B]
$(document).ready(function()
{
initEvents();
});
// start after user input >= 3 chars
var startSuggest = 3;
/* Init basic events and effects */
function initEvents()
{
initStartMenu();
initBottomMenu();
initMenuNew();
initAutoSuggest();
}
function initStartMenu() {
$('#sbi_container').bgImageMenu({
defaultBg : '/out/azure/img/default.jpg',
border : 1,
height : 568,
width : 960,
type : {
mode : 'seqHorizontalSlide',
speed : 250,
easing : 'jswing',
seqfactor : 100
}
});
}
function initBottomMenu() {
$('#sti-menu').iconmenu();
}
function initMenuNew() {
var $oe_menu = $('#oe_menu');
var $oe_menu_items = $oe_menu.children('li');
$oe_menu_items.bind('mouseenter',function(){
var $this = $(this);
$this.addClass('slided selected');
$this.children('div').css('z-index','9999').stop(true,true).slideDown(200,function(){
$oe_menu_items.not('.slided').children('div').hide();
$this.removeClass('slided');
});
}).bind('mouseleave',function(){
var $this = $(this);
$this.removeClass('selected').children('div').css('z-index','1');
});
$oe_menu.bind('mouseenter',function(){
var $this = $(this);
$this.addClass('hovered');
}).bind('mouseleave',function(){
var $this = $(this);
$this.removeClass('hovered');
$oe_menu_items.children('div').hide();
})
}
function initAutoSuggest()
{
$('#searchparam').bind('keyup', function() { autoSuggest(); } );
$('#searchparam').focus(function() { $('#searchparam').val(" "); } );
$('#searchparam').blur(function() { $('#searchparam').val("Suchbegriff eingeben"); } );
$('body').click(function() { $('#results').slideUp(); } );
}
- dann noch die ini-all.js in der base.tpl eintragen(an der stelle an der alle scripte eingetragen werden):
[{oxscript include='js/libs/init-all.js'}]
[B]… weiter im nächsten post[/B]