Table of Contents Plus – automatyczne generowanie spisu treści

Table of Contents PlusSpis treści strony lub wpisu może być przydatny gdy publikujemy dłuższe, podzielone na części teksty. Dzięki niemu użytkownik ma dostęp do ogólnego przeglądu treści i może szybko przejść do wybranego fragmentu tekstu. Wtyczka Table of Contents Plus pozwala na automatyczne generowanie takich spisów treści – i to bez konieczności modyfikowania naszych wpisów. Wszystko, co musimy zrobić, to poprawnie przygotować nasz tekst – czyli korzystać w nim z nagłówków, za pomocą których „tytułujemy” poszczególne jego sekcje.

Rozszerzenie tworzy spisy przypominające nieco te znajdujące się w Wikipedii. Do ich generowania wykorzystywane są nagłówki (domyślnie wszystkie – od h1 do h6), które w dłuższych publikacjach powinny być wykorzystywane do podziału tekstu na części.

Konfiguracja wtyczki

Po aktywacji wtyczki w sekcji Ustawienia → TOC+ możemy skonfigurować kilka parametrów dotyczących generowania spisów treści. Niestety, polskie tłumaczenie interfejsu jest (delikatnie mówiąc) niedoskonałe.

Table of Contents Plus - ustawienia

Opcja Pozycja pozwala na ustalenie miejsca, w którym będzie umieszczany spis treści. Do wyboru mamy Przed pierwszym nagłówkiem, Po pierwszym nagłówku, Górny (u samej góry strony) i Dolny (na dole strony).
Opcja Pokaż po określa ile nagłówków musi zawierać tekst, aby został do niego wstawiony spis treści. Domyślnie ustawienie to ma wartość 4, czyli spis zostanie wygenerowany tylko jeśli tekst zawiera minimum 4 nagłówki.
Opcja Automatyczne wstawianie dla następujących rodzajów treści pozwala wybrać typy wpisów, dla których będą automatycznie generowane spisy treści. Domyślnie wybrane są tylko strony (page).
W sekcji Nagłówek tekstowy możemy ustawić kilka opcji dotyczących tytułu spisu treści. Opcja Pokaż tytuł nad tabelą z zawartością włącza wyświetlanie tytułu, a w polu poniżej możemy wpisać jego tekst. Opcja Pozwalają użytkownikowi przełączać widoczność tabeli ze spisem treści włącza możliwość ukrywania (zwijania) spisu treści za pomocą specjalnego linku (w polach poniżej można wpisać treść linków do ukrywania i pokazywania spisu). Włączenie opcji Na początku ukryj spis treści spowoduje, że po załadowaniu strony spis treści będzie ukryty.
Opcja Pokaż hierarchię włącza wyświetlanie spisu w formie hierarchicznej (z wcięciami), a opcja Liczba elementów listy – numerowanie poszczególnych sekcji tekstu.
Ostatnia opcja Włącz efekt płynnego przewijania włącza płynne przewijanie strony po kliknięciu linku do wybranej sekcji tekstu.

Table of Contents Plus - wygląd

Druga część ekranu ustawień wtyczki Table of Contents Plus dotyczy wyglądu spisów treści.
Opcja Szerokość służy do ustawienia szerokości boksu ze spisem. Do wyboru mamy szerokość automatyczną, stałą (w pikselach) oraz względną (w procentach).
Opcja Zawijanie pozwala na ustawienie oblewania spisu treści przez tekst. Opcja ta działa tylko dla pozycji u góry lub u dołu strony.
Na samym dole mamy możliwość wyboru wyglądu spisów treści. Dostępnych jest pięć predefiniowanych wersji, mamy również możliwość stworzenia własnej (opcja Zwykły).

Ostatnią, domyślnie ukrytą sekcją ekranu ustawień wtyczki jest sekcja Zaawansowane. Chciałbym ją omówić głównie dlatego, że jej tłumaczenie zostało (jak na moje oko) wykonane jakimś automatem.
Włączenie opcji Małe litery spowoduje, że nazwy zakotwiczeń linków w spisie treści tworzone tylko z małych liter. Opcja Dzielenie wyrazów wymusza stosowanie w zakotwiczeniach znaku - zamiast _. Opcja Domyślny prefix zakotwiczenia pozwala na podanie własnego prefiksu dla zakotwiczeń.
Opcja Uwzględnij stronę główną pozwala na umieszczenie spisu treści na stronie głównej serwisu (przydatne tylko gdy w serwisie mamy ustawioną statyczną stronę główną).
W sekcji Poziomu nagłówków (o rany…) mamy możliwość wykluczenia wybranych nagłówków ze spisów treści. Pole Wyklucz nagłówki pozwala z kolei na wykluczenie nagłówków o konkretnej treści. Można korzystać z gwiazdki, czyli na przykład wpisanie Owoc* wykluczy nagłówki Owoc, Owoce, OwocowyOwocny. Poszczególne frazy oddzielamy znakiem |.
W polu Ogranicz ścieżkę możemy podać adresy stron (bez domeny), dla których spis treści nie będzie generowany.

Wstawiania spisu treści za pomocą shortcode

Wszystkie omówione wyżej opcje działają globalnie (dla całego serwisu) – jeśli na konkretnej stronie chcemy wstawić spis treści w inny sposób, musimy skorzystać z shortcode [toc]. Pozwala on na wstawienie spisu treści w dowolnym miejscu wpisu lub strony. Posiada kilka parametrów, dzięki którym mamy jako taki wpływ na wygląd wygenerowanego spisu.
Parametr label pozwala na wpisanie tytułu spisu – jeśli nie chcemy w ogóle wyświetlać tytułu, musimy użyć parametru no_label="true". Parametr wrapping pozwala na oblewanie spisu tekstem – może mieć wartość left lub right. Parametr heading_levels pozwala na wyspecyfikowanie nagłówków, które mają być brane pod uwagę w spisie treści. Może on wyglądać na przykład tak: heading_levels="2,3,5" (do spisu treści trafią tylko nagłowki h2, h3 i h5). Ostatni parametr exclude pozwala na wykluczenie wybranych nagłówków (składnia analogiczna do pola Wyklucz nagłówki w opcjach zaawansowanych wtyczki).

Przykładowy shortcode wyświetlający spis treści może wyglądać na przykład tak:

[toc label="Spis treści" heading_levels="2,3,4,5"]

Jeśli ustawiliśmy automatyczne wstawianie spisu treści dla wszystkich stron, ale na jakiejś stronie nie chcemy go umieszczać, wystarczy wstawić do treści shortcode [no_toc].

Dwa słowa o tłumaczeniu

Widziałem już wiele słabo przetłumaczonych wtyczek, ale to, co zrobił „tłumacz” rozszerzenia Table of Contents Plus (nie wymienię go z imienia – zainteresowani sami sobie znajdą), to po prostu koszmar. Miejscami tłumaczenie wygląda jak wzięte żywcem z Google Translate, a czasem jeszcze gorzej. Nie dosyć, że niektóre zdania są niezrozumiałe, to jeszcze nijak się mają do oryginalnych tekstów. Tragedia, która nie powinna się była wydarzyć.

Mój mały, osobisty apel: jeśli nie potrafisz przetłumaczyć kilku zdań z języka angielskiego na polski (polski – a nie „polskawy”), to zostaw to do zrobienia innym. W tym konkretnym przypadku anglojęzyczny interfejs jest o wiele bardziej zrozumiały, niż jego polskie „tłumaczenie” – nawet dla osób, które z językiem angielskim nie miały wiele do czynienia.

Bezpośredni link