Problém s rozšířením "Custom Code" ("Vlastní kód") a phpBB 3.1.6

Odpovědět Téma
Avatar uživatele
leschek
Administrátor
Reakce:
Příspěvky: 724
Registrován: 23 Říj 2005 23:22
Tykání: Ano
Kontaktovat uživatele:

Problém s rozšířením "Custom Code" ("Vlastní kód") a phpBB 3.1.6

Nepřečtený příspěvek od leschek »

Problém s rozšířením "Custom Code" ("Vlastní kód") a phpBB 3.1.6

Po aktualizaci na phpBB 3.1.6 se objevil problém s rozšířením "Custom Code" ("Vlastní kód"), který způsobil, že se místo aktualizovaného fóra zobrazí bílá stránka s chybovou hláškou. Pokud tomu rozumím správně, tak k problému došlo po aktualizaci Twigu (v phpBB 3.1.6), který nedovoluje (nebo neumí) načítat soubory mimo adresář s rozšířením a podle pravidel pro schválení rozšíření na phpBB.com musí být vlastní soubory rozšíření (např. fotky u galerie, nebo vlastní kódy u rozšíření "Custom Code"), mimo adresář s rozšířením - je to proto, aby se zabránilo náhodnému smazání důležitých souborů při aktualizaci rozšíření. Takže vlastně jde o to, že "Custom Code" má soubory na správném místě, ale phpBB je po aktualizaci nedokáže načíst, což vyhodí chybu.

Momentálně nevím, jak se problém bude řešit - jestli phpBB tým udělá nějaké změny v phpBB kódu, nebo změní pravidla pro rozšíření, protože autor rozšíření zatím nemůže situaci nijak řešit. V každým případě to ale nejspíš bude nějakou dobu trvat.

Bezpečná aktualizace phpBB 3.1.6 s rozšířením "Custom Code"

Abyste mohli aktualizovat phpBB na verzi 3.1.6, stačí když v administraci zakážete rozšíření "Custom Code". Sice tím na chvíli přijdete o vlastní úpravy na fóru, ale zase budete moct bezpečně aktualizovat.

Oprava fóra po aktualizaci na phpBB 3.1.6 s rozšířením "Custom Code"

Pokud tohle čtete až po aktualizaci fóra (a máte bílou stránku), tak smažte složku ext/marttiphpbb/customcode/styles, promažte na FTP složku cache (v kořenovém adresáři fóra - smažte v ní všechno, kromě souborů index.htm a .htaccess) a fórum by zase mělo fungovat.

Oprava vlastních kódů použitých v rozšíření "Custom Code"

Autor rozšíření "Custom Code" přišel s náhradním řešením pro všechny, kdo měli v jeho rozšíření svůj kód. Spočívá to v tom, že vytvořil několik jednodušších rozšíření, pomocí kterých se rozšíření "Custom Code" nahradí. Výhodou je to, že budete moci použít jakékoliv události (eventy), které jsou v šablonách a nevýhodou je, že nebudete moci soubory upravovat v administraci.
  1. "Insert Template Code" - Jednoduché rozšíření obsahující pouze nejnutnější soubory, do kterého můžete vložit svoje soubory odkazující na události v šablonách. Vlastní soubory se musí vložit do složky ext/marttiphpbb/inserttemplatecode/style/all/template/event.

    Pokud jste používali rozšíření "Custom Code", tak zkopírujte obsah složky store/customcode do složky ext/marttiphpbb/inserttemplatecode/style/all/template/event.

    Pokud jste ze souborů v "Custom Code" odkazovali na svoje vlastní soubory pomocí kódu <!-- INCLUDE ../../../../../../store/customcode/muj_soubor.html --> (více zde), tak z nich odstraňte tuto část kódu ../../../../../../store/customcode, takže vám zůstane <!-- INCLUDE muj_soubor.html --> a pak vložte tyto vaše vlastní soubory do složky ext/marttiphpbb/inserttemplatecode/style/all/template/ (pozor na to, že to není stejná složka jako ta, kam se dávají soubory přímo odkazující na události v šablonách, ale její nadřazená složka).

    Po jakékoliv změněn v šablonách nezapomeňte v administraci promazat cache fóra.

    Instalace - Pokud nepoužíváte rozšíření "Upload Extension" ("Nahrát rozšíření"), tak vložte rozšíření do složky ext/marttiphpbb/inserttemplatecode a povolte ho v "Administraci" - "Přizpůsobení" - Správa rozšíření" - "Správce rozšíření".
     
  2. "Group Template Variables" - Jednoduché rozšíření, které přidává do fóra proměnné pro šablony pro všechny skupiny ve fóru, tak můžete zobrazit něco jen určité skupině uživatelů. Např. pokud chcete něco zobrazit skupině s ID 8 použijete následující kód:

    Kód: Vybrat vše

    <!-- IF S_GROUP_8 --> Obsah, který budou vidět jen členi skupiny s ID 8 <!-- ENDIF -->
    Tato funkce nebyla součástí rozšíření "Custom Code", ale je od stejného autora a vcelku slušně rozšiřuje možnosti zobrazení různých prvků určitým skupinám.

    Instalace - Pokud nepoužíváte rozšíření "Upload Extension" ("Nahrát rozšíření"), tak vložte rozšíření do složky ext/marttiphpbb/grouptempvars a povolte ho v "Administraci" - "Přizpůsobení" - Správa rozšíření" - "Správce rozšíření".
     
  3. "Parameter Template Variables" - Některé stránky v phpBB mají i své podstránky, na které je odkazováno v URL adrese pomocí parametrů. Pomocí těchto parametru jde vožit vlastní kód na stránku, na kterou je potřeba. Více jsem o tom napsal tady.

    Jediný rozdíly jsou v tom, že v rozšíření "Custom Code" se používá v podmínce CUSTOMCODE_PARAM_<parametr> a v rozšíření "Parameter Template Variables" se používá PARAMTEMPVARS_<parametr>, takže pokud např. budete chtít zobrazit vlastní kód na registrační stránce vložíte ho do následující podmínky:

    Kód: Vybrat vše

    <!-- IF SCRIPT_NAME == 'ucp' and PARAMTEMPVARS_MODE == 'register' -->
    vlastní kód
    <!-- ENDIF -->
    Instalace - Pokud nepoužíváte rozšíření "Upload Extension" ("Nahrát rozšíření"), tak vložte rozšíření do složky ext/marttiphpbb/paramtempvars a povolte ho v "Administraci" - "Přizpůsobení" - Správa rozšíření" - "Správce rozšíření".
Odpovědět