ThemesFaq:Wlasne szablony dla joggera

Z JoggerWiki
Wersja z dnia 20:49, 9 lut 2006 autorstwa Soil (dyskusja | edycje)

(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)
Skocz do: nawigacji, wyszukiwania

Własne szablony dla Joggera


Wprowadzenie

Poniżej przedstawiam skorowidz znaczników, dzięki którym można zrobić swój własny szablon dla joga. Tagi pogrupowane są według bloków w których można je umieszczać (lub w których ma to sens).

Oprócz tego przygotowałem <a href="http://akson.sgh.waw.pl/%7Esm31682/jogger/themes/sample.html">przykładowy szablon</a>, w którym użyłem prawie wszystkich dostępnych znaczników. Mam nadzieję, że zapoznanie się z jego kodem rozwiąże ewentualne problemy.

W razie jakichkolwiek pytań związanych z tworzeniem własnych szablonów - mój <acronym lang="en" xml:lang="en" title="Jabber Identyfier">JID</acronym> to staszyna@chrome.pl. Zapraszam.

Jak to działa?

Znaczniki

W Joggerze większość znaczników wstawia się w specjalne bloki. Bloki mają dwa zadania:

  1. W przypadku wpisów, listy odnośników, listy pozycji archiwum i komentarzy blok pokazuje Joggerowi, którą część szablonu ma powtórzyć wyświetlając kolejny wpis, komentarz itd. Tak więc wszystko co umieścimy w bloku COMMENT_BLOCK będzie powielone wraz z każdym dodanym komentarzem.
  2. Są też trzy bloki, które mają inne zadanie. Chodzi o ADMIN_BLOCK, LOGGED_USER_BLOCK, NOUSER_BLOCK - treść w nich zawarta jest widoczna tylko dla określonych uzytkowników (odpowiednio: dla właściciela, gościa zalogowanego i gościa niezalogowanego). Na przykład, tagi z grupy <ADMIN_[...]_HREF/> można wstawić do bloku <ADMIN_BLOCK>, by zwykli odwiedzający nie widzieli linków administracyjnych.

Niektóre tagi funcjonują zupełnie samodzielnie i mogą zostac użyte wszędzie. Zaliczają sie do nich przede wszystkim <a href="#status">tagi pokazujące status Jabbera, opis i ikonkę dostępności</a> oraz <a href="#inne">4 inne znaczniki</a> (<a href="#jid"><JID/></a>, <a href="#allentrieshref"><ALL_ENTRIES_HREF/></a>, <a href="#commentform"><COMMENT_FORM/></a> i <a href="#customdir"><CUSTOM_DIR/></a>).

Obowiązują dwa sposoby zapisu tagów pojedynczych, tj. takich, które wstawiają określony tekst. Oprócz zwykłego <NAZWA_ZNACZNIKA/>* można napisać &NAZWA_ZNACZNIKA;. Drugiego sposobu można użyć wtedy, gdy tag ma być argumentem jakiegoś atrubutu HTML, dzięki czemu uzyskamy well-formed XML. Np. <img src="<a href="#imagesdir">&CUSTOM_DIR;</a>/obrazek.gif" alt=""/> lub <a href="<a href="#archivehref">&ARCHIVE_HREF;</a>"><a href="#archivehrefdescr"><ARCHIVE_HREF_DESCR/></a></a>

  • - Uwaga: ważne jest, by w zapisie <NAZWA_ZNACZNIKA/> przed znakiem "/" (slash) nie było spacji. Więcej: <a href="http://bugger.jogger.pl/index.php?do=details&id=47" title="Joggerowy system zgłaszania błędów i propozycji.">Bugger - zgłoszenie nr 47</a>.

Co zmienić w ustawieniach?

By Jogger użył niestandardowego schematu, należy zmienić w ustawieniach dwie opcje: Własne szablony dla strony joggera i Własne szablony dla komentarzy. Mamy tam do wyboru dwa różne "tak".

Tak, uproszczony
Kiedyś był to jedyny sposób obsługi szablonów. Polega to na tym, że szablon składa się jedynie z zawartości elementu BODY. Nie należy nawet umieszczać żadnego <acronym lang="en" xml:lang="en" title="Document Type Definition">DTD</acronym>, <head> i tym podobnych. Pominąć trzeba także sam znacznik <body> oraz </body>. Wszystko dlatego, że Jogger sam uzupełni szablon i ostatecznie wyświetli poprawną stronę. Na początek pliku zostanie wstawione np.:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="pl">

<head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <meta name="robots" content="noindex, nofollow">
        <title>Jogger :: staszyna@chrome.pl</title>
        <link rel="StyleSheet" href="custom/staszyna/files/style.css" type="text/css">
</head>

<body>

A na koniec:

</body>
<html>

Plik custom/staszyna/files/style.css to CSS naszego szablonu. Musi być oddzielnym plikiem, bo przy uproszczonych schemtach nie mamy dostępu do elementu HEAD. Dodatkowo można zauważyć, że nie mamy wpływu na DOCTYPE schematu ani na tytuł joga. Drugi problem <a href="http://marcoos.jogger.pl/?startid=200311#e10451">rozwiązał marcoos</a>, pierwszy jest nierozwiązywalny. I właśnie z tego powodu powstał drugi sposób obsługi schematów.

Tak, pełny
Jeśli wybierzemy tę opcję, Jogger nie będzie ingerował w kod schematu. Mamy więc pełną swobodę w ustawianiu np. DTD, znaczników meta, tytułu, elementów LINK, języka joga itd. Dwie wskazówki:

  1. zalecane jest, by wstawić następujący znacznik meta: <meta name="robots" content="noindex, nofollow" />. <a href="http://www.wired.com/news/business/0,1367,58838,00.html" title="Artykuł na wired.com">Dlatego</a>.
  2. ścieżka do wgranych do Joggera plików stylów CSS to custom/[Twój_nick]/files/nazwa_pliku.css. Można ją wstawić samemu lub po prostu użyć znacznika <a href="#customdir"><CUSTOM_DIR/></a>, który wstawi ścieżkę do katalogu files/. Czyli:
    <link rel="StyleSheet" href="<a href="#customdir">&CUSTOM_DIR;</a>/nazwa_pliku.css" type="text/css" title="Podstawowy styl" />

Dodatkowo, Jogger daje nam możliwość ustawienia typu MIME plików szablonu, dzięki czemu osiągalna jest pełna poprawność XHTML 1.1. W panelu konfiguracyjnym można wybrać przy pozycji Typ MIME następujące opcje: (podaję za marcoosem)

  • text/html - dobry dla HTML 4, dozwolony dla XHTML 1.0
  • application/xhtml+xml - zalecany dla XHTML 1.0, wymagany dla XHTML 1.1, XHTML Basic i pewnie kiedyś XHTML2.0
  • NOWY! application/xml - więcej: <a href="http://bugger.jogger.pl/index.php?do=details&id=57" title="Joggerowy system zgłaszania błędów i propozycji.">Bugger - zgłoszenie nr 57</a> (OK).
  • negocjacja typu mime - jeśli <acronym lang="en" xml:lang="en" title="User Agent">UA</acronym> akceptuje application/xhtml+xml - wyślij jako application/xhtml+xml, jeśli nie - wyślij jako text/html (błędnie, ale żeby działało). Wszystkiemu winne jest oczywiście <acronym lang="en" xml:lang="en" title="Microsoft Internet Explorer">MSIE</acronym>, które w ogóle nie rozumie application/xhtml+xml i pliki XHTML wysłane w ten sposób próbuje zapisać na dysku użytkownika.

Co trzeba przygotować?

Najlepiej przygotować trzy pliki: szablon strony głównej, szablon strony z komentarzami i plik (pliki) CSS. Jeśli nie zrobimy np. strony komentarzy, Jogger użyje zaznaczonego w ustawieniach gotowego schematu. Można też oczywiście style CSS umieścić w sekcji HEAD szablonu, pod warunkiem, że używamy pełnych schematów. Jednak zewnętrzny plik arkusza stylów wydaje się być wygodniejszym rozwiązaniem. Można to także połączyć, ogólne style spiać w oddzielnym pliku, a definicje potrzebne tylko np. do strony komentarzy umieścić już w samym szablonie. Należy tylko pamietać o odpowiednim określaniu w arkuszu stylów ścieżek do obrazków (więcej na ten temat: patrz opis <a href="#customdir"><CUSTOM_DIR/></a>).

Grafikę (do 150KB) można wgrać do Joggera poprzez panel sterowania. W schemacie można uzyć taga <a href="#customdir"><CUSTOM_DIR/></a>, który wstawia ścieżkę do katalogu m. in. z grafiką - custom/[Twój_nick]/files. Znacznik ten nie jest interpretowany w oddzielnych plikach CSS.
Grafika może być oczywiście dowolna, z bardziej nietypowych rzeczy można przygotować favikonę a także dwa pliki, których Jogger będzie używał do pokazywania statusu właściciela. Te dwa pliki muszą nazywać się online.png i offline.png (patrz też: opis <a href="#statusimage"><STATUS_IMAGE/></a>).

Kilka wskazówek

  • Polecam <a href="http://validator.w3.org/">walidator (X)HTML</a> i <a href="http://jigsaw.w3.org/css-validator/">walidator CSS</a>.
  • Nie jest to wymagane w żadnym regulaminie, ale przez internetową uprzejmość można umieścić w szablonie np. taką stopkę:
    Powered by <a href="http://www.jogger.pl">Jogger</a>.
    Copyright (c) 2002-2003 Justin Mecham oraz JabberPL Group.<br />
    Wszystkie prawa zastrzeżone. <a href="http://jogger.pl/info.php?id=legal">Legalność</a>;
    
    <a href="http://www.jogger.pl/about.php">Informacje</a>
  • Dobrze jest zadbać o przejrzysty layout - czytający powinien

    od razu wiedzieć, który wpis czyta, który skomentuje klikając odpowiedni link, a nawet która data odnosi się do którego wpisu.

  • Należy pamiętać o oczach czytelników.
  • Jeśli robicie szablon w poprawnym XHTML, to i tak to zrobicie, ale na wszeli wypadek przypominam o atrybucie alt przy grafice. Jeśli grafika jest wyłącznie dekoracyjna i nie ma wpływu na treść lub działanie użytkownika, należy dodać alt="". Polecam bardzo ciekawy <a href="http://ppewww.ph.gla.ac.uk/%7Eflavell/alt/alt-text.html">artykuł o atrybutach alt</a>.
  • UNIKOD!!! to bardzo wa?ne, nawet je?li jedynym tekstem jaki

    znajdzie si? w czystym szablonie b?dzie stopka. W Windows można albo za pomocą <a href="http://www.republika.pl/jablonka/przewodnik/ogonki.html" title="Strona o programie Ogonki 97">Ogonk?w 97</a>, albo zapisuj?c pliki w systemowym Notatniku z kodowaniem UTF-8. (brak polskich znaków celowy)

Zmiany w nazwach znaczników

By uprościć i ujednolicić nazewnictwo Joggerowych znaczników, zmienione zostały nazwy nastepujących tagów:

ENTRIES_BLOCK --> <a href="#entryblock">ENTRY_BLOCK</a>
ENTRIES_DAY --> <a href="#entrydayblock">ENTRY_DAY_BLOCK</a>
COMMENT_HREF --> <a href="#entrycommenthref">ENTRY_COMMENT_HREF</a>

COMMENT_HREF_DESCR --> <a href="#entrycommnenthrefdescr">ENTRY_COMMENT_HREF_DESCR</a>
USER_LOGIN_HREF --> <a href="#userloginhref">USER_LOG_IN_HREF</a>
USER_BLOCK --> <a href="#loggeduserblock">LOGGED_USER_BLOCK</a>
USER_LOGIN_NAME --> <a href="#loggedusername">LOGGED_USER_NAME</a>
USER_LOGOUT_HREF --> <a href="#loggeduserlogouthref">LOGGED_USER_LOG_OUT_HREF</a>

PUT_JID --> <a href="#jid">JID</a>
IMAGES_DIR --> <a href="#customdir">CUSTOM_DIR</a>

Skorowidz

  • <a href="#entryblock">ENTRY_BLOCK</a>
    • <a href="#entrydayblock">ENTRY_DAY_BLOCK</a>
    • <a href="#entrysubject">ENTRY_SUBJECT</a>
    • <a href="#entrydate">ENTRY_DATE</a>
    • <a href="#entryhour">ENTRY_HOUR</a>
    • <a href="#entryid">ENTRY_ID</a>
    • <a href="#entrylevel">ENTRY_LEVEL</a>
    • <a href="#entrycontent">ENTRY_CONTENT</a>
    • <a href="#entrycommenthref">ENTRY_COMMENT_HREF</a>
    • <a href="#entrycommenthrefdescr">ENTRY_COMMENT_HREF_DESCR</a>
    • <a href="#entryclass">ENTRY_CLASS</a> NOWY!
    • <a href="#entryclassreset">ENTRY_CLASS_RESET</a> NOWY!
    • <a href="#adminentryedithref">ADMIN_ENTRY_EDIT_HREF</a> (opis przy bloku <a href="#adminblock">ADMIN_BLOCK</a>)
    • <a href="#adminentryremovehref">ADMIN_ENTRY_REMOVE_HREF</a> (opis przy bloku <a href="#adminblock">ADMIN_BLOCK</a>)
  • <a href="#archiveblock">ARCHIVE_BLOCK</a>
    • <a href="#archivehref">ARCHIVE_HREF</a>
    • <a href="#archivehrefdescr">ARCHIVE_HREF_DESCR</a>
  • <a href="#linkblock">LINK_BLOCK</a>
    • <a href="#linkhref">LINK_HREF</a>
    • <a href="#linkhrefdescr">LINK_HREF_DESCR</a>
  • <a href="#commentblock">COMMENT_BLOCK</a>
    • <a href="#commentclass">COMMENT_CLASS</a>
    • <a href="#commentnick">COMMENT_NICK</a>
    • <a href="#commentdate">COMMENT_DATE</a>
    • <a href="#commenthour">COMMENT_HOUR</a>
    • <a href="#commentcontent">COMMENT_CONTENT</a>
    • <a href="#admincommentremovehref">ADMIN_COMMENT_REMOVE_HREF</a> (opis przy bloku <a href="#adminblock">ADMIN_BLOCK</a>)
    • <a href="#admincommentblockiphref">ADMIN_COMMENT_BLOCKIP_HREF</a> (opis przy bloku <a href="#adminblock">ADMIN_BLOCK</a>)
  • <a href="#adminblock">ADMIN_BLOCK</a>
    • <a href="#adminentryedithref">ADMIN_ENTRY_EDIT_HREF</a>
    • <a href="#adminentryremovehref">ADMIN_ENTRY_REMOVE_HREF</a>
    • <a href="#admincommentremovehref">ADMIN_COMMENT_REMOVE_HREF</a>
    • <a href="#admincommentblockipthref">ADMIN_COMMENT_BLOCKIP_HREF</a>
  • <a href="#nouserblock">NOUSER_BLOCK</a>
    • <a href="#userloginhref">USER_LOG_IN_HREF</a>
    • <a href="#loginformularz">FORMULARZ</a>
  • <a href="#loggeduserblock">LOGGED_USER_BLOCK</a>
    • <a href="#loggedusername">LOGGED_USER_NAME</a>
    • <a href="#loggeduserlogouthref">LOGGED_USER_LOG_OUT_HREF</a>
  • <a href="#status">status i opis Jabbera</a>
    • <a href="#statustext">STATUS_TEXT</a>
    • <a href="#statusimage">STATUS_IMAGE</a>
    • <a href="#statusdescr">STATUS_DESCR</a>
    • <a href="#statusdescr2">STATUS_DESCR2</a>
  • <a href="#inne">inne</a>
    • <a href="#jid">JID</a>
    • <a href="#allentrieshref">ALL_ENTRIES_HREF</a>
    • <a href="#commentform">COMMENT_FORM</a>
    • <a href="#customdir">CUSTOM_DIR</a>



ENTRY_BLOCK

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#entryblock">utwórz dowiązanie (#)</a>

typ
wymagany tag otwierający i tag zamykający (<ENTRY_BLOCK> ... </ENTRY_BLOCK>)
stosowanie
strona główna joggera
działanie
wstawia wpisy
przykład
<ENTRY_BLOCK>
    <h2 id="<a href="#entryid">&ENTRY_ID;</a>"><a href="#entrysubject"><ENTRY_SUBJECT/></a></h2>

    <p>
      dnia <a href="#entrydate"><ENTRY_DATE/></a>, o godzinie <a href="#entryhour"><ENTRY_HOUR/></a> /
      <a href="<a href="#entrycommenthref">&ENTRY_COMMENT_HREF;</a>"><a href="#entrycommenthrefdescr"><ENTRY_COMMENT_HREF_DESCR/></a>;
      <span <a href="#entrycommenthrefdescr">class="ukryj"</a>> do wpisu <em><a href="#entrysubject"><ENTRY_SUBJECT/></a></em></span></a>

      <ADMIN_BLOCK>
        <span>
  	  <a href="<a href="#adminentryedithref">&ADMIN_ENTRY_EDIT_HREF;</a>">Edytuj</a>,
          <a href="<a href="#adminentryremovehref">&ADMIN_ENTRY_REMOVE_HREF;</a>">Usuń</a>.
  	</span>

      </ADMIN_BLOCK>
    </p>
    <div class="wpis">
      <a href="#entrycontent"><ENTRY_CONTENT/></a>
    </div>
  </ENTRY_BLOCK>
 Efekt można przedstawić następująco:
<big>Najnowszy wpis</big>
<small>dnia 23 czerwca 2004, o godzinie 17:19:34 / Dodaj komentarz</small>
    Lorem ipsum dolor sit amet, consectetuer adipiscing
    elit. Suspendisse wisi. Donec aliquam, erat id 
    tincidunt vehicula, magna augue feugiat diam, a dictum 
    nisl ipsum pulvinar lectus. Mauris eleifend adipiscing 
    libero. Phasellus ut nunc ac urna ultrices vehicula. 
    Duis turpis. Sed ante. Morbi condimentum ultricies quam.
  
<big>Poprzedni wpis</big>
<small>dnia 23 czerwca 2004, o godzinie 12:09:11 / 2 komentarze</small>
    Cras ut lorem venenatis odio euismod adipiscing. 
    Curabitur ut elit sed mi molestie porttitor. Donec et 
    orci ac diam elementum mattis. Mauris purus. Fusce 
    blandit tellus sit amet pede. Fusce eleifend turpis 
    eget mauris. Fusce quis sapien. Sed lacinia. Praesent 
    euismod posuere diam.
      
<big>Wczorajszy wpis</big>
<small>dnia 22 czerwca 2004, o godzienie 02:27:01 / 1 komentarz</small>

    Suspendisse sagittis quam quis enim. Duis a lectus. 
    Aenean ut massa. Aliquam ultrices, erat quis interdum 
    luctus, libero nunc fringilla nibh, sit amet consequat 
    est augue commodo ante. Ut quis risus. Nulla gravida 
    eros. Aliquam mi tortor, sodales vitae, facilisis 
    tempus, vestibulum id, nisl.


ENTRY_DAY_BLOCK

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#entrydayblock">utwórz dowiązanie (#)</a>

typ
znacznik opcjonalny; wymagany tag otwierający i tag zamykający (<ENTRY_DAY_BLOCK> ... </ENTRY_DAY_BLOCK>)
stosowanie
strona główna joggera
działanie
użycie tego znacznika nie jest obowiązkowe. Służy on do grupowania wpisów z jednego dnia, zatem jeśli w projekcie szablonu każdy wpis jest oddzielną jednostką, ten znacznik nie będzie przydatny.
przykład
<a href="#entryblock"><ENTRY_BLOCK></a>
  <div class="dzien">

    <h2>dzień <a href="#entrydate"><ENTRY_DATE/></a> roku:</h2>
    <ENTRY_DAY_BLOCK>
      <h3 id="<a href="#entryid">&ENTRY_ID;</a>">godzina <a href="#entryhour"><ENTRY_HOUR/></a> Temat: <a href="http://akson.sgh.waw.pl/%7Esm31682/jogger/themes/3entrysubject"><ENTRY_SUBJECT/></a></h3>

      <div class="wpis">
        <a href="#entrycontent"><ENTRY_CONTENT/></a>
      </div>

      <p>
        <a href="<a href="http://akson.sgh.waw.pl/%7Esm31682/jogger/themes/entrycommenthref">&ENTRY_COMMENT_HREF;</a>"><a href="#entrycommenthrefdescr"><ENTRY_COMMENT_HREF_DESCR/></a>;
        <span <a href="#entrycommenthrefdescr">class="ukryj"</a>> do wpisu <em><a href="#entrysubject"><ENTRY_SUBJECT/></a></em></span></a>

        <ADMIN_BLOCK>
          <span>
            <a href="<a href="#adminentryedithref">&ADMIN_ENTRY_EDIT_HREF;"></a>Edytuj</a>,
            <a href="<a href="#adminentryremovehref">&ADMIN_ENTRY_REMOVE_HREF;"></a>Usuń</a>.
	  </span>

        </ADMIN_BLOCK>
      </p>
    </ENTRY_DAY_BLOCK>
    <hr />
  </div>
</ENTRY_BLOCK>
 Należy zwrócić uwagę na położenie nagłówka h2 zawierającego znacznik <a href="#entrydate">ENTRY_DATE</a> oraz na położenie poziomej linii <hr />. Efekt można przedstawić następująco:
 
<big>dzień 23 czerwca 2004 roku:</big>
  
  Najnowszy wpis
    Lorem ipsum dolor sit amet, consectetuer adipiscing
    elit. Suspendisse wisi. Donec aliquam, erat id 
    tincidunt vehicula, magna augue feugiat diam, a dictum 
    nisl ipsum pulvinar lectus. Mauris eleifend adipiscing 
    libero. Phasellus ut nunc ac urna ultrices vehicula. 
    Duis turpis. Sed ante. Morbi condimentum ultricies quam.
    <small>Dodaj komentarz</small>
  
  Poprzedni wpis
    Cras ut lorem venenatis odio euismod adipiscing. 
    Curabitur ut elit sed mi molestie porttitor. Donec et 
    orci ac diam elementum mattis. Mauris purus. Fusce 
    blandit tellus sit amet pede. Fusce eleifend turpis 
    eget mauris. Fusce quis sapien. Sed lacinia. Praesent 
    euismod posuere diam.
    <small>2 komentarze</small>

-----------------------------------------------------------
 
<big>dzień 22 czerwca 2004 roku:</big>

  Wczorajszy wpis
    Suspendisse sagittis quam quis enim. Duis a lectus. 
    Aenean ut massa. Aliquam ultrices, erat quis interdum 
    luctus, libero nunc fringilla nibh, sit amet consequat 
    est augue commodo ante. Ut quis risus. Nulla gravida 
    eros. Aliquam mi tortor, sodales vitae, facilisis 
    tempus, vestibulum id, nisl.
    <small>1 komentarz</small>


ENTRY_SUBJECT

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#entrysubject">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <ENTRY_SUBJECT/> lub &ENTRY_SUBJECT;
stosowanie
strona główna joggera (w bloku ENTRY_BLOCK) i szablon komentarzy
działanie
wstawia tytuł wpisu (tytuły dodaje się wysyłając w kliencie Jabbera wpis jako wiadomość, a nie jako czat).

ENTRY_DATE

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#entrydate">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <ENTRY_DATE/> lub &ENTRY_DATE;
stosowanie
strona główna joggera (w bloku ENTRY_BLOCK) i szablon komentarzy
działanie
wstawia datę (dzień, miesiąc (słownie) i rok) wysłania wpisu lub wpisów (patrz <a href="#entrydayblock">wyjaśnienia w opisie bloku ENTRY_DAY_BLOCK</a>).

ENTRY_HOUR

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#entryhour">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <ENTRY_HOUR/> lub &ENTRY_HOUR;
stosowanie
strona główna joggera (w bloku ENTRY_BLOCK) i szablon komentarzy
działanie
wstawia godzinę wysłania wpisu (w formacie GG:MM:SS).

ENTRY_ID

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#entryid">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <ENTRY_ID/> lub &ENTRY_ID;
stosowanie
strona główna joggera (w bloku ENTRY_BLOCK) i szablon komentarzy
działanie
wstawia numer ID wpisu w bazie Joggera. Można tego użyć, by stworzyć zakotwiczenie do wpisu (ang. anchor link). Wstawiany tekst wygląda np. tak: e32726
przykłady
znacznika mozna użyć po prostu w atrybucie id np. nagłowka wpisu:
<h2 id="&ENTRY_ID;"><a href="#entrysubject"><ENTRY_SUBJECT/></a></h2>

Można także zrobić od razu odnośnik do danego wpisu, na wypadek, gdyby ktoś chciał podać doń URL:

<h2 id="&ENTRY_ID;"><a href="#&ENTRY_ID;"><a href="#entrysubject"><ENTRY_SUBJECT/></a></a></h2>

ENTRY_LEVEL

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#entrylevel">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <ENTRY_LEVEL/> lub &ENTRY_LEVEL
stosowanie
strona główna joggera (w bloku ENTRY_BLOCK) i szablon komentarzy
działanie
wstawia liczbę oznaczającą poziom dostępności wpisu. Poziom ten określa się poprzedzając treść wpisu znacznikiem <LEVELx>, gdzie x to liczba od 0 do 10. Poziom 0 oznacza, że wpis będzie widoczne dla każdego, a oprócz tego (i tym różni się od poziomu 1.) zostanie wyświetlony na stronie głównej Joggera, w częsci "Ostatnio dodane wpisy". Poziomy od 2 do 10 są już prywatne, by przeczytać takie wpisy, należy się zalogować.
przykład
Znacznika <ENTRY_LEVEL> można użyć na przykład do określenia koloru tła tytułu w zależności od poziomu dostępności wpisu.
<h2 class="poziom&ENTRY_LEVEL;" id="<a href="#entryid">&ENTRY_ID;</a>"><a href="#entrysubject"><ENTRY_SUBJECT/></a></h2>

CSS:

.poziom0 { background-color: #fff; }
.poziom1 { background-color: #eee; }
.poziom2 { background-color: #ddd; }
.poziom3 { background-color: #ccc; }
(...)
uwagi
Znacznika

można użyć na wiele sposobów. Można po prostu przy każdym wpisie wyświetlić jego poziom dostępności, można (tak jak wyżej) zmieniać

kolory tła wpisów, można użyć atrybutu title, lub pseudoelementów CSS :before i :after (np. .poziom2:after { content: " (Wpis ukryty)" } - pomysł <a href="http://xyc.jogger.pl" title="Przejdź do joga XyCastego.">XyCastego</a>). Wszystko jest dozwolone.

ENTRY_CONTENT

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#entrycontent">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <ENTRY_CONTENT> lub &ENTRY_CONTENT;
stosowanie
strona główna joggera (w bloku ENTRY_BLOCK) i szablon komentarzy
działanie
wstawia treść wpisu.

ENTRY_COMMENT_HREF

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#entrycommenthref">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <ENTRY_COMMENT_HREF> lub &ENTRY_COMMENT_HREF;
stosowanie
strona główna joggera (w bloku ENTRY_BLOCK)
działanie
wstawia URL w odnośniku do strony z komentarzami.

ENTRY_COMMENT_HREF_DESCR

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#entrycommenthrefdescr">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <ENTRY_COMMENT_HREF_DESCR> lub &ENTRY_COMMENT_HREF_DESCR;
stosowanie
strona główna joggera (w bloku ENTRY_BLOCK)
działanie
wstawia tekst odnośnika do stron z komentarzami. Jeśli nie ma żadnych komentarzy, wtedy jest to "Dodaj komentarz". Jeśli komentarze są - np. "1 komentarz", "3 komentarze", "5 komentarzy".
uwagi
Ponieważ możliwe jest, że kilka wpisów nie będzie miało żadnego komentarza lub będą miały taką samą ich liczbę, może się zdarzyć, że na stronie będzie kilka odnośników tak samo opisanych, a prowadzących do różnych stron. Może to spowodować nieporozumienia, szczególnie w przeglądarkach tekstowych lub dźwiękowych. Dlatego zalecany jest zapis:
<a href="<a href="#entrycommenthref">&ENTRY_COMMENT_HREF;</a>">
   <ENTRY_COMMENT_HREF_DESCR/><span class="ukryj"> do wpisu <em><a href="#entrysubject"><ENTRY_SUBJECT/></a></em></span>
   </a>

Klasa "ukryj" powinna zostać w CSS zdefiniowana następująco:

.ukryj {
	display: none;
}
Dzieki temu, przeglądając stronę

bez CSS, zamiast napisu "2 komentarze" w trzech różnych miejscach,

zobaczymy: "2 komentarze do wpisu Pierwszy", "2 komentarze do wpisu Drugi", "2 komentarze do wpisu Trzeci".

ENTRY_CLASS NOWY!

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#entryclass">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <ENTRY_CLASS> lub &ENTRY_CLASS;
stosowanie
strona główna joggera (w bloku ENTRY_BLOCK)
działanie
działa analogicznie do znacznika <a href="#commentclass">COMMENT_CLASS</a> - naprzemiennie wstawia tekst entry1 i entry2. Można go użyć zarówno do wpisów jak i do całych dni, o ile w szablonie zastosowano znacznik <a href="#entrydayblock">ENTRY_DAY_BLOCK</a>. ENTRY_CLASS zawsze wstawia wspomniane teksty naprzemiennie - bez względu na liczbę wpisów zgrupowanych pod jadą datą.
uwagi
patrz <a href="#entryclassreset">ENTRY_CLASS_RESET</a> NOWY!

<a href="http://bugger.jogger.pl/index.php?do=details&id=60" title="Joggerowy system zgłaszania błędów i propozycji.">Bugger - zgłoszenie nr 60</a> (OK)

ENTRY_CLASS_RESET NOWY!

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#entryclassreset">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <ENTRY_CLASS_RESET> lub &ENTRY_CLASS_RESET;
stosowanie
strona główna joggera (w bloku ENTRY_BLOCK)
działanie
działa tylko w połączeniu z <a href="#entryclass">ENTRY_CLASS</a>. Nie ma ściśle wyznaczonego miejsca, może zostać wpisany gdziekolwiek w bloku <a href="#entryblock">ENTRY_BLOCK</a>. Powoduje zignorowanie dotychczasowego porządku działania <a href="#entryclass">ENTRY_CLASS</a> i ponowne rozpoczęcie od entry1. Znacznik ten może być przydatny, jeśli wpisy zgrupowane pod wspólną datą mają zmieniać klasy lokalnie, a nie globalnie. W takim przypadku każdy pierwszy wpis danego dnia miałby klasę entry1.

ARCHIVE_BLOCK

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#archiveblock">utwórz dowiązanie (#)</a>

typ
wymagany tag otwierający i tag zamykający (<ARCHIVE_BLOCK> ... </ARCHIVE_BLOCK>)
stosowanie
szablon strony głównej i szablon komentarzy
działanie
w tym bloku należy umieścić kod odpowiadający za wyświetlanie linków do stron z poprzednimi wpisami.
przykład
Starsze wpisy:

<ul>
  <ARCHIVE_BLOCK>
    <li><a href="<a href="#archivehref">&ARCHIVE_HREF;</a>"><a href="#archivehrefdescr"><ARCHIVE_HREF_DESCR/></a></a></li>
  </ARCHIVE_BLOCK>

</ul>
uwagi
<a href="http://bugger.jogger.pl/index.php?do=details&id=10" title="Joggerowy system zgłaszania błędów i propozycji.">Bugger - zgłoszenie nr 10</a> (propozycja nowych znaczników)
<a href="http://bugger.jogger.pl/index.php?do=details&id=20" title="Joggerowy system zgłaszania błędów i propozycji.">Bugger - zgłoszenie nr 20</a> (propozycja nowych znaczników)

ARCHIVE_HREF

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#archivehref">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <ARCHIVE_HREF/> lub &ARCHIVE_HREF;
stosowanie
blok ARCHIVE_BLOCK (szablon strony głównej i szablon komentarzy)
działanie
wstawia URL do stron archiwum.

ARCHIVE_HREF_DESCR

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#archivehrefdescr">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <ARCHIVE_HREF_DESCR/> lub &ARCHIVE_HREF_DESCR;
stosowanie
blok ARCHIVE_BLOCK (szablon strony głównej i szablon komentarzy)
działanie
wstawia nazwy stron archiwum (np. Styczeń 2004 lub - jeśli sortujemy wpisy według ich liczby na stronie - np. 17.02.2004 - 27.01.2004).

LINK_BLOCK

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#linkblock">utwórz dowiązanie (#)</a>

typ
wymagany tag otwierający i tag zamykający (<LINK_BLOCK> ... </LINK_BLOCK>)
stosowanie
szablon strony głównej i szablon komentarzy
działanie
w tym bloku należy umieścić kod odpowiadający za wyświetlanie linków do stron, które zapamiętamy w panelu konfiguracyjnym Joggera. Odnośniki zostaną wyświetlone w kolejności alfabetycznej. Dzięki tej funkcji można dodawać i usuwać linki do ulubionych stron bez konieczności zmiany kodu szablonu.
przykład
Polecam:

<ul>
  <LINK_BLOCK>
    <li><a href="<a href="#linkhref">&LINK_HREF;</a>"><a href="#linkhrefdescr"><LINK_HREF_DESCR/></a></a></li>
  </LINK_BLOCK>

</ul>
uwagi
<a href="http://bugger.jogger.pl/index.php?do=details&id=7" title="Joggerowy system zgłaszania błędów i propozycji.">Bugger - zgłoszenie nr 7</a> (propozycja nowej opcji)
<a href="http://bugger.jogger.pl/index.php?do=details&id=89" title="Joggerowy system zgłaszania błędów i propozycji.">Bugger - zgłoszenie nr 89</a> (propozycja nowego znacznika)

LINK_HREF

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#linkhref">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <LINK_HREF/> lub &LINK_HREF;
stosowanie
blok LINK_BLOCK (szablon strony głównej i szablon komentarzy)
działanie
wstawia URL do polecanych stron. (patrz: wyjaśnienie przy <a href="#linkblock">LINK_BLOCK</a>)

LINK_HREF_DESCR

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#linkhrefdescr">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <LINK_HREF_DESCR/> lub &LINK_HREF_DESCR;
stosowanie
blok LINK_BLOCK (szablon strony głównej i szablon komentarzy)
działanie
wstawia nazwy polecanych stron. (patrz: wyjaśnienie przy <a href="#linkblock">LINK_BLOCK</a>)

COMMENT_BLOCK

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#commentblock">utwórz dowiązanie (#)</a>

typ
wymagany tag otwierający i tag zamykający (<COMMENT_BLOCK>... </COMMENT_BLOCK>)
stosowanie
szablon komentarzy
działanie
blok służy wyświetlaniu kolejnych komentarzy.
przykład
<h2>Komentarze:</h2>
<COMMENT_BLOCK>
  <div class="<a href="#commentclass">&COMMENT_CLASS;</a>">
    <p>
      <a href="#commentnick"><COMMENT_NICK/></a> | dnia <a href="#commentdate"><COMMENT_DATE/></a>, o godzinie <a href="#commenthour"><COMMENT_HOUR/></a>

      <ADMIN_BLOCK>
        <span>
          <a href="<a href="#admincommentremovehref">&ADMIN_COMMENT_REMOVE_HREF;</a>">Usuń</a>,
          <a href="<a href="#admincommentblockiphref">&ADMIN_COMMENT_BLOCKIP_HREF;</a>">Zablokuj IP</a>.
        </span>

      </ADMIN_BLOCK>
    </p>
    <a href="#commentcontent"><COMMENT_CONTENT/></a>
  </div>
</COMMENT_BLOCK>
uwagi
patrz też: <a href="#commentform">COMMENT_FORM</a>

<a href="http://bugger.jogger.pl/index.php?do=details&id=41" title="Joggerowy system zgłaszania błędów i propozycji.">Bugger - zgłoszenie nr 41</a> (propozycja nowych znaczników)

COMMENT_CLASS

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#commentclass">utwórz dowiązanie (#)</a>

typ
pojedynczy , zapis: <COMMENT_CLASS/> lub &COMMENT_CLASS;
stosowanie
blok COMMENT_BLOCK (szablon komentarzy)
działanie
wstawia na zmianę comment1 lub comment2. Dzięki temu można za pomocą CSS zróżnicować wygląd sąsiadujących komentarzy, i tym samym ułatwić ich czytanie. Najczęściej definiuje się odmienne kolory tła lub style obramowania.

COMMENT_NICK

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#commentnick">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <COMMENT_NICK/> lub &COMMENT_NICK;
stosowanie
blok COMMENT_BLOCK (szablon komentarzy)
działanie
wstawia podpis komentującego. Jeśli komentujący jest użytkownikiem Joggera i w chwili dodawania komentarza był zalogowany do Joggera (zalogować się można na <a href="http://www.jogger.pl/">stronie głównej Joggera</a>), wstawiony zostanie podpis będący odnośnikiem do joga komentującego.

COMMENT_DATE

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#commentdate">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <COMMENT_DATE/> lub &COMMENT_DATE;
stosowanie
blok COMMENT_BLOCK (szablon komentarzy)
działanie
wstawia datę dodania komentarza.

COMMENT_HOUR

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#commenthour">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <COMMENT_HOUR/> lub &COMMENT_HOUR;
stosowanie
blok COMMENT_BLOCK (szablon komentarzy)
działanie
wstawia godzinę dodania komentarza.

COMMENT_CONTENT

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#commentcontent">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <COMMENT_CONTENT/> lub &COMMENT_CONTENT;
stosowanie
blok COMMENT_BLOCK (szablon komentarzy)
działanie
wstawia treść komentarza.

ADMIN_BLOCK

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#adminblock">utwórz dowiązanie (#)</a>

typ
wymagany tag otwierający i tag zamykający (<ADMIN_BLOCK> ... </ADMIN_BLOCK>)
stosowanie
szablon strony głównej i szablon komentarzy
działanie
blok powoduje pokazanie zawartej w nim treści jedynie zalogowanemu (na <a href="http://www.jogger.pl/">stronie głównej Joggera</a>) właścicielowi. Można w nim umieścić wszystko, jednak 4 specjalne tagi nadają się do tego lepiej niż cokolwiek innego.
przykład
w bloku ENTRY_BLOCK:
<ENTRY_BLOCKY>
  (...)
  <ADMIN_BLOCK>
    <span>
      <a href="<a href="#adminentrytedithref">&ADMIN_ENTRY_EDIT_HREF;</a>">Edytuj</a>,
      <a href="<a href="#adminentryremovehref">&ADMIN_ENTRY_REMOVE_HREF;</a>">Usuń</a>.
    </span>

  </ADMIN_BLOCK>
  (...)
</ENTRY_BLOCKY>

w bloku COMMENT_BLOCK:

<COMMENT_BLOCK>
  (...)
  <ADMIN_BLOCK>
    <span>

      <a href="<a href="#admincommentremovehref">&ADMIN_COMMENT_REMOVE_HREF;</a>">Usuń</a>,
      <a href="<a href="#admincommentblockiphref">&ADMIN_COMMENT_BLOCKIP_HREF;</a>">Zablokuj IP</a>.
    </span>
  </ADMIN_BLOCK>

  (...)
</COMMENT_BLOCK>

można też tak:

<ADMIN_BLOCK>
  <p>Tego akapitu nie zobaczy nikt poza mną.</p>
</ADMIN_BLOCK>
uwagi
4 tagi zaczynające się od "ADMIN_" nie muszą być umieszczone w bloku ADMIN_BLOCK.

Jednak wtedy zwykli użytkownicy odwiedzający joga zobaczą opisy adminowych odnośników. Niczym to nie grozi, bo bez hasła i tak nic nie

popsują, chodzi tylko o wygląd strony.

<a href="http://bugger.jogger.pl/index.php?do=details&id=77" title="Joggerowy system zgłaszania błędów i propozycji.">Bugger - zgłoszenie nr 77</a> (propozycja nowych znaczników)
<a href="http://bugger.jogger.pl/index.php?do=details&id=90" title="Joggerowy system zgłaszania błędów i propozycji.">Bugger - zgłoszenie nr 90</a> (propozycja nowych znaczników)

ADMIN_ENTRY_EDIT_HREF

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#adminentryedithref">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <ADMIN_ENTRY_EDIT_HREF/> lub &ADMIN_ENTRY_EDIT_HREF;
stosowanie
blok ADMIN_BLOCK (szablon strony głównej (wtedy w bloku ENTRIES_DAY) i szablon komentarzy (wtedy gdziekolwiek, bo odnosi się do komentowanego wpisu))
działanie
wstawia URL do strony edycji danego wpisu.

ADMIN_ENTRY_REMOVE_HREF

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#adminentryremovehref">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <ADMIN_ENTRY_REMOVE_HREF/> lub &ADMIN_ENTRY_REMOVE_HREF;
stosowanie
blok ADMIN_BLOCK (szablon strony głównej (wtedy w bloku ENTRIES_DAY) i szablon komentarzy (wtedy gdziekolwiek, bo odnosi się do komentowanego wpisu))
działanie
wstawia URL do strony z pytaniem o potwierdzenie usunięcia danego wpisu.

ADMIN_COMMENT_REMOVE_HREF

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#admincommentremovehref">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <ADMIN_COMMENT_REMOVE_HREF/> lub &ADMIN_COMMENT_REMOVE_HREF;
stosowanie
blok ADMIN_BLOCK w bloku COMMENT_BLOCK (szablon komentarzy)
działanie
wstawia URL do odnośnika powodującego usunięcie danego komentarza (bez potwierdzania).

ADMIN_COMMENT_BLOCKIP_HREF

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#admincommentblockiphref">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <ADMIN_COMMENT_BLOCKIP_HREF/> lub &ADMIN_COMMENT_BLOCKIP_HREF;
stosowanie
blok ADMIN_BLOCK w bloku COMMENT_BLOCK (szablon komentarzy)
działanie
wstawia URL do odnośnika powodującego zablokowanie IP osoby komentującej.

NOUSER_BLOCK

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#nouserblock">utwórz dowiązanie (#)</a>

typ
wymagany tag otwierający i tag zamykający (<NOUSER_BLOCK> ... </NOUSER_BLOCK>)
stosowanie
szablon strony głównej i szablon komentarzy
działanie
Wszystko umieszczone w tym bloku będzie widoczne jedynie dla niezalogowanych użytkowników, np. zwykłych gości. Można tu wstawić link do strony logowania lub od razu odpowiedni formularz (dzięki dla kryska).
przykład
Dla znajomych

<NOUSER_BLOCK>
  <p><a href="<a href="#userloginhref">&USER_LOG_IN_HREF;</a>">Zaloguj się</a>, by przeczytać inne wpisy.</p>
</NOUSER_BLOCK>
<a href="#loggeduserblock"><LOGGED_USER_BLOCK> ( ... ) </LOGGED_USER_BLOCK></a>
uwagi
patrz: <a href="#loginformularz">formularz logowania</a>

USER_LOG_IN_HREF

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#userloginhref">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <USER_LOG_IN_HREF/> lub &USER_LOG_IN_HREF;
stosowanie
np. blok NOUSER_BLOCK (szablon strony głównej i szablon komentarzy)
działanie
wstawia URL odnośnika do strony logowania (na przykład <a href="http://login.staszyna.jogger.pl/">http://login.staszyna.jogger.pl</a>). Takiego linka można np. użyć dyskretnie, by nie tylko ukryć niektóre wpisy, ale także samą informację o ukrywaniu czegokolwiek.

FORMULARZ

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#loginformularz">utwórz dowiązanie (#)</a>

typ
formularz przygotowany przez kryska, z moimi niewielkimi modyfikacjami
stosowanie
np. blok NOUSER_BLOCK (szablon strony głównej i szablon komentarzy)
działanie
formularz od razu przekazuje Joggerowi dane o nazwie użytkownika i haśle, bez pośrednictwa wyżej wspomnianej strony.
przykład
Dla znajomych:<br />

<NOUSER_BLOCK>
  <form action="http://login.[Twoja_nazwa_domeny].jogger.pl/index.php" method="post" id="logowanie">
    <div><input type="hidden" name="op" value="loginuser" /></div>
    <div><span>Login:</span><input type="text" name="user" /></div>

    <div><span>Hasło:</span><input type="password" name="pass" /></div>
    <div><input type="submit" value="Zaloguj" id="guzik" /></div>
  </form>
</NOUSER_BLOCK>
uwagi
by to ładniej wyglądało, można w CSS dodać np.:
/* logowanie */

form#logowanie span {
        width: 4em; 
        float: left;
}

form#logowanie div {
        margin-bottom: 3px;
}

form#logowanie input {
        width: 8em;
        padding-left: 3px;
}

form#logowanie input#guzik {
        width: auto;
        padding: 3px 5px;
        margin-top: 5px;
        margin-left: 4em; /* tyle samo, ile width w span wyżej */
        font-family: sans-serif;
}

LOGGED_USER_BLOCK

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#loggeduserblock">utwórz dowiązanie (#)</a>

typ
wymagany tag otwierający i tag zamykający (<LOGGED_USER_BLOCK> ... </LOGGED_USER_BLOCK>)
stosowanie
szablon strony głównej i szablon komentarzy
działanie
treść zawarta w tym bloku będzie widoczna tylko i wyłącznie dla zalogowanych gości joga.
przykład
Dla znajomych:

<a href="#nouserblock"><NOUSER_BLOCK> ( ... ) </NOUSER_BLOCK></a>
<LOGGED_USER_BLOCK>
  <p><a href="#loggedusername">
    <LOGGED_USER_NAME/></a>, 
    <a href="<a href="#loggeduserlogouthref">&LOGGED_USER_LOG_OUT_HREF;</a>"><em>wyloguj się</em></a>, gdy będziesz wychodzić.
  </p>

</LOGGED_USER_BLOCK>

LOGGED_USER_NAME

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#loggedusername">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <LOGGED_USER_NAME/> lub &LOGGED_USER_NAME;
stosowanie
blok LOGGED_USER_BLOCK (szablon strony głównej i szablon komentarzy)
działanie
wstawia nazwę zalogowanego użytkownika.

LOGGED_USER_LOG_OUT_HREF

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#loggeduserlogouthref">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <LOGGED_USER_LOG_OUT_HREF/> lub &LOGGED_USER_LOG_OUT_HREF;
stosowanie
blok LOGGED_USER_BLOCK (szablon strony głównej i szablon komentarzy)
działanie
wstawia URL do odnośnika wylogowującego zalogowanego użytkownika. Warto sprawić, by użytkownik rzeczywiście kliknął w ten link, gdy będzie odchodził np. od komputera w kawiarence internetowej.

status i opis Jabbera

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#status">utwórz dowiązanie (#)</a>

typ
grupa znaczników służących do wyświetlania tekstu dostępności (np. dostępny/rozłączony), ikony dostępności oraz Jabberowego opisu.
stosowanie
szablon strony głównej i szablon komentarzy, nie wymagają żadnego specjalnego bloku
znaczniki
<a href="#statustext">STATUS_TEXT</a>, <a href="#statusimage">STATUS_IMAGE</a>, <a href="#statusdescr">STATUS_DESCR</a> oraz <a href="#statusdescr2">STATUS_DESCR2</a>.
przykład
<ul>
  <li>mój status: <strong><a href="#statustext"><STATUS_TEXT/></a></strong> <img src="<a href="#statusimage">&STATUS_IMAGE;</a>" alt="" />
  <li>mój opis: <em><a href="#statusdescr"><STATUS_DESCR/></a></em>

</ul>

STATUS_TEXT

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="##entryblock">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <STATUS_TEXT/> lub &STATUS_TEXT;
stosowanie
szablon strony głównej i szablon komentarzy
działanie
wstawia teskt dostępności lub niedostępności. Oba należy ustawić w panelu konfiguracyjnym, w zakładce Ustawienia (Tekst dostępności i Tekst niedostępności), np. dostępny/rozłączony, online/offline, jestem/nie ma mnie itd.

STATUS_IMAGE

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#statusimage">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <STATUS_IMAGE/> lub &STATUS_IMAGE;
stosowanie
szablon strony głównej i szablon komentarzy
działanie
wstawia ścieżkę do pliku-ikony dostepności. Należy najpierw utworzyć i wgrać do Joggera dwa takie pliki: online.png i offline.png. W zależności od statusu właściciela joga, Jogger wstawi ścieżkę do odpowiedniego pliku.
uwagi
znacznik wstawia pełną ścieżkę, a nie tylko nazwę pliku. Dlatego nie trzeba pisać: <a href="#customdir">&CUSTOM_DIR;</a>/&STATUS_IMAGE;. Wystarczy samo &STATUS_IMAGE;

STATUS_DESCR

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#statusdescr">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <STATUS_DESCR/> lub &STATUS_DESCR;
stosowanie
szablon strony głównej i szablon komentarzy
działanie
wstawia Jabberowy opis.
uwagi
<a href="http://bugger.jogger.pl/index.php?do=details&id=68" title="Joggerowy system zgłaszania błędów i propozycji.">Bugger - zgłoszenie nr 68</a>

STATUS_DESCR2

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#statusdescr2">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <STATUS_DESCR2/> lub &STATUS_DESCR2;
stosowanie
szablon strony głównej i szablon komentarzy
działanie
podobnie jak <a href="#statusdescr">STATUS_DESCR</a> wstawia opis na Jabberze, tyle tylko, że ujęty w cudzysłowy. Jeśli opisu nie ma, cudzysłowy nie zostaną wyświetlone.

Inne

JID

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#jid">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <JID/> lub &JID;
stosowanie
szablon strony głównej i szablon komentarzy
działanie
wstawia JID (Jabber ID) właściciela joga.
przykład
<acronym lang="en" xml:lang="en" title="Jabber Identyfier">JID</acronym>: <JID/>

ALL_ENTRIES_HREF

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#allentrieshref">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <ALL_ENTRIES_HREF/> lub &ALL_ENTRIES_HREF;
stosowanie
szablon komentarzy
działanie
wstawia link prowadzący do strony głównej z odpowiednimi wpisami (tzn. jeśli ktoś czyta komentarze do wpisu ze stycznia, to ten link przeniesie go do strony z wpisami ze stycznia).
przykład
<a href="&ALL_ENTRIES_HREF;" title="Powrót do reszty wpisów">Wróć</a>

COMMENT_FORM

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#commentform">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <COMMENT_FORM/> lub &COMMENT_FORM;
stosowanie
szablon komentarzy
działanie
wstawia cały formularz do dodawania komentarzy.
przykład
<h2>Dodaj swój komentarz:</h2>

<COMMENT_FORM/>
uwagi
tag wstawia następującą tabelę (zamiast "Sledź ten wątek..." może być button "Przestań sledzić ten wątek"):
<form action="/comment.php" method="post">
  <div><input type="hidden" name="jid"  value="[jid_komentowanego]" />
  <input type="hidden" name="eid"  value="[id_wpisu]" />
  <input type="hidden" name="startid"  value="0" />
  <input type="hidden" name="op" value="addcomm" /></div>

  <table>
    <tr>
      <td>Podpis:</td>
      <td><input type="text" name="commnickid" <strong>id="commnickid"</strong> value="[Twój_jid]" /></td>

    </tr>
    <tr>
      <td>Treść:</td>
      <td><textarea name="commbody" <strong>id="commbody"</strong> cols="60" rows="6"></textarea></td>

    </tr>
    <tr>
      <td>&nbsp;</td>
      <td>
        <input type="checkbox" name="notifyentry" value="notify" />

        Śledź ten wątek i powiadom mnie o nowych komentarzach
     </td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td><input type='submit' name="submit" <strong>id="submitcomm"</strong> value='Wyślij' /></td>

    </tr>
  </table>
</form>

By zastosować style do tego formularza wystarczy użyć ID jego pól. Jak widać pole z podpisem ma id="commnickid", pole tekstowe z treścią komentarza - id="commbody", przycisk "Wyślij" - id="submitcomm" a przycisk "Przestań śledzić ten wątek" - id="tracestop"

uwagi
<a href="http://bugger.jogger.pl/index.php?do=details&id=8" title="Joggerowy system zgłaszania błędów i propozycji.">Bugger - zgłoszenie nr 8</a>
<a href="http://bugger.jogger.pl/index.php?do=details&id=88" title="Joggerowy system zgłaszania błędów i propozycji.">Bugger - zgłoszenie nr 88</a> (OK)

CUSTOM_DIR

<a href="#top">na górę</a> | <a href="#skorowidz">spis znaczników</a> | <a href="#customdir">utwórz dowiązanie (#)</a>

typ
pojedynczy, zapis: <CUSTOM_DIR/> lub &CUSTOM_DIR;
stosowanie
szablon strony głównej i szablon komentarzy
działanie
wstawia scieżkę do osobistego joggerowego katalogu, w którym można przechowywać do 150 KB danych. Katalog służy głównie do przechowywania grafiki do joga, jednak wgrywać można doń nie tylko pliki graficzne. Jedyne ograniczenie dotyczy plików skojarzonych z językiem PHP. Wstawiana ścieżka to custom/[Twój_nick]/files (bez ukośnika na końcu, trzeba go dodać samemu).
przykład
<a href="http://www.mozilla.org/products/firefox/" title="Get Firefox - Web Browsing Redefined">
  <img src="&CUSTOM_DIR;/getfirefox_small.png"
  width="110" height="32" border="0" alt="Get Firefox" />

</a>
<link rel="StyleSheet" href="&CUSTOM_DIR;/nazwa_pliku.css" type="text/css" title="Pierwszy" />
uwagi
  1. Jeśli chcesz wstawić ikonkę dostępności za pomocą znacznika <STATUS_IMAGE/>, nie używaj już taga <CUSTOM_DIR/>. Więcej informacji przy opisie <a href="#statusimage">STATUS_IMAGE</a>.
  2. Mimo, że ścieżek do grafiki używa się także w plikach CSS (np. background-image: url(obrazki/tlo.gif);), zdecydowano, że znacznik <CUSTOM_DIR/> nie będzie obsługiwany w tych plikach. Działa jedynie w pliku szablonu strony głównej i strony z komentarzami. Używanie go w plikach CSS byłoby bezcelowe, ponieważ zarówno pliki CSS, jak i wszystkie inne pliki wgrane do Joggera znajdują się w tym samym katalogu: custom/[Twój_nick]/files/. Dzięki temu do grafiki wystarczy odwołać się poprzez wpisanie jedynie nazwy pliku, np. background-image: url(tlo.gif);, ponieważ ścieżki podawane w plikach CSS są przez przeglądarki czytane względem położenia tych plików, a nie plików *.html.
    Oczwiście, jeśli definicje CSS wpiszemy w pliku szblonu (*.html), w sekcji HEAD lub bezpośrednio przy odpowiednich elementach, wtedy użycie <CUSTOM_DIR/> będzie jak najbardziej właściwe (np. <div style="background-color: <CUSTOM_DIR/>/tlo.gif"> ... </div>).
  3. Należy pamietać o atrybucie alt dla każdego umieszczanego obrazka. Jeśli jest to tylko grafika ozdobna należy dodać pusty alt="".

Stanisław Małolepszy, http://staszyna.jogger.pl kwiecień 2003 - maj 2004; aktualizacja: 1 lipca 2004