[Joomla] Slidemenu i problem przy krótkich adresach

Rozwiązanie:

Problem rozwiązać można w bardzo prosty sposób dodając do kodu skryptu bezwzględną ścieżkę dostępu do pliku. Jest to jednak działanie doraźne, które w przypadku ewentualnej zmiany adresu skryptu będzie wymagać każdorazowo korekty.

Niestety autorzy nie przewidzieli takiego problemu, jednak w związku z faktem, iż moduł dostępny jest w formie otwartego oprogramowania przygotowałem poniższy uzupełniający skrypt dzięki któremu w przyszłości zaoszczędzimy troche czasu.

Skrypt wykonany jest w JavaScript, gdyż jest uzupełnieniem już istniejącego skryptu głównego.

 

1. Otwieramy plik \modules\mod_slidemenu\ddlevelsfiles\ddlevelsmenu.js

W pierwszej kolejności dodajemy na samym początku w linii mniej więcej 32 poniższy kod:

var strona = self.location.href;
var splits = strona.split("/");
var i = 0;
var adres = "";
while (i < splits.length-1)
{
if(splits[i] != "index.php")
{
var adres = adres+splits[i]+"/";
}
else{
var jestindex = 1;
var adres1 = adres;
}
++i;
}
if(jestindex == 1){

adresok = adres1;

}
else {

adresok = adres;

}

 

Po poprawnym wklejeniu kodu pozostaje jeszcze dodanie nowej zmiennej modyfikującej adres prowadzący do zmiennej.

 

Odnajdujemy poniższy fragment kodu, który znajdować się powinien tuż pod wklejonym wcześniej skryptem

arrowpointers:{
downarrow: ["modules/mod_slidemenu/ddlevelsfiles/arrow-down.gif", 11,7], //[path_to_down_arrow, arrowwidth, arrowheight]
rightarrow: ["modules/mod_slidemenu/ddlevelsfiles/arrow-right.gif", 12,12], //[path_to_right_arrow, arrowwidth, arrowheight]
showarrow: {toplevel: true, sublevel: true} //Show arrow images on top level items and sub level items, respectively?
},

 

Następnie zamieniamy go na:

arrowpointers:{
downarrow: [adresok+"modules/mod_slidemenu/ddlevelsfiles/arrow-down.gif", 11,7], //[path_to_down_arrow, arrowwidth, arrowheight]
rightarrow: [adresok+"modules/mod_slidemenu/ddlevelsfiles/arrow-right.gif", 12,12], //[path_to_right_arrow, arrowwidth, arrowheight]
showarrow: {toplevel: true, sublevel: true} //Show arrow images on top level items and sub level items, respectively?
},

 

 

 

Podsumowanie:

Gdy wykonamy powyższe kroki nie pozostaje nic innego jak tylko poprawne zapisanie zmian, publikacja i odświeżenie strony. Moduł powinien działać poprawnie zarówno w trybie standardowym, oraz w trybie skróconych adresów.

 

Pobierz aktualną wersję:

Moduł SlideMenu v2.2 - wersja poprawiona

 

Dane techniczne:

W testach użyte zostały:

Joomla 1.5.14

SlideMenu

Dodaj komentarz

Kod antyspamowy
Odśwież



Twój koszyk jest pusty

Odsłony:
207321
Wszelkie prawa zastrzeżone. Copyright © 2009 - 2017 Maciej Kaleta