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
19 uživatel(ů) je online (5 uživatel(ů) si prohlíží Články a povídání)

Uživatelé: 0
Hosté: 19

více...
Noví uživatelé
viktor
viktor
07.07.2024
Chlaban
Chlaban
19.04.2024
Kubrt
Kubrt
16.04.2024
Mirek
Mirek
14.04.2024
POKEC
POKEC
21.03.2024
Luigi
Luigi
14.03.2024
zirafak
zirafak
26.02.2024
rorejs
rorejs
27.12.2023
maroš
maroš
07.11.2023
vlada
vlada
17.09.2023
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í 1223×) 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-2020 Žirafoviny