2012-12-07 27 views
8

Próbuję przesłonić com_content/views/article/plik view.html.php w Joomla korzystając z instrukcji podanych w tym pageZastępowanie plików rdzeń komponent Joomla

mówi muszę utworzyć folder o nazwie „Kod "w katalogu głównym i utworzyć tę samą strukturę katalogów. Próbowałem, ale nie działa. Czy ktoś może potwierdzić, czy działa.

Gdzie powinienem utworzyć folder z kodami? Czy to jest root instalacji joomla?

PS Ta zmiana działa poprawnie po naniesieniu na pliku rdzenia

+0

Możesz próbowano robić metodę szablonów, jak również? – Lodder

+1

Metoda szablonów również nie działa. Myślę, że metoda szablonowa może tylko zastąpić pliki default.php w folderze tmpl. – Ajith

+1

Jakiej wersji Joomla używasz? – Elin

Odpowiedz

1

Nie można zastąpić kontrolerów składowych, modele i widoki z rdzenia Joomla! bez używania wtyczki innej firmy.

Wtyczka trzeba można znaleźć tutaj: http://extensions.joomla.org/extensions/style-a-design/templating/15611

Folder kod następnie przechodzi w katalogu głównym Joomla chyba że nadrzędny widok back-end, w którym sprawa idzie do/administratora

Nadziei to pomaga :)

6

Możesz zastąpić (prawie) dowolną klasę w Joomla, jeśli twoja klasa z ma to samo imię, co jest ładowana jako pierwsza. Aby to zapewnić, musisz utworzyć wtyczkę systemową.

Oto przykład dla root/components/com_content/views/article/view.html.php:

class plgSystemOverride extends JPlugin 
{ 
    public function onAfterRoute() 
    { 
     JLoader::register('ContentViewArticle', 'path/to/override.php', true); 
    } 
} 

zastrzeżenie: Zastępowanie klasy bazowej może prowadzić do problemów z innymi rozszerzeniami, jeśli jesteś niezbyt ostrożny. Jednak w przypadku widoków mniejsze jest prawdopodobieństwo interferencji z innymi rozszerzeniami.

+1

Awesomesauce. Niezła odpowiedź – pal4life