Obrázek   
Přihlášení
Uživatelské jméno:

Heslo:

Pamatovat si mne



Zapomenuté heslo

Nová registrace
Kam dále?
Hledání
Vzhled

(3 vzhledů)
Kdo je Online
11 uživatel(ů) je online (9 uživatel(ů) si prohlíží Články a povídání)

Uživatelé: 0
Hosté: 11

více...
Noví uživatelé
FERYAKT
FERYAKT
07.10.2019
Kolorka
Kolorka
24.09.2019
pospichal
pospichal
03.05.2019
Steppenwolf
Steppenwolf
15.03.2019
numitron
numitron
04.03.2019
vvrsek
vvrsek
31.01.2019
EMANUEL
EMANUEL
21.12.2018
kojaro
kojaro
16.12.2018
TothSt
TothSt
13.11.2018
Nyrenn
Nyrenn
06.10.2018
Kdo za co může
Administrátorka
Žirafka
Žirafka
Žirafička
Žirafička
Redaktoři
bernard
bernard
IvanH
IvanH
 
Emeritní
KatyH
KatyH

Zápisník pojídačky koláčů pro Xoops - Xoops a seznamy

aneb Xoops a OL + LI
Napsal/a Žirafka v 14. 10. 2019 v 10:16 (přečtení 101×) Další články tohoto autora
Zápisník pojídačky koláčů pro Xoops
     Dlouho jsem v Xoopsu postrádala možnost vložit seznam. Jediná možnost byla použít HTML tagy UL, OL a LI a do článku je vložit ručně. Pořád to ale dělalo neplechu a zobrazovalo se to nějak divně, takže jsem seznamy dělala spíše prostým formátováním textu. Není to nijak moc pohodlné ani elegantní, ale bylo to funkční. Dneska však pohár mé trpělivosti přetekl a řekla jsem si, že když jsem uměla Xoops naučit zkratky, tak jej naučím i seznamy. A ponořila jsem se do hlubin redakčního systému.

     K mému překvapení jsem zjistila, že základní podpora seznamů v Xoopsu již je, takže nebylo třeba vynalézat kolo a stačilo si nastudovat, jak to vlastně funguje a následně tuto podporu o něco vylepšit. Výsledek mého snažení si dneska ukážeme.

     Nejprve je třeba najít soubor XOOPSROOT/CLASS/TEXTSANITIZER/LI/li.php a v něm najít tuto část:

public function load($ts)
    {
        
$ts->patterns[]     = "/[li](.*)[/li]/sU";
        
$ts->replacements[] = '<li>\1</li>';

        return 
true;
    }


     Tato funkce je zodpovědná za vytvoření odrážek seznamu. Jak vidíte, umí jen základní použití bez jakýchkoli parametrů. To se mi nelíbilo a tak jsem funkci změnila takto:

{
        
$ts->patterns[]     = "/[li](.*)[/li]/sU";
        
$ts->replacements[] = '<li>\1</li>';
        
        
$ts->patterns[] = "/[li=(.*)](.*)[/li]/sU";
        
$ts->replacements[] = '<li type="\1">\2</li>';        

        return 
true;
    }


     Čímž jsem původní funkci rozšířila o možnost předání parametru tagu LI a tím je možné vytvářet různé seznamy, jak číslované, tak nečíslované. Nečíslovaných seznamů s odrážkami existují čtyři typy:

- bez parametru
- parametr circle
- parametr disc
- parametr square

     Pokud tagu LI zkusíte předat jiný parametr, tak jej bude ignorovat a zachová se tak, jako kdyby parametr nebyl vůbec předaný. Přesné chování záleží na tom kterém prohlížeči. Na předchozím seznamu také vidíte dosavadní praxi ve vytváření seznamů. Naštěstí to již jde dělat lépe

     Nečíslovaný seznam bez jakéhokoli zadaného parametru. Výsledkem je seznam s odrážkami, které dodává prohlížeč a proto jejich tvar závisí na prohlížeči a jeho nastavení.

  • První odrážka
  • Druhá odrážka
  • Třetí odrážka
  • Čtvrtá odrážka
  • Pátá odrážka


[ul]
[
li]První odrážka[/li]
[
li]Druhá odrážka[/li]
[
li]Třetí odrážka[/li]
[
li]Čtvrtá odrážka[/li]
[
li]Pátá odrážka[/li]
[/
ul]


     Nečíslovaný seznam s parametrem „circle“. Jako odrážka je použitá kružnice.

  • První odrážka
  • Druhá odrážka
  • Třetí odrážka
  • Čtvrtá odrážka
  • Pátá odrážka


[ul]
[
li=circle]První odrážka[/li]
[
li=circle]Druhá odrážka[/li]
[
li=circle]Třetí odrážka[/li]
[
li=circle]Čtvrtá odrážka[/li]
[
li=circle]Pátá odrážka[/li]
[/
ul]


     Nečíslovaný seznam s parametrem „disc“. Jako odrážka je použitý kroužek.

  • První odrážka
  • Druhá odrážka
  • Třetí odrážka
  • Čtvrtá odrážka
  • Pátá odrážka


[ul]
[
li=disc]První odrážka[/li]
[
li=disc]Druhá odrážka[/li]
[
li=disc]Třetí odrážka[/li]
[
li=disc]Čtvrtá odrážka[/li]
[
li=disc]Pátá odrážka[/li]
[/
ul]


     Nečíslovaný seznam s parametrem „square“. Jako odrážka je použitý plný obdélníček.

  • První odrážka
  • Druhá odrážka
  • Třetí odrážka
  • Čtvrtá odrážka
  • Pátá odrážka


[ul]
[
li=square]První odrážka[/li]
[
li=square]Druhá odrážka[/li]
[
li=square]Třetí odrážka[/li]
[
li=square]Čtvrtá odrážka[/li]
[
li=square]Pátá odrážka[/li]
[/
ul]


     Každá odrážka může mít parametr nastavený jinak, takže lze kombinovat všechny čtyři předchozí možnosti.

  • První odrážka
  • Druhá odrážka
  • Třetí odrážka


[ul]
[
li=circle]První odrážka[/li]
[
li=disc]Druhá odrážka[/li]
[
li=square]Třetí odrážka[/li]
[/
ul]


     Přejděme na číslované seznamy. Ačkoli je tag UL určený pro nečíslované seznamy, umí udělat seznam číslovaný, ačkoli na to byl původně určený tag OL. Proč tomu tak je patří k záhadám dnešního webu a doby.

     Jednoduchý číslovaný seznam dostaneme nastavením parametru na „1“:

  • První odrážka
  • Druhá odrážka
  • Třetí odrážka
  • Čtvrtá odrážka
  • Pátá odrážka


[ul]
[
li=1]První odrážka[/li]
[
li=1]Druhá odrážka[/li]
[
li=1]Třetí odrážka[/li]
[
li=1]Čtvrtá odrážka[/li]
[
li=1]Pátá odrážka[/li]
[/
ul]


     Pokud chcete seznam s velkými písmeny, použijeme parametr „A“:

  • První odrážka
  • Druhá odrážka
  • Třetí odrážka
  • Čtvrtá odrážka
  • Pátá odrážka


[ul]
[
li=A]První odrážka[/li]
[
li=A]Druhá odrážka[/li]
[
li=A]Třetí odrážka[/li]
[
li=A]Čtvrtá odrážka[/li]
[
li=A]Pátá odrážka[/li]
[/
ul]


     Seznam s malými písmenky dostaneme použitím parametru „a“:

  • První odrážka
  • Druhá odrážka
  • Třetí odrážka
  • Čtvrtá odrážka
  • Pátá odrážka


[ul]
[
li=a]První odrážka[/li]
[
li=a]Druhá odrážka[/li]
[
li=a]Třetí odrážka[/li]
[
li=a]Čtvrtá odrážka[/li]
[
li=a]Pátá odrážka[/li]
[/
ul]



     Parametr nastavený na „I“ vytvoří seznam číslovaný římskými čísly:

  • První odrážka
  • Druhá odrážka
  • Třetí odrážka
  • Čtvrtá odrážka
  • Pátá odrážka


[ul]
[
li=I]První odrážka[/li]
[
li=I]Druhá odrážka[/li]
[
li=I]Třetí odrážka[/li]
[
li=I]Čtvrtá odrážka[/li]
[
li=I]Pátá odrážka[/li]
[/
ul]


     A parametr „i“ vytvoří seznam číslovaný malými římskými čísly:

  • První odrážka
  • Druhá odrážka
  • Třetí odrážka
  • Čtvrtá odrážka
  • Pátá odrážka


[ul]
[
li=i]První odrážka[/li]
[
li=i]Druhá odrážka[/li]
[
li=i]Třetí odrážka[/li]
[
li=i]Čtvrtá odrážka[/li]
[
li=i]Pátá odrážka[/li]
[/
ul]


     Všechny parametry lze kombinovat, takže vznikne následující seznam:

  • První odrážka
  • Druhá odrážka
  • Třetí odrážka
  • Čtvrtá odrážka
  • Pátá odrážka


[ul]
[
li=1]První odrážka[/li]
[
li=A]Druhá odrážka[/li]
[
li=a]Třetí odrážka[/li]
[
li=I]Čtvrtá odrážka[/li]
[
li=i]Pátá odrážka[/li]
[/
ul]


     I u číslovaných seznamů platí, že pokud předáme neznámý parametr, tak jej bude prohlížeč ignorovat a zachová se stejně, jako kdyby parametr předaný nebyl. A stejně jako u nečíslovaných seznamů platí, že přesně chování záleží na tom kterém prohlížeči.

     Když jsem měla úpravu souboru li.php hotovou, tak bylo ve zdrojovém souboru stránky vidět, že to funguje, nicméně výsledek v prohlížeči byl pořád stejný, modrý text se čtvercovými odrážkami. Zkoumáním prvků jsem přišla na to, že jsou seznamy formátované i pomocí CSS a proto jsem začala hledat a nakonec toto formátování našla v souboru style.css, který je v adresáři s tématem (THEMES). Takže pokud se pro úpravu svého Xoopsu rozhodnete, všechno dobře uděláte a stejně to nebude pořádně fungovat, podívejte se ještě na stylopis, jestli tam není formátování seznamů. Hledejte něco podobného:

ul margin2pxpadding2px; list-styledecimal insidetext-alignleft;} 
li margin-left2px; list-stylesquare insidecolor#2F5376}


     Přičemž je potřeba smazat parametr „list-style“.

     Po těchto drobných změnách je Xoops zase o něco lepší a přítulnější. Pokud se pro úpravu svého Xoopsu také rozhodnete, budu ráda. Předem si ale raději zazálohujte původní soubory, člověk nikdy neví. A také je dobré promazat vyrovnávací paměť systému, aby se změny projevily okamžitě.


Použitá literatura:

https://www.jakpsatweb.cz/html/seznamy.html
https://www.zirafoviny.cz/modules/news/article.php?storyid=128
Hodnocení: 0,00 (0 hlasů) - Ohodnotit -
Formátovat pro tisk Poslat známému Vytvořit z článku PDF
Komentář je vlastnictvím svého autora. Vyjadřuje jeho názory, ne názory redakce nebo provozovatele webu či serveru.
Napsal/a Vlákno

Obrázek Obrázek
ObrázekObrázekObrázekObrázekObrázek
Obrázek
Redakční systém XOOPS 2.5.10
Obsah © 2008-2019 Žirafoviny