IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Lekce 1 - Instalace knihoven TinyMCE, FancyBox a dalších do CMS

Spojení TinyMCE, Responsive FileManager a CMS (systém pro zveřejňování obsahu) se stává být zajímavou možností pro ty, kteří chtějí získat dostupné řešení s bohatou možností nastavení. Spojením těchto tří součástí můžeme získat okamžité řešení pro svůj webový projekt.

TinyMCE

TinyMCE je oblíbený vizuální editor obsahu. Především je populární v open source verzi, šířen pod LGPL. LGPL je licence, která umožňuje ve zkratce propojení svobodného kódu s nesvobodným. Vypadat může například takto:

TinyMCE ukázka
itnetwork.cz

Nenechte se ale zmást vzhledem, stylovat si ho můžete úplně podle svých představ a existuje na něj i mnoho předdefinovaných skinů (vzhledů).

Responsive FileManager

Responsive FileManager je správce souborů. Umožňuje přidávat a odebírat soubory v různých formátech s bohatou možností nastavení. Do TinyMCE 5 bude přidán jako plugin (rozšíření). Plugin bude spouštěn prostřednictvím TinyMCE. Responsive FileManager je také open source, takže si ho můžeme bezplatně stáhnout a používat.

Vypadá takto:

Populární knihovny v JavaScriptu

Fancybox

Fancybox je javascriptový plugin určen především pro práci s galerií. Na použití je velice jednoduchý a díky tomu můžeme mít pěknou galerii téměř bez práce:

Populární knihovny v JavaScriptu

V dalších lekcích

V následujících lekcích si vhodně nastavíme TinyMCE editor s vytvořením vlastního limitu znaků pro pole textarea. Limit bude nezávislý od interního limitu TinyMCE. Integrujeme plugin Responsive FileManager do editoru TinyMCE a funkčně jej nastavíme. Použijeme na svém webu minimálně 2 typy uploadů. První typ použije upload souborů přes TinyMCE a druhý typ bude vlastní samostatný upload souborů využívající plugin Responsive FileManager. Budeme mít možnost přidávat vlastní konfigurační soubory k jednotlivým adresářům a tím vhodně nakonfigurovat adresář určený pro upload souborů. Dále můžeme vytvořit více typů úložišť souborů. Například úložiště galerie/, soubory/ a media/ s různým nastavením limitů.

Instalace balíčků

Níže popisuji instalaci potřebných balíčků pro správné fungování. Odkazy jsou na oficiální stránky nebo GitHub. V případě výpadku z některých uvedených zdrojů nahraju vše pod další článek (vyjma CMS od ITnetwork, na který budeme knihovny implementovat).

Editor TinyMCE

S vyhlídkou do budoucna je výhodné mít TinyMCE editor uložen na svém serveru. V minulosti bylo sice výhodné přistupovat k TinyMCE editoru z externího zdroje, ale v současnosti se vývojáři rozhodli omezit přístup na tento externí zdroj. Stačil například pouze tento zápis:

<script type = "text/javascript" src = "//tinymce.cachefly.net/4.0/tinymce.min.js"></script>

TinyMCE editor se následně stal přístupný na našem webu. Při používání TinyMCE editoru z externího zdroje je nutná registrace a API klíč, přičemž použití editoru se váže do určitého termínu. V praxi to znamená, že pokud zůstaneme na nepodporované starší verzi, TinyMCE editor nám zablokují. To je uživatelsky značně nevýhodné a těžko udržitelné.

Uživatelský výhodnější řešení je stáhnout si plnou verzi TinyMCE Community editoru přímo z oficiálních stránek a stáhnout si dostupný český nebo slovenský balíček z https://www.tiny.cloud/…ge-packages/.

Postup instalace TinyMCE

TinyMCE je už předinstalován v redakčním systému ITnetworkMVC. Pokud budeme používat CMS z kurzu MVC v PHP, není třeba ho instalovat a můžete rovnou přejít k instalaci FancyBoxu.

Stažený balík bude mít prvně složku tinymce/, poté js/ a pak znovu tinymce/. Obsah této složky budeme kopírovat. V kořenovém adresáři svého webu si vytvoříme složku tinymce/ a do ní nakopírujeme soubory z výše uvedené složky. Potom vyextrahujeme český nebo slovenský baliček ze zazipovaného souboru a nakopírujeme do už vytvořené složky tinymce/langs/ svého webu.

Nakonec nastavíme cestu k editoru.

Všude, kde se bude TinyMCE používat, přidáme tento kód:

<script src = "/tinymce/tinymce.min.js"></script>
<script src = "/tinymce/jquery.tinymce.min.js"></script>

Ten máme například v souboru pohledy/editor.phtml .

Pokud však nemáte tinymce/ v kořenové složce webu a máte ho například ještě ve složce js/, je třeba URL k balíčku samozřejmě změnit.

Máme hotovo! Výhody interního editoru jsou značné. Můžeme používat služby editoru bez omezení i bez připojení na internet. Při testování na localhostu nejsme vázáni na datum podpory a samotná aktualizace je pouze na nás.

Instalace Fancyboxu

Fancybox galerii můžeme nainstalovat do svého úložiště jako interní zdroj, nemusíme se spoléhat na funkčnost serverů při použití z externího zdroje tak, jako s TinyMCE. Fancybox servery nás však (zatím) nijak API klíčem neomezují. To se ale může změnit a pokud děláme někomu web, kde chce mít galerii, je nanejvíc vhodné si Fancybox stáhnout na vlastní server.

Fancybox galerii si můžeme stáhnout z GitHubu nebo pomocí npm příkazu:

npm i @fancyapps/[email protected]

Stáhneme si balík UI, kde je navíc carousel (plátno, kde se dá přepínat s obrázky) a panzoom (přiblížení a přejíždění mezi obrázky na mobilních zařízení přes dotyk).

Instalovat budeme verzi 4.0.5, existuje však i o něco starší verze, která je dostupná na http://fancybox.net/, je jednodušší na používání. Používat však budeme o tři řády vyšší verzi a to zmíněnou 4.0.5.

Instalace jQuery

Nedílnou součástí Fancyboxu je jQuery, kterou si můžeme stáhnout na https://jquery.com/ nebo pomocí příkazu:

npm i jquery

Stačí zadat příkaz výše a jQuery bude staženo do složky node_modules/jquery/. Osobně to budu dělat manuálně, stáhneme balík z https://jquery.com/, přesněji se doklikáme na adresu https://code.jquery.com/…3.6.0.min.js (verze se může lišit). Pravým klikneme na stránku a klikneme na "Uložit jako..." a soubor si uložíme na web do složky své nové složky jquery/.

Instalace CMS

CMS můžete použít svůj vlastní nebo můžete použít ze serveru itnetwork.cz. V článku bude použit Jednoduchý redakční systém z kurzu MVC redakční systém v PHP, kde vše budeme implementovat. Náš CMS má také předinstalovaný TinyMCE, není ho tedy třeba instalovat znovu.

Z CMS chceme využít především jeho schopnost přihlašování, sessions, editor aj. Tento tutoriál však můžete aplikovat na jakýkoliv jiný CMS.

Postup instalace nebudu rozepisovat bylo by to duplicitní, vše podrobně je popsáno ve zmíněném článku. V zásadě úplně stačí nakopírovat soubory ze zmíněného CMS do kořenové složky svého webu a zpřístupnit databázi. Stačí si databázi naimportovat a v souboru index.php zadat správné údaje databáze na tomto řádku:

// Připojení k databázi
Db::pripoj("127.0.0.1", "root", "", "mvc_db");

CMS zde ke stažení nebude, protože je součástí jiného kurzu.

Instalace Responsive FileManager (RF)

Projdeme si nejprve požadavky před samotnou instalací, ta bude na straně serveru i klienta.

Serverové požadavky

  • Vyžaduje se alespoň PHP 7.1 nebo vyšší
  • Apache 2.2 nebo 2.4 (pravděpodobně máte)

K tomu dodávám, že RF pravděpodobně ve verzi PHP 7.1 bude fungovat nejlépe. Demo verze, kterou máte možnost si odzkoušet na adrese responsivefile­manager.com/de­mo.php před samotnou instalací, dává tomu za pravdu.

Požadavky klienta (PC)

RF se ve své struktuře připojuje na externí zdroje. To znamená, že bez připojení na internet ho nespustíte. Pokud používáte některé rozšíření nebo přídavné pluginy prohlížeče na anonymizaci, které blokují RF, je třeba je zakázat nebo povolit jejich URL.

Rozšíření nebo pluginy prohlížeče, které přímo blokují spuštění:

  • Decentraleyes - přímo blokuje spuštění, řešením je zakázat rozšíření nebo povolit URL.
  • Privacy Badger - povolí spustit RF, ale blokuje spuštění vestavěného editoru obrázků - Toast UI image editor. Blokující URL adresa je uicdn.toast.com. Řešením je buď rozšíření zakázat nebo povolit URL.

Stažení

Oficiální balíček je dostupný na adrese responsivefile­manager.com, vždy nejnovější verzi však můžete sehnat na GitHubu.

Pokud si opět nevíte rady, pod článkem je archiv se všemi balíčky.

Základní postup instalace RF v součinnosti s TinyMCE

Po stažení oficiálního balíčku si ze zazipovaného souboru responsive_filemanager.zip vyhledáme složky filemanager/, thumbs/ a source/. Celé tyto složky vyextrahujeme do kořenového adresáře svého webu.

Ve složce thumbs/ se budou ukládat miniatury souborů, ve složce source/ budou přímo nahrané soubory.

Pro složky thumbs a source musíte nastavit práva na 777! Bez těchto práv nebude moct RF nahrávat soubory. Pokud máte web pouze na localhostu na Windows, není třeba nic dělat.

Ze zazipovaného souboru responsive_filemanager.zip nám zbývá už pouze složka tinymce/. Tuto složku vyextrahujete tam, kde máte nainstalován TinyMCE. Pokud postupujete podle mě a našeho CMS, budete ji mít v kořenovém adresáři webu.

V další lekci, Limit znaků a FileManager v editoru TinyMCE v PHP, si ukážeme, jak nastavit Responsive FileManager a implementujeme si vlastní limit znaků pro TinyMCE.


 

Měl jsi s čímkoli problém? Zdrojový kód vzorové aplikace je ke stažení každých pár lekcí. Zatím pokračuj dál, a pak si svou aplikaci porovnej se vzorem a snadno oprav.

Všechny články v sekci
Populární knihovny v JavaScriptu
Přeskočit článek
(nedoporučujeme)
Limit znaků a FileManager v editoru TinyMCE v PHP
Článek pro vás napsal Otvorený Zdroj
Avatar
Uživatelské hodnocení:
5 hlasů
Zameranie PHP a webové aplikácie
Aktivity