PDA

Zobacz pełną wersję : [VM][Artio JoomSef] Uszkodzone linki w podkategoriach



vereb
06-02-2012, 16:00
Joomla: 1.5.23
VM: 1.4.4
Artio JoomSEF: 3.9.2 z rozszerzeniem dla VM

Witam, mam problem z linkami do podkategorii. Problem występuje na stronie wyświetlającej kategorie.

Dziwne zachowanie linkowania jakie zauważyłem objawia się następująco:
- przy czystym cache'u (po wyczyszczeniu w przeglądarce i w komponencie Artio) linki elegancko działają zarówno w menu (moduł mod_vm_prod_cat_full) jak i w wyświetlaniu kategorii - z linkami do podkategorii;
- mając otwartą którąś z kategorii zawierającą podkategorie wystarczy raz kliknąć w link z podkategorią i po przeładowaniu strony i ponownym wejściu na stronę z kategorią link już nie działa - w źródle w miejscu gdzie powinien być poprawny link jest tylko <a href="/"
- linkowanie w menu (moduł mod_vm_prod_cat_full) działa cały czas dobrze
- linkowanie podkategorii w widoku kategorii dla niektórych produktów przestaje działać i prowadzi na stronę główną.

Z analizy budowania linków wspomniany moduł tworzy linki używając:

$itemid = ($itemid ? '&Itemid='.$itemid : '');

$link = JFilterOutput::ampReplace(JRoute::_('index.php?opt ion=com_virtuemart'

.'&page=shop.browse&category_id='.$row->category_id . $itemid ));
Budowanie linków przez VM przy wyświetlaniu podkategorii:

<a title="<?php echo $category["category_name"] ?>" href="<?php $sess->purl(URL."index.php?option=com_virtuemart&amp;page=shop.browse&amp;c ategory_id=".$category["category_id"]) ?>">


Wynika z tego, że moduł bierze elementy z bazy danych, a Vm z sesji? dobrze rozumiem? Może o to chodzić?
Czy może trzeba zmienić coś w Artio?
Ah, i jeszcze jedno, czy lepiej włączyć czy wyłączyć cache w Artio?

---------- Post dodany o 15:00 ---------- Poprzedni post był o 13:12 ----------

Poniekąd rozwiązałem problem - zasada jest taka:
1. Automatycznie generują nam się przyjazne linki
2. Linki z różnych menu dodają na końcu nr linka (menu ma id=1 - link ma postać www.strona.pl/kategoria/linki-1) - tak to jest u mnie skonfigurowane - niestety tworzy to dużą liczbę linków o identycznej treści, co nie jest dobre przy pozycjonowaniu, więc:
3. Przy adresie ogólnym, w polu "aliases" pododawałem linki, które uznałem za powielone z myślą, aby wskazywały one tylko jeden adres (np. mam ogólny link.html, a artio tworzy mi duplikaty w postaci: link-1.html, link-2.html, link-28.html. itd. więc w aliasach wrzuciłem wszystkie linki posiadające dodatkowy przyrostek)
4. o ile sprawdza się to przy produktach, to przy menu już nie - czasem tworzą się pętle przekierowań 301, czasem puste przekierowania 301 - wtedy wyświetla się strona głowna (link w postaci <a href="/")

Rozwiązaniem jest sprawdzenie przekierowań i aliasów i usunięcie tych, które powodują konflikt (czyli w sumie tych, które odpowiadają za odnośniki do menu).

Robota żmudna, bo trzeba:
1. sprawdzić który z linków wywala na stronę główną
2. wyczyścić cache
3. przed kliknięciem sprawdzić jaki link kryje się pod odnośnikiem do podkategorii
4. poszykać aliasów, przekierowań i linków z tego właśnie adresu
5. pousuwać aliasy, tak, aby nie było konfliktu
6. wyczyścić cache i sprawdzić czy działa
7. jeśli nie wracamy do pkt. 3 (lub 2 jeśli klikneliśmy)

Mam nadzieje że komuś się przyda