PDA

Zobacz pełną wersję : problem z wyglądem strony.



michal09
30-06-2010, 11:29
witam,
Mam problem z szablonem strony i chcialbym prosic o mala pomoc/ podpowiedz. jestem nowy na forum, wiec nie wiem czy to dobre miejce to szukania pomocy, ale juz raz spytalem i sie nie zawiodłem :)
Tu jest aktualny wyglad strony: http://michal.byethost22.com

Wyglad projektowalem sam. Jeszcze nie jest skonczone, wiec wyglada bardzo topornie ale utknąłem na czymś innym i nie moge tego rozwiązac.

Problem polega na tym, ze po kliknieciu na link cala strona ładuje się od nowa ( a chciałem, żeby ładowała się tylko konkretny artykuł.

Jak wspomniałem wygląd projektowałem sam w większości używając http i css.
Wszystkie objekty ( lub moduły) chciałem umieścic w oddzielnych div'ach a ich własciwosci okreslic w pliku css.
do liknów w menu ( które stworzyłem sam) uzywam takiego kodu:
<div id="about"><ul id="about"><li><a href="index.php?option=com_content&view=article&id=1" title="about">about</a></li></ul></div>

do umieszczenia artykułu na środku strony użyłem
<div id="pane3" class="scroll-pane">
<?php mosMainBody(); ?>
</div>
a do flashnews po lewej stronie użyłem:


<?php if (mosCountModules('left') > 0) { ?>
<div id="left">
<?php mosLoadModules('left', -2); ?>
</div>
<?php } ?>


I wszystko wyswietla się w miarę tak jak tego chcę, z jednym wyjątkiem. Jesli kliknę na "about" lub "process" a pozniej na read more we flashnews, to cala strona się przeładowuje.
Najprawdopodobniej zrobiłem błąd w kodzie "menu". ale niestety nie wiem jak to poprawic.
Jesli ktos wie jak rozwiązac ten poblem to bardzo bym prosił o pomoc.
Dzieki!

vereb
30-06-2010, 11:47
Cześć
Kod wrzucaj do znaczników


post będzie bardziej czytelny.

Jeśli nie używasz ajax'a lub javascript (działających po stronie klienta a nie serwera ) to strona będzie ci się zawsze przeładowywać (przy małych plikach które już zostały ściągnięte na komp klienta może wydawać się że strona się nie przeładowuje, ale nie znaczy to że tak nie jest)

michal09
30-06-2010, 12:48
no ale przeciez jesli uzywam standardowego szablonu Joomla, to strona nie przeładowuje sie cała, tylko wybrany fragment. Ten kod ktory zamiesciłem był wycięty z szablonu joomli i wklejony do mojego szablonu wiec teoretycznie oba szablony powinny działac tak samo prawda? Problem jest tylko w tym, ze sam musiałem stworzyc menu i podłączyc je jakos do joomli. Zrobiłem to używając odnośnika do konkretnego artykułu np.
index.php?option=com_content&view=article&id =1 ale wydaje mi sie ze to był błąd. Każdy jeden fragment menu to oddzielny div i to mi troche komplikuje sprawe i za bardzo nie wiem jak to poprawic.
dzieki

tomaszek83
30-06-2010, 13:52
witam,

Wszystkie objekty ( lub moduły) chciałem umieścic w oddzielnych div'ach a ich własciwosci okreslic w pliku css.
do liknów w menu ( które stworzyłem sam) uzywam takiego kodu:
<div id="about"><ul id="about"><li><a href="index.php?option=com_content&view=article&id=1" title="about">about</a></li></ul></div>

do umieszczenia artykułu na środku strony użyłem
<div id="pane3" class="scroll-pane">
<?php mosMainBody(); ?>
</div>
a do flashnews po lewej stronie użyłem:


<?php if (mosCountModules('left') > 0) { ?>
<div id="left">
<?php mosLoadModules('left', -2); ?>
</div>
<?php } ?>


Ad1. Rozumiem że ścieżkę wygenerował cms czy sam przypisałeś adres w kodzie???
Ad2. http://wiki.joomla.pl/index.php/Tworzenie_podstawowego_pliku_index.php tak deklaruje się moduły!

michal09
30-06-2010, 14:16
sciezke wygenerowal cms a poznej wkleilem go do index.php
dzieki za linka!!

tomaszek83
30-06-2010, 14:21
nie musisz wklejać nic do index.php. W pliku index.php templatki definiujesz tylko pozycję modułów. Nic więcej. Później tylko w zapleczu joomli definiujesz co ma byc na jakiej pozycji. I to wszystko.

michal09
30-06-2010, 15:17
Ja rozumiem. Problem jest w tym, ze u mnie menu to nie moduł i nie mam go jak ustawic. Specjalnie tak zrobilem poniewaz chciałem zeby menu wygladało dokładnie tak jak tego chcę. Tylko ze teraz mam problemy :)
Strona przeładowuje się tylko wtedy, kiedy klikam na "read more" w module po lewej stronie, a pozniej w link w menu ( np about).

vereb
30-06-2010, 18:15
U mnie ta strona przeładowuje się za każdym razem jak nacisnę link, nawet powiem więcej (tak jak pisałem wyżej) każda strona pod joomla! jaką robiłem zawsze (gdy nie używałem ajaxa lub JS o czym pisałem wyżej) się przeładowywała.

Problem z własnym menu i joomla da się rozwiązać w następujący sposób:
1. Tworzysz swoje menu
2. Tworzysz artykuły/sekcje/kategorie (zależy co tam chcesz) które będą odpowiadały linkom z menu
3. Tworzysz menu w joomla i umieszczasz je np. w stopce- menu dokładnie takie jak twoje (chodzi o funkcjonalność)
4. Do twojego menu podpinasz linki które występują w menu z joomli (czyli do a href="..." wpisujesz adresy z joomli)
5. Jeśli nie potrzebujesz menu w stopce poprostu je wyłączasz

tomaszek83
30-06-2010, 19:14
a po co paskudzić index.php ???? może lepiej niech joomla sama wygeneruje menu, niech menu będzie modułem. A wygląd osiągnąć można za pomocą CSS. Wystarczy przypisać odpowiednie klasy do każdej pozycji menu. Każda pozycja menu ma unikalny ItemID. Wystarczy ze dla każdego ID zdefiniujesz odpowiednią klasę. Po co kombinować pod górkę.

vereb
30-06-2010, 19:20
Zgadzam się, lepiej żeby wszystko było dynamiczne i w pełni edytowalne.

michal09
30-06-2010, 19:24
heh... ja tez sie zgadzał. Będe starał się to zmienic. Dzieki za pomoc. A jeszcze jedno. Bo teraz ta strona jest na wolnym, darmowym serwerze. Myslicie ze to przeladowywanie strony dalej bedzie takie widoczne, czy raczej nie powinno byc zauwazalne? A jesli bedzie widoczne, to czy znacie jakas stronke gdzie moglbym znalezc pomoc?
dzieki

vereb
30-06-2010, 19:34
Wszystko zależy od zawartości, poczytaj o optymalizacji kodu, joomli, css. Pamiętaj że najpierw są wczytywane teksty, potem reszta. Szybki serwer nie gwarantuje szybkiego transferu, jest wiele czynników wpływających na wygląd strony u klienta (jego sprzęt, przeglądarka).