SlideShare ist ein Scribd-Unternehmen logo
1 von 66
PRZYDATNE NARZĘDZIA
• Edytor tekstu zintegrowany z powłoką systemową – np. Notepad++
• Klient FTP z dodatkowymi opcjami – np. Filezilla
• Parę przeglądarek internetowych – główna Mozilla
• Wtyczki do Mozilli
• Firebug
• Colorzilla
Dodatkowo
• Znajomość CSS, HTML
• Znajomość PHP
• Znajomość frameworka Joomla!
BIAŁY EKRAN – NAJCZĘSTSZE PRZYCZYNY
• Błąd pliku .htaccess
• Błąd plików core
• Nieodświeżona pamięć cache
• Błędne ścieżki do katalogów cache, tmp i logs
• Błąd wpisów w bazie danych
BIAŁY EKRAN – DIAGNOZOWANIE PRZYCZYNY
Co zrobić aby znaleźć problem?
• W System->Konfiguracja globalna->Serwer włączyć Raportowanie błędów na
Maksimum
BIAŁY EKRAN – DIAGNOZOWANIE PRZYCZYNY
Co zrobić aby znaleźć problem?
• Jeśli nie działa pliku configuration.php dodać linijkę
public $error_reporting = 'development';
• Lub w pliku index.php katalogu głównego dodać na jego początku
ini_set('display_errors', TRUE); error_reporting(E_ALL);
• Lub utworzyć w katalogu głównym plik php.ini o zawartości
display_errors = On
error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT
BIAŁY EKRAN – WYNIKI RAPORTOWANIA BŁĘDÓW
BIAŁY EKRAN – NAPRAWA BAZY DANYCH
• Wejdź w Rozszerzenia->Instalacje->Baza danych
• Jeśli widzisz jakieś komunikaty ostrzegawcze naciśnij guzik Napraw
WŁASNY WYGLĄD W PANELU LOGOWANIA
Aby zastosować własne elementy należy wejść do katalogu szablonu używanego
na
zapleczu
• Wyświetlane logo znajduje się w folderze images
• Tło i inne elementy można zmienić w pliku template.css znajdującym się w
katalogu css szablonu zaplecza
Ważne:
Jeśli nie znasz css rozmiar wgrywanego logo niech będzie taki sam, jak
istniejącego
WŁASNY WYGLĄD W PANELU LOGOWANIA
Przykład dla szablonu ISIS
• Logo znajduje się w folderze images
• Tło znajdziecie w katalogu css, plik templates.css
• Linijka 7034 – dodać deklarację
background-image: url("../images/jawor.png");
ZNIKAJĄCE KLASY CSS
Dlaczego tak się dzieje?
• Szablon frameworkowy ma włączony tryb developerski
• Szablon ma włączoną kompresję Gzip
• Szablon ma włączoną kompresję js i css
• Szablon ma włączoną kompresję LESS
• W Joomla jest włączona kompresja stron
• Aby móc swobodnie zmieniać zapisy w klasach css należy kompresję wyłączyć.
• Zmiany nanoszone bezpośrednio w plikach css mogą być przywracane do stanu
pierwotnego przez framework
• Dodawane klasy wstawiać w zakładce Custom Code w polu do tego
przeznaczonym
JCE – SPRAWDZANIE PISOWNI
Jak to włączyć?
• Na zapleczu należy wejść w Komponenty->JCE Editor->Profiles
• Następnie wybrać aktywny profil, np. Default
• Po wczytaniu profilu przejść do zakładki Plugin Parameters
• Na liście z lewej odnaleźć ikonę Spellchecker i zaznaczyć ją
• Wrócić do góry strony i zaznaczyć parametr State na wartość On
• Zapisać
• Po wejściu w artykuł pojawi się ikona sprawdzania pisowni
NIESFORNE AKAPITY W UKŁADZIE KOLUMNOWYM
p {
text-align: justify;
-webkit-hyphens: auto;
-moz-hyphens: auto;
-ms-hyphens: auto;
hyphens: auto;
}
NIESFORNE ARTYKUŁY – EFEKT DZIAŁANIA HYPENS
WERSJE ARTYKUŁÓW
WERSJE ARTYKUŁÓW
RÓŻNE WERSJE SZABLONU
Co to daje?
• Możliwość ostylowania każdego elementu strony w inny sposób
• Przypisanie innego wyglądu dla danej pozycji menu
Jak to zrobić?
• Wejdź na zapleczu w Rozszerzenia->Szablony
• Wybierz używany na froncie szablon zaznaczając pole przy nim
• Naciśnij przycisk Skopiuj
• Wejdź w kopię szablonu i zmień elementy, które chcesz mieć inne
NAPISYWANIE SZABLONEM
Co daje?
• Naniesione zmiany nie zostaną usunięte wraz z aktualizacją rozszerzenia czy
wersji Joomla!
Jak to zrobić?
• Wejdź w Komponenty->Szablony
• Przy używanym szablonie wybierz element zaznaczony strzałką
• Działa zarówno z szablonami witryny, jak i z szablonami zaplecza
NAPISYWANIE SZABLONEM
NAPISYWANIE SZABLONEM
INSTALOWANIE BEZ PAKIETU INSTALACYJNEGO
Co to daje?
• Zainstalowanie rozszerzeń pobranych z wcześniej stworzonej strony
• Zainstalowanie szablonów z wcześniej stworzonej strony
GOOGLE FONTS BEZ POLSKICH ZNAKÓW
• Zlokalizuj gdzie deklarowane są Twoje czcionki (najczęściej plik index.php lub
któryś z plików css używanego szablonu witryny)
• Najczęściej wygląda to tak
@import 'https://fonts.googleapis.com/css?family=Open+Sans:400,300)';
@import url(http://fonts.googleapis.com/css?family=Roboto+Slab);
• Przejdź do Google Fonts i znajdź używaną na witrynie czcionkę
• Sprawdź czy czcionka posiada obsługę języka polskiego wpisując wyrazy
zawierające polskie znaki diakrytyczne
GOOGLE FONTS BEZ POLSKICH ZNAKÓW
• Wybierz czcionkę naciskając element zaznaczony poniżej
• Wybierz interesujące Cię kroje czcionki – pamiętaj, że im będzie ich więcej,
tym wolniej będzie wczytywała się strona
GOOGLE FONTS BEZ POLSKICH ZNAKÓW
• Aby korzystać z polskich znaków diakrytycznych należy zaznaczyć
• Rezultatem jest wygenerowanie linku, który należy wstawić na stronę
@import
'https://fonts.googleapis.com/css?family=Open+Sans:400,300&subset=latin,latin-ext)';
• Na skróty:
Jeśli masz pewność, że czcionka obsługuje polskie znaki dodaj na końcu jej
deklaracji zmienną &subset=latin,latin-ext
GOOGLE FONTS BEZ POLSKICH ZNAKÓW
Efekt
ZDUPLIKOWANIA TREŚĆ
W przypadku używania w wielu miejscach list kategorii artykułów, itp. elementów
mogą pojawić się duplikaty treści (ten sam element dostępny pod różnymi adresami
URL, co jest bardzo niemile widziane przez roboty indeksujące Google).
Jak sobie poradzić?
• Wejdź na stronę StyleWare i zarejestruj się bezpłatnie
• Po rejestracji pobierz wtyczkę
• Zainstaluj ją i opublikuj
Jeśli wszystko poszło jak należy zamiast szukanych duplikatów treści dostępnych pod
Adresstrony.com/index.php&view=article&article=23 oraz adresstrony.com/index.php/
tresc będzie widoczna tylko jedna wersja
Czy działa to prawidłowo można sprawdzić podglądając kod strony, w którym powinno
pojawić się dla danego wpisu coś takiego:
<link href=„http://adresstrony.com/index.php/tresc” rel=„canonical”” />
WŁASNA STRONA BŁĘDU
• Utwórz artykuł przypisując go do kategorii Uncategorised
• Na liście artykułów, po prawej stronie, znajdziesz jego ID (zapisz je lub zapamiętaj)
• Wpisz w pasku przeglądarki adres
Adresstrony.com/index.php?option=com_content&view=article&id=yy&Itemid=xx
Gdzie xx to numer ID utworzonego wcześniej artykułu
• Jeśli strona się wyświetli poprawnie, wszystko jest ok.
• Teraz w używanym przez siebie szablonie zaplecza edytuj plik error.php lub utwórz go
• Jedyne co powinien posiadać ów plik to
if (($this->error->getCode()) == '404') {
header('Location: ' . JRoute::_("index.php?option=com_content&view=article&id=xx&Itemid=xx", false));
Exit;
}
ZMIANA FORMATU WYŚWIETLANEJ DATY
• Może się zdarzyć, że data w artykułach jest wyświetlana w formacie amerykańskim
• Wejdź w katalog languages/pl-PL poprzez klienta FTP
• Odszukaj plik nazywający się pl-PL.ini
• Najlepiej pobierz go na dysk i otwórz
• Znajdź wartość DATE_FORMAT – po niej występują kolejne wersje formatów daty
DATE_FORMAT_LC="l, d, F Y„
DATE_FORMAT_LC1="l, d, F Y„
DATE_FORMAT_LC2="l, d, F Y H:i„
DATE_FORMAT_LC3="d F Y„
DATE_FORMAT_LC4="d-m-y„
DATE_FORMAT_JS1="d-m-y";
• Domyślnie używany jest DATE_FORMAT_LC, w „” możesz wkleić inny format
Więcej o formatach daty można znaleźć na stronie
.HTACCESS
Bez www i z www
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} ^www.(.+)$ [NC]
RewriteRule ^ %{ENV:PROTO}://%1%{REQUEST_URI} [R=301,L]
</IfModule>
.HTACCESS
Inna wersja PHP
AddHandler application/x-httpd-php54 .php
.HTACCESS
Blokowanie skanerów
RewriteCond %{HTTP_USER_AGENT} ^[Ww]eb[Bb]andit [NC,OR]
Blokowanie odniesień (referencyjne)
RewriteCond %{HTTP_REFERER} free-social-buttions.com [NC,OR]
Blokowanie adresów IP
Deny from 173.192.34.95 – pojedynczy adres
Deny from 65.160.238.176/28 – zakres adresów
.HTACCESS
Cache strony
ExpiresByType image/jpeg "access plus 1 month„
ExpiresByType text/html "access plus 0 seconds„
ExpiresByType font/opentype "access plus 1 month„
ExpiresByType application/javascript "access plus 0 seconds"
DODAWANIE WŁASNEGO KODU
Niebezpieczeństwa:
• Niedoskonałość kodu
• Podatność na ataki
• Wadliwość działania
• Szybkość działania strony
• Brak standardowej integracji z bazą danych
Sourcerer
• Wielokrotne wykorzystanie dla
różnych kodów
• Wstawianie kodu php, js i html
• Kod jest wstawiany wewnątrz
artykułu lub modułu
• Wersja darmowa i płatna
{source} <?php echo 'This text is
placed through
<strong>PHP</strong>!'; ?> {/source}
Add Custom JS
• Możliwość dodania tylko
jednego pliku js
• Obsługuje wyłącznie pliki
javascript
• Pliki jest oddzielnym tworem,
który jest linkowany we wtyczce
• Darmowy
DODAWANIE WŁASNEGO KODU
QUICKSTART
Plusy:
• Widać jak co zrobić
• Możliwość podejrzenia użytych styli css
• Możliwość podglądnięcia sposobu używania dodatków
Minusy:
• Mnóstwo niepotrzebnych elementów
• Znaczne obciążenie bazy danych
QUICKSTART
Co zatem zrobić?
• Zainstaluj quickstart lokalnie
• Zainstaluj czystą wersję Joomla!, na której będziesz pracował
• Podglądaj w QuickStarcie co i jak zrobić i nanoś zmiany na czystej Joomla!
DODAWANIE IKON DO MENU
• Pobierz wtyczkę NS Font Awesome , zainstaluj ją i opublikuj
• Pobierz i zainstaluj RokCandy
• Wejdź w Komponenty->ROkCandy->Macros i utwórz nowe makro guzikiem
NEW
• W polu makro wpisz
[icon]{icon}[/icon]
• W polu Html wpisz
<i class="fa {icon}"></i>
• Zapisz i wyjdź
DODAWANIE IKON DO MENU
• Przejdź do menu->Jakieś menu->Jakaś pozycja menu
• W nazwie menu wstaw na przykład
[icon]fa-user[/icon] About
Pełną listę ikon znajdziesz na http://fontawesome.io/cheatsheet/
DODAWANIE IKON DO MENU
• Przejdź do zakładki Opcje wyglądu strony i wpisz w polu Tytuł strony dla
przeglądarki to, co masz za deklaracją ikony w tytule – w przykładzie jest to
About
• Sprawdź efekt
WIELOJĘZYCZNOŚĆ
Wielojęzyczność w Joomla! można tworzyć ręcznie
Minusy:
• Kopia artykułu dla każdego języka
• Kopia pozycji menu dla każdego języka
• Kopia kategorii dla każdego języka
• Dobre przy niewielkich stronach
• Jeśli Klient sobie tak życzy
FaLang
• Wszystko definiuje się w jednym
miejscu
• Bez zbędnego skakania po
artykułach, modułach i
pozycjach menu
• Znaczne ograniczenie ilości
elementów strony
• Mniejsza baza danych
• Wersja bezpłatna i płatna
Neno
• Zautomatyzowana praca
• Opcja tłumaczenia ręcznego,
automatycznego i
profesjonalnego
• Oprócz treści tłumaczy elementy
Joomla (Porównanie)
• Wsparcie dla ponad 60 języków
• Tłumaczenia profesjonalne
tworzone przez tłumaczy
przysięgłych
WIELOJĘZYCZNOŚĆ
WŁASNY MODUŁ W ARTYKULE
Możliwości:
• {loadposition}
• Dodatki posiadające funkcję Load Module (np. Shortcodes Ultimate)
• Dodatek Modules Anywhere
Ale co w przypadku, gdy chcemy w artykułach lub kategorii utworzyć boksy
reklamowe?
WŁASNY MODUŁ W ARTYKULE
Do dzieła
• Znajdź element components->com_content->views->article->tmpl->default.html
• Skopiuj go do szablonu do katalogu html->com_content->article (możesz również
zmienić nazwę pliku
• W sekcji rozpoczynającej się komentarzem wstaw
$document= JFactory::getDocument();
$renderer= $document->loadRenderer('modules');
$options = array('style' => 'xhtml');
$position= 'reklama-w-artykule';
$position1= 'srodreklama-w-artykule';
$positionx można wstawić dowolną ilość razy, w zależności od potrzeb
WŁASNY MODUŁ W ARTYKULE
• W miejscu, w którym chcesz wyświetlić moduł wstaw kod
<?php echo $renderer->render($position1, $options, null); ?>
• Następnie utwórz moduł Własny HTML wpisując mu jako nazwę pozycji
wartość przypisaną do zmiennej, np. reklama-w-artykule
Ważne!
Nazwa pozycji nie może być nazwą zdefiniowaną w używanym szablonie.
BONUS PIERWSZY
Power .htaccess
Pobierz
Profil Facebook Forum Joomla!
BONUS DRUGI

Weitere ähnliche Inhalte

Was ist angesagt?

ansible kmonticolo bezlogo
ansible kmonticolo bezlogoansible kmonticolo bezlogo
ansible kmonticolo bezlogo
Kamil Monticolo
 

Was ist angesagt? (20)

Motywy dla WordPressa - historia prawdziwa - WordUp Katowice
Motywy dla WordPressa - historia prawdziwa - WordUp KatowiceMotywy dla WordPressa - historia prawdziwa - WordUp Katowice
Motywy dla WordPressa - historia prawdziwa - WordUp Katowice
 
REST API - teoria i praktyka - WordUp Trójmiasto
REST API - teoria i praktyka - WordUp TrójmiastoREST API - teoria i praktyka - WordUp Trójmiasto
REST API - teoria i praktyka - WordUp Trójmiasto
 
REST API - teoria i praktyka - WordUp Warszawa
REST API - teoria i praktyka - WordUp WarszawaREST API - teoria i praktyka - WordUp Warszawa
REST API - teoria i praktyka - WordUp Warszawa
 
Word up warszawa 2015
Word up warszawa 2015Word up warszawa 2015
Word up warszawa 2015
 
Word up łódź kwiecień 2015
Word up łódź   kwiecień 2015Word up łódź   kwiecień 2015
Word up łódź kwiecień 2015
 
Wordpress dla początkujących szkolenie / warsztat 08/10 Wtyczki
Wordpress dla początkujących szkolenie / warsztat 08/10 WtyczkiWordpress dla początkujących szkolenie / warsztat 08/10 Wtyczki
Wordpress dla początkujących szkolenie / warsztat 08/10 Wtyczki
 
Electron + WordPress = ❤
Electron + WordPress = ❤Electron + WordPress = ❤
Electron + WordPress = ❤
 
Błędy userów, niedoróbki koderów
Błędy userów, niedoróbki koderówBłędy userów, niedoróbki koderów
Błędy userów, niedoróbki koderów
 
WP-API - teoria i praktyka - WordUp Trójmiasto #2
WP-API - teoria i praktyka - WordUp Trójmiasto #2WP-API - teoria i praktyka - WordUp Trójmiasto #2
WP-API - teoria i praktyka - WordUp Trójmiasto #2
 
Wordpress dla początkujących szkolenie / warsztat 09/10 migracje, backup, mul...
Wordpress dla początkujących szkolenie / warsztat 09/10 migracje, backup, mul...Wordpress dla początkujących szkolenie / warsztat 09/10 migracje, backup, mul...
Wordpress dla początkujących szkolenie / warsztat 09/10 migracje, backup, mul...
 
Zhakuj swojego Wordpressa, WordUP Trojmiasto
Zhakuj swojego Wordpressa, WordUP TrojmiastoZhakuj swojego Wordpressa, WordUP Trojmiasto
Zhakuj swojego Wordpressa, WordUP Trojmiasto
 
ansible kmonticolo bezlogo
ansible kmonticolo bezlogoansible kmonticolo bezlogo
ansible kmonticolo bezlogo
 
Drupal multisite i domain access - kiedy, jak i dlaczego [PL]
Drupal multisite i domain access - kiedy, jak i dlaczego [PL]Drupal multisite i domain access - kiedy, jak i dlaczego [PL]
Drupal multisite i domain access - kiedy, jak i dlaczego [PL]
 
WordPress 2015 - Wróżby, kabały, przepowiednie - WordUp Trójmiasto #1
WordPress 2015 - Wróżby, kabały, przepowiednie - WordUp Trójmiasto #1WordPress 2015 - Wróżby, kabały, przepowiednie - WordUp Trójmiasto #1
WordPress 2015 - Wróżby, kabały, przepowiednie - WordUp Trójmiasto #1
 
Hugo - make webdev fun again
Hugo - make webdev fun againHugo - make webdev fun again
Hugo - make webdev fun again
 
Serwer internetowy w systemie Linux
Serwer internetowy w systemie LinuxSerwer internetowy w systemie Linux
Serwer internetowy w systemie Linux
 
WordUp Gdynia - Jak tworzyć motywy przyjazne użytkownikom i programistom
WordUp Gdynia - Jak tworzyć motywy przyjazne użytkownikom i programistomWordUp Gdynia - Jak tworzyć motywy przyjazne użytkownikom i programistom
WordUp Gdynia - Jak tworzyć motywy przyjazne użytkownikom i programistom
 
Statycznie czy dynamicznie - infoMEET Wrocław
Statycznie czy dynamicznie - infoMEET WrocławStatycznie czy dynamicznie - infoMEET Wrocław
Statycznie czy dynamicznie - infoMEET Wrocław
 
Poznaj wp-config.php "Ukryte" możliwości.
Poznaj wp-config.php  "Ukryte" możliwości.Poznaj wp-config.php  "Ukryte" możliwości.
Poznaj wp-config.php "Ukryte" możliwości.
 
Dokąd zmierza WordPress?
Dokąd zmierza WordPress?Dokąd zmierza WordPress?
Dokąd zmierza WordPress?
 

Ähnlich wie 20 Joomlasztuczek, które mogą CI się przydać

Specyfikacja modernizacji interfejsu euro sklep
Specyfikacja modernizacji interfejsu   euro sklepSpecyfikacja modernizacji interfejsu   euro sklep
Specyfikacja modernizacji interfejsu euro sklep
dan-tom
 
Specyfikacja modernizacji interfejsu euro sklep
Specyfikacja modernizacji interfejsu   euro sklepSpecyfikacja modernizacji interfejsu   euro sklep
Specyfikacja modernizacji interfejsu euro sklep
dan-tom
 
WordCamp 2011 Magdalena bród
WordCamp 2011 Magdalena bródWordCamp 2011 Magdalena bród
WordCamp 2011 Magdalena bród
bunitas
 
Prezentacja word camp magdabrod
Prezentacja word camp magdabrodPrezentacja word camp magdabrod
Prezentacja word camp magdabrod
bunitas
 

Ähnlich wie 20 Joomlasztuczek, które mogą CI się przydać (20)

Wordpress dla każdego
Wordpress dla każdegoWordpress dla każdego
Wordpress dla każdego
 
Jak tworzyć motywy przyjazne użytkownikom i programistom?
Jak tworzyć motywy przyjazne użytkownikom i programistom?Jak tworzyć motywy przyjazne użytkownikom i programistom?
Jak tworzyć motywy przyjazne użytkownikom i programistom?
 
Własny szablon WordPress
Własny szablon WordPressWłasny szablon WordPress
Własny szablon WordPress
 
Specyfikacja modernizacji interfejsu euro sklep
Specyfikacja modernizacji interfejsu   euro sklepSpecyfikacja modernizacji interfejsu   euro sklep
Specyfikacja modernizacji interfejsu euro sklep
 
Specyfikacja modernizacji interfejsu euro sklep
Specyfikacja modernizacji interfejsu   euro sklepSpecyfikacja modernizacji interfejsu   euro sklep
Specyfikacja modernizacji interfejsu euro sklep
 
M4j1
M4j1M4j1
M4j1
 
M4j1
M4j1M4j1
M4j1
 
HTML with a little CSS
HTML with a little CSS HTML with a little CSS
HTML with a little CSS
 
Jak tworzyć motywy przyjazne użytkownikom i programistom - WordUp Silesia
Jak tworzyć motywy przyjazne użytkownikom i programistom - WordUp SilesiaJak tworzyć motywy przyjazne użytkownikom i programistom - WordUp Silesia
Jak tworzyć motywy przyjazne użytkownikom i programistom - WordUp Silesia
 
WordCamp 2011 Magdalena bród
WordCamp 2011 Magdalena bródWordCamp 2011 Magdalena bród
WordCamp 2011 Magdalena bród
 
WordUp Wrocław #3 2015
WordUp Wrocław #3 2015WordUp Wrocław #3 2015
WordUp Wrocław #3 2015
 
Daj się wyręczyć - Joomla Day Polska 2014
Daj się wyręczyć - Joomla Day Polska 2014Daj się wyręczyć - Joomla Day Polska 2014
Daj się wyręczyć - Joomla Day Polska 2014
 
Okiełznać SEO w WordPress
Okiełznać SEO w WordPressOkiełznać SEO w WordPress
Okiełznać SEO w WordPress
 
Contributor Day - WordCamp Lublin 2017 - przegląd motywów
Contributor Day - WordCamp Lublin 2017 - przegląd motywówContributor Day - WordCamp Lublin 2017 - przegląd motywów
Contributor Day - WordCamp Lublin 2017 - przegląd motywów
 
Najlepsze wtyczki WordPress, które każdy developer powinien mieć
Najlepsze wtyczki WordPress, które każdy developer powinien miećNajlepsze wtyczki WordPress, które każdy developer powinien mieć
Najlepsze wtyczki WordPress, które każdy developer powinien mieć
 
Social media training 26.10.10_wk
Social media training 26.10.10_wkSocial media training 26.10.10_wk
Social media training 26.10.10_wk
 
Prezentacja word camp magdabrod
Prezentacja word camp magdabrodPrezentacja word camp magdabrod
Prezentacja word camp magdabrod
 
Feo w-joomla
Feo w-joomlaFeo w-joomla
Feo w-joomla
 
WordPress dla początkujących
WordPress dla początkującychWordPress dla początkujących
WordPress dla początkujących
 
Framework GavernWP - WordCamp Gdańsk 2012
Framework GavernWP - WordCamp Gdańsk 2012Framework GavernWP - WordCamp Gdańsk 2012
Framework GavernWP - WordCamp Gdańsk 2012
 

20 Joomlasztuczek, które mogą CI się przydać

  • 1.
  • 2.
  • 3. PRZYDATNE NARZĘDZIA • Edytor tekstu zintegrowany z powłoką systemową – np. Notepad++ • Klient FTP z dodatkowymi opcjami – np. Filezilla • Parę przeglądarek internetowych – główna Mozilla • Wtyczki do Mozilli • Firebug • Colorzilla Dodatkowo • Znajomość CSS, HTML • Znajomość PHP • Znajomość frameworka Joomla!
  • 4.
  • 5. BIAŁY EKRAN – NAJCZĘSTSZE PRZYCZYNY • Błąd pliku .htaccess • Błąd plików core • Nieodświeżona pamięć cache • Błędne ścieżki do katalogów cache, tmp i logs • Błąd wpisów w bazie danych
  • 6. BIAŁY EKRAN – DIAGNOZOWANIE PRZYCZYNY Co zrobić aby znaleźć problem? • W System->Konfiguracja globalna->Serwer włączyć Raportowanie błędów na Maksimum
  • 7. BIAŁY EKRAN – DIAGNOZOWANIE PRZYCZYNY Co zrobić aby znaleźć problem? • Jeśli nie działa pliku configuration.php dodać linijkę public $error_reporting = 'development'; • Lub w pliku index.php katalogu głównego dodać na jego początku ini_set('display_errors', TRUE); error_reporting(E_ALL); • Lub utworzyć w katalogu głównym plik php.ini o zawartości display_errors = On error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT
  • 8. BIAŁY EKRAN – WYNIKI RAPORTOWANIA BŁĘDÓW
  • 9. BIAŁY EKRAN – NAPRAWA BAZY DANYCH • Wejdź w Rozszerzenia->Instalacje->Baza danych • Jeśli widzisz jakieś komunikaty ostrzegawcze naciśnij guzik Napraw
  • 10.
  • 11. WŁASNY WYGLĄD W PANELU LOGOWANIA Aby zastosować własne elementy należy wejść do katalogu szablonu używanego na zapleczu • Wyświetlane logo znajduje się w folderze images • Tło i inne elementy można zmienić w pliku template.css znajdującym się w katalogu css szablonu zaplecza Ważne: Jeśli nie znasz css rozmiar wgrywanego logo niech będzie taki sam, jak istniejącego
  • 12. WŁASNY WYGLĄD W PANELU LOGOWANIA Przykład dla szablonu ISIS • Logo znajduje się w folderze images • Tło znajdziecie w katalogu css, plik templates.css • Linijka 7034 – dodać deklarację background-image: url("../images/jawor.png");
  • 13.
  • 14. ZNIKAJĄCE KLASY CSS Dlaczego tak się dzieje? • Szablon frameworkowy ma włączony tryb developerski • Szablon ma włączoną kompresję Gzip • Szablon ma włączoną kompresję js i css • Szablon ma włączoną kompresję LESS • W Joomla jest włączona kompresja stron • Aby móc swobodnie zmieniać zapisy w klasach css należy kompresję wyłączyć. • Zmiany nanoszone bezpośrednio w plikach css mogą być przywracane do stanu pierwotnego przez framework • Dodawane klasy wstawiać w zakładce Custom Code w polu do tego przeznaczonym
  • 15.
  • 16. JCE – SPRAWDZANIE PISOWNI Jak to włączyć? • Na zapleczu należy wejść w Komponenty->JCE Editor->Profiles • Następnie wybrać aktywny profil, np. Default • Po wczytaniu profilu przejść do zakładki Plugin Parameters • Na liście z lewej odnaleźć ikonę Spellchecker i zaznaczyć ją • Wrócić do góry strony i zaznaczyć parametr State na wartość On • Zapisać • Po wejściu w artykuł pojawi się ikona sprawdzania pisowni
  • 17.
  • 18. NIESFORNE AKAPITY W UKŁADZIE KOLUMNOWYM p { text-align: justify; -webkit-hyphens: auto; -moz-hyphens: auto; -ms-hyphens: auto; hyphens: auto; }
  • 19. NIESFORNE ARTYKUŁY – EFEKT DZIAŁANIA HYPENS
  • 20.
  • 23.
  • 24. RÓŻNE WERSJE SZABLONU Co to daje? • Możliwość ostylowania każdego elementu strony w inny sposób • Przypisanie innego wyglądu dla danej pozycji menu Jak to zrobić? • Wejdź na zapleczu w Rozszerzenia->Szablony • Wybierz używany na froncie szablon zaznaczając pole przy nim • Naciśnij przycisk Skopiuj • Wejdź w kopię szablonu i zmień elementy, które chcesz mieć inne
  • 25.
  • 26. NAPISYWANIE SZABLONEM Co daje? • Naniesione zmiany nie zostaną usunięte wraz z aktualizacją rozszerzenia czy wersji Joomla! Jak to zrobić? • Wejdź w Komponenty->Szablony • Przy używanym szablonie wybierz element zaznaczony strzałką • Działa zarówno z szablonami witryny, jak i z szablonami zaplecza
  • 29.
  • 30. INSTALOWANIE BEZ PAKIETU INSTALACYJNEGO Co to daje? • Zainstalowanie rozszerzeń pobranych z wcześniej stworzonej strony • Zainstalowanie szablonów z wcześniej stworzonej strony
  • 31.
  • 32. GOOGLE FONTS BEZ POLSKICH ZNAKÓW • Zlokalizuj gdzie deklarowane są Twoje czcionki (najczęściej plik index.php lub któryś z plików css używanego szablonu witryny) • Najczęściej wygląda to tak @import 'https://fonts.googleapis.com/css?family=Open+Sans:400,300)'; @import url(http://fonts.googleapis.com/css?family=Roboto+Slab); • Przejdź do Google Fonts i znajdź używaną na witrynie czcionkę • Sprawdź czy czcionka posiada obsługę języka polskiego wpisując wyrazy zawierające polskie znaki diakrytyczne
  • 33. GOOGLE FONTS BEZ POLSKICH ZNAKÓW • Wybierz czcionkę naciskając element zaznaczony poniżej • Wybierz interesujące Cię kroje czcionki – pamiętaj, że im będzie ich więcej, tym wolniej będzie wczytywała się strona
  • 34. GOOGLE FONTS BEZ POLSKICH ZNAKÓW • Aby korzystać z polskich znaków diakrytycznych należy zaznaczyć • Rezultatem jest wygenerowanie linku, który należy wstawić na stronę @import 'https://fonts.googleapis.com/css?family=Open+Sans:400,300&subset=latin,latin-ext)'; • Na skróty: Jeśli masz pewność, że czcionka obsługuje polskie znaki dodaj na końcu jej deklaracji zmienną &subset=latin,latin-ext
  • 35. GOOGLE FONTS BEZ POLSKICH ZNAKÓW Efekt
  • 36.
  • 37. ZDUPLIKOWANIA TREŚĆ W przypadku używania w wielu miejscach list kategorii artykułów, itp. elementów mogą pojawić się duplikaty treści (ten sam element dostępny pod różnymi adresami URL, co jest bardzo niemile widziane przez roboty indeksujące Google). Jak sobie poradzić? • Wejdź na stronę StyleWare i zarejestruj się bezpłatnie • Po rejestracji pobierz wtyczkę • Zainstaluj ją i opublikuj Jeśli wszystko poszło jak należy zamiast szukanych duplikatów treści dostępnych pod Adresstrony.com/index.php&view=article&article=23 oraz adresstrony.com/index.php/ tresc będzie widoczna tylko jedna wersja Czy działa to prawidłowo można sprawdzić podglądając kod strony, w którym powinno pojawić się dla danego wpisu coś takiego: <link href=„http://adresstrony.com/index.php/tresc” rel=„canonical”” />
  • 38.
  • 39. WŁASNA STRONA BŁĘDU • Utwórz artykuł przypisując go do kategorii Uncategorised • Na liście artykułów, po prawej stronie, znajdziesz jego ID (zapisz je lub zapamiętaj) • Wpisz w pasku przeglądarki adres Adresstrony.com/index.php?option=com_content&view=article&id=yy&Itemid=xx Gdzie xx to numer ID utworzonego wcześniej artykułu • Jeśli strona się wyświetli poprawnie, wszystko jest ok. • Teraz w używanym przez siebie szablonie zaplecza edytuj plik error.php lub utwórz go • Jedyne co powinien posiadać ów plik to if (($this->error->getCode()) == '404') { header('Location: ' . JRoute::_("index.php?option=com_content&view=article&id=xx&Itemid=xx", false)); Exit; }
  • 40.
  • 41. ZMIANA FORMATU WYŚWIETLANEJ DATY • Może się zdarzyć, że data w artykułach jest wyświetlana w formacie amerykańskim • Wejdź w katalog languages/pl-PL poprzez klienta FTP • Odszukaj plik nazywający się pl-PL.ini • Najlepiej pobierz go na dysk i otwórz • Znajdź wartość DATE_FORMAT – po niej występują kolejne wersje formatów daty DATE_FORMAT_LC="l, d, F Y„ DATE_FORMAT_LC1="l, d, F Y„ DATE_FORMAT_LC2="l, d, F Y H:i„ DATE_FORMAT_LC3="d F Y„ DATE_FORMAT_LC4="d-m-y„ DATE_FORMAT_JS1="d-m-y"; • Domyślnie używany jest DATE_FORMAT_LC, w „” możesz wkleić inny format Więcej o formatach daty można znaleźć na stronie
  • 42.
  • 43. .HTACCESS Bez www i z www <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTPS} !=on RewriteCond %{HTTP_HOST} ^www.(.+)$ [NC] RewriteRule ^ %{ENV:PROTO}://%1%{REQUEST_URI} [R=301,L] </IfModule>
  • 44. .HTACCESS Inna wersja PHP AddHandler application/x-httpd-php54 .php
  • 45. .HTACCESS Blokowanie skanerów RewriteCond %{HTTP_USER_AGENT} ^[Ww]eb[Bb]andit [NC,OR] Blokowanie odniesień (referencyjne) RewriteCond %{HTTP_REFERER} free-social-buttions.com [NC,OR] Blokowanie adresów IP Deny from 173.192.34.95 – pojedynczy adres Deny from 65.160.238.176/28 – zakres adresów
  • 46. .HTACCESS Cache strony ExpiresByType image/jpeg "access plus 1 month„ ExpiresByType text/html "access plus 0 seconds„ ExpiresByType font/opentype "access plus 1 month„ ExpiresByType application/javascript "access plus 0 seconds"
  • 47.
  • 48. DODAWANIE WŁASNEGO KODU Niebezpieczeństwa: • Niedoskonałość kodu • Podatność na ataki • Wadliwość działania • Szybkość działania strony • Brak standardowej integracji z bazą danych
  • 49. Sourcerer • Wielokrotne wykorzystanie dla różnych kodów • Wstawianie kodu php, js i html • Kod jest wstawiany wewnątrz artykułu lub modułu • Wersja darmowa i płatna {source} <?php echo 'This text is placed through <strong>PHP</strong>!'; ?> {/source} Add Custom JS • Możliwość dodania tylko jednego pliku js • Obsługuje wyłącznie pliki javascript • Pliki jest oddzielnym tworem, który jest linkowany we wtyczce • Darmowy DODAWANIE WŁASNEGO KODU
  • 50.
  • 51. QUICKSTART Plusy: • Widać jak co zrobić • Możliwość podejrzenia użytych styli css • Możliwość podglądnięcia sposobu używania dodatków Minusy: • Mnóstwo niepotrzebnych elementów • Znaczne obciążenie bazy danych
  • 52. QUICKSTART Co zatem zrobić? • Zainstaluj quickstart lokalnie • Zainstaluj czystą wersję Joomla!, na której będziesz pracował • Podglądaj w QuickStarcie co i jak zrobić i nanoś zmiany na czystej Joomla!
  • 53.
  • 54. DODAWANIE IKON DO MENU • Pobierz wtyczkę NS Font Awesome , zainstaluj ją i opublikuj • Pobierz i zainstaluj RokCandy • Wejdź w Komponenty->ROkCandy->Macros i utwórz nowe makro guzikiem NEW • W polu makro wpisz [icon]{icon}[/icon] • W polu Html wpisz <i class="fa {icon}"></i> • Zapisz i wyjdź
  • 55. DODAWANIE IKON DO MENU • Przejdź do menu->Jakieś menu->Jakaś pozycja menu • W nazwie menu wstaw na przykład [icon]fa-user[/icon] About Pełną listę ikon znajdziesz na http://fontawesome.io/cheatsheet/
  • 56. DODAWANIE IKON DO MENU • Przejdź do zakładki Opcje wyglądu strony i wpisz w polu Tytuł strony dla przeglądarki to, co masz za deklaracją ikony w tytule – w przykładzie jest to About • Sprawdź efekt
  • 57.
  • 58. WIELOJĘZYCZNOŚĆ Wielojęzyczność w Joomla! można tworzyć ręcznie Minusy: • Kopia artykułu dla każdego języka • Kopia pozycji menu dla każdego języka • Kopia kategorii dla każdego języka • Dobre przy niewielkich stronach • Jeśli Klient sobie tak życzy
  • 59. FaLang • Wszystko definiuje się w jednym miejscu • Bez zbędnego skakania po artykułach, modułach i pozycjach menu • Znaczne ograniczenie ilości elementów strony • Mniejsza baza danych • Wersja bezpłatna i płatna Neno • Zautomatyzowana praca • Opcja tłumaczenia ręcznego, automatycznego i profesjonalnego • Oprócz treści tłumaczy elementy Joomla (Porównanie) • Wsparcie dla ponad 60 języków • Tłumaczenia profesjonalne tworzone przez tłumaczy przysięgłych WIELOJĘZYCZNOŚĆ
  • 60.
  • 61. WŁASNY MODUŁ W ARTYKULE Możliwości: • {loadposition} • Dodatki posiadające funkcję Load Module (np. Shortcodes Ultimate) • Dodatek Modules Anywhere Ale co w przypadku, gdy chcemy w artykułach lub kategorii utworzyć boksy reklamowe?
  • 62. WŁASNY MODUŁ W ARTYKULE Do dzieła • Znajdź element components->com_content->views->article->tmpl->default.html • Skopiuj go do szablonu do katalogu html->com_content->article (możesz również zmienić nazwę pliku • W sekcji rozpoczynającej się komentarzem wstaw $document= JFactory::getDocument(); $renderer= $document->loadRenderer('modules'); $options = array('style' => 'xhtml'); $position= 'reklama-w-artykule'; $position1= 'srodreklama-w-artykule'; $positionx można wstawić dowolną ilość razy, w zależności od potrzeb
  • 63. WŁASNY MODUŁ W ARTYKULE • W miejscu, w którym chcesz wyświetlić moduł wstaw kod <?php echo $renderer->render($position1, $options, null); ?> • Następnie utwórz moduł Własny HTML wpisując mu jako nazwę pozycji wartość przypisaną do zmiennej, np. reklama-w-artykule Ważne! Nazwa pozycji nie może być nazwą zdefiniowaną w używanym szablonie.
  • 64.
  • 66. Profil Facebook Forum Joomla! BONUS DRUGI