Strona główna forum Wsparcie Konfiguracja Gdzie edytować linki z nagłówka strony?

Gdzie edytować linki z nagłówka strony?

Wszystko o konfiguracji, możliwościach i ustawieniach...


Posty: 25
Lokalizacja: Gdynia
Gadu-Gadu: 7272853

Obrazek
Obrazek

Gdzie można edytować (dodawać usuwać) powyższe linki?
Aktualnie używana wersja Magento 1.2.0.1

Gdzie edytować linki z nagłówka strony?

PostTeraz jest 28 mar 2024, o 20:20
Google

Posty: 427
Lokalizacja: Internet


Posty: 41
Lokalizacja: Gdynia
Gadu-Gadu: 1503284

Witam Bart119,
Aby dodać/ edytować linki w headerze (top links) musisz "pobawic" sie troszke layoutem. Podam przyklad zeby ci rozjasnic o co chodzi.
Top links (bo o nich mowa) generowane sa przez nastepujacy template:
frontend/default/default/template/page/template/links.phtml

Korzysta on z metody getLinks(). W skrocie mowiac ta metoda pobiera wszystkie linki, ktore zdefiniujesz w layoucie (plikach *.xml w frontend/default/default/layout).
I tak na przyklad link moje konto (My account) zdefiniowany jest w customer.xml w domyślnym uchwycie (default - czyli tym ktory wyswietla zawartosc wszystkich stron w magento frontend):
    <default>

        <!-- Mage_Customer -->
        <reference name="top.links">
            <action method="addLink" translate="label title" module="customer"><label>My Account</label><url helper="customer/getAccountUrl"/><title>My Account</title><prepare/><urlParams/><position>10</position></action>
        </reference>
    </default>

W uchwycie (handlerze czy jak go nazwiesz) <customer_logged_in> hest umieszczony kolejny link do Wylogowania sie itd.
Jak widac aby dodac kolejny link do wyswietlenia nalezy uzyc konwencji pokazanej wyzej w przykladzie i wskazac funkcje, ktora zwroci ci link (sama tresc odnosnika - czyli adres docelowy). Funkcje te znajduja sie w helperach. Dla powyzszeho przykladu bedzie to plik code/core/Mage/Customer/Helper/Data.php i w nim znajdziesz funkcje:
    public function getAccountUrl()
    {
        return $this->_getUrl('customer/account');
    }

A wiec by dodac swoj link:
1. Zdefiniuj w helperze odpowiednia funkcje zwracajaca adres linka.
2. Dodaj odpowiednia akcje (addLink) do bloku top.links.

Przyklad (dopisalem link "Moj link" do http://www.google.com):
W code/core/Mage/Customer/Helper/Data.php dopisz funkcje:
    public function getMyUrl()
    {
        return 'http://www.google.com';
    }


W frontend/default/default/layout/customer.xml dodaj akcje dla bloku top.links w defaultowym handlerze:
    <default>

        <!-- Mage_Customer -->
        <reference name="top.links">
            <action method="addLink" translate="label title" module="customer"><label>My Account</label><url helper="customer/getAccountUrl"/><title>My Account</title><prepare/><urlParams/><position>10</position></action>
           
<action method="addLink" translate="label title" module="customer"><label>Moj link</label><url helper="customer/getMyUrl"/><title>My Account</title><prepare/><urlParams/><position>10</position></action>

        </reference>
    </default>


Odswiez frontend i zobacz wynik :)
Mam nadzieje ze ci to pomoze.
Pozdro


Posty: 25
Lokalizacja: Gdynia
Gadu-Gadu: 7272853

Dzięki wielkie o to mi właśnie chodziło.
Aktualnie używana wersja Magento 1.2.0.1


Powrót do Konfiguracja



cron