You are here: Home » WordPress » První pomoc při Syntax WordPress Error

První pomoc při Syntax WordPress Error

Správě bychom do kódů šablon a pluginů neměli zasahovat. Navíc při jejich aktualizaci dojde většinou ke kompletnímu přepisu zdrojového kódu. I tak nám to ale občas nedá a rozhodneme se část editovat. Nejčastěji je to z důvodů násilného „počeštění“ anebo snahy vložit do zdrojového kódu přímo reklamu. No a nejčastější chybu na kterou tímto počínáním narazíte je právě Parse error – syntax error.

Co je Parse error – syntax error vlastně zač

Parse error znamená, že při zpracovávání kódu PHP serverem došlo k chybě. PHP totiž opakovaně kompiluje skripty a právě při této kompilace může dojít k problémům. Nejčastější jsou to takzvané syntaktické chyby (syntax error). Což jsou většinou překlepy.

V podstatě je tyto chyby poměrně jednoduché najít a opravit. Ovšem chce to znát alespoň základy práce v PHP. Pokud je nemáte, tak se do úprav šablon opravdu nepouštějte a věnujte pár hodin studiu základů programování v PHP. Dozvíte se tam totiž vše potřebné. Pravděpodobně jste totiž jen neuzavřeli řádek středníkem anebo se vám podařilo vložit do textu nepovolený znak.

Úprava zdrojových kódů

Editor zdrojových kódů ve WordPress také není zrovna dvakrát ideální pro složitější úpravy. Vlastně není vhodný vůbec. Ideální je pro úpravu souborů použít editor k tomu určený. Za sebe doporučuji PSPad, který je kompletně zdarma a v češtině.

Přeštěte si   WordPress 4.6 bude umět odhalit nefunkční odkaz

Také cokoliv dělat za plného běhu na ostré verzi není moc ideální. Pokud si chcete hrát například se šablonami, tak si vytvořte testovací web buď přímo doma na počítači anebo například na subdoméně. Teprve až odladíte všechny chyby, pak upravenou šablonu nahrajte na ostrý web.

Ono často svádí ta úprava několika málo řádků se s tím moc nepárat, ale zkuste si vytvořit dobré návyky už od začátku.

Nejčastější syntaktické chyby

Klasická syntaktická chyba vypadá následovně:

Parse error – syntax error, unexpected $end in /hosting-7513/www/vaswordpres.tld/wp-content/themes/sablona/functions.php on line 38

Šedivě je označená chybová hláška. Říká vám o jakou chybu se jedna.

Modře je označena cesta na serveru do adresáře, kde se nachází výš webhosting. Pokud budete něco řešit se zákaznickou podporou vyplatí se jim poslat celou adresu, protože se v ní často nachází číslo hostingu. Snadněji si mohou dohledat problém.

Zeleně je adresářová struktura. Podle ní zjistíte, kde se nachází problémový soubor.

Červeně je označen přímo soubor s chybou. Tento je nutné opravit.

Fialově je označen řádek, kde se chyba nachází. Pozor nemusí to být přesné. Například v případě neuzavřeného cyklu anebo podmínek se občas určuje řádek před chybou.

Přeštěte si   Adoptujte si WordPress plugin v akci Adopt-me

Teď když už víte jak se syntaktická chyba ohlašuje můžete jí snadno dohledat a případně i odstranit. Mezi nejčastější problémy patří:

Neukončený řádek

Každý řádek PHP skriptu by měl být uzavřen středníkem (;), toto není pravidlo. Někteří programátoři si rozepisují příkazy na více řádků. Například se to hodí u přípravy SQL dotazů, hlaviček, polí atd.

Pokud ale chcete zasahovat do skriptu, měli byste vše psát na jeden řádek. Snadno tak dohledáte chybu.

Hlavně u začínajících programátorů anebo těch, kteří přešli z jiného programovacího jazyku je to častý problém.

Vložili jste text do PHP kódu

PHP kód začíná <?php a končí ?> cokoliv uvnitř musí být v PHP jinak dostanete právě syntaktickou chybu. Pokud použijete nějaký editor pro programátory automaticky vám takovouto oblast vysvítí. Nikdy mezi tyto tagy nepište nějaký kód, pokud nemáte alespoň základy PHP.

Nedovolený znak v PHP kódu

Možná si myslíte, že vložit do již napsaného kódu pár znaků navíc nemusí být problém. Ovšem ne každý znak si můžete dovolit jen tak vložit i do textu, který se má vracet. Nejčastějším problém jsou uvozovky. Pokud například skript vrací nějaký text pomocí:

Přeštěte si   Podpora pro WordPress

echo „Napiš tento text“;

A vy se rozhodnete do něj dát uvozovky:

echo „Napiš tento „lepší“ text“;

Vyhodí to chybu. Samozřejmě se to dá obejít pomocí zpětného lomítka \, které dáte před vložené uvozovky, ale pokud toto neznáte, doporučuji si projít nějaký tutoriál. Za pár hodin už budete vědět co se smí a co ne.

První pomoc při problémech

Pokud už se dostanete do problémů, vždy pomůže záloha. Před jakoukoliv úpravou si vše zazálohujte a když se něco pokazí prostě přepište vše starou funkční verzí.

Jestli zálohu nemáte a WordPress nefunguje, tak v případě pluginu, jej vypněte a u šablon prozatím přepněte na nějakou funkční. Ideálně základní šablonu.

Jestli se vám podařilo některou ze základních šablon rozbít, tak si jí stáhněte z WordPress.org a přehrajte jí. Mělo by fungovat i šablonu smazat a znovu nainstalovat přes rozhraní WordPress ale to nedoporučuji. I rozbitou šablonu stojí za to si zazálohovat. Přeci jen můžete tam mít kusy kódu o které nechcete přijít. Mimochodem pokud si chcete hrát se základníma šablonami zkuste zauvažovat o child themes. Ty nemusíte přepisovat při každé aktualizaci 🙂

Share Button

Programuju v PHP už několik let spíše pro zábavu. Baví mě WordPress, protože tak lenivým lidem jako jsem já ušetří spoustu času. A rád sbírám reklamní flash disky. Tento blog používám pro utřídění myšlenek.

http://n-host.cz

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *