Bláznivý php plugin. Vložení PHP kódu do stránky. Přidání filtrů pomocí add_filter()

Poměrně často zveřejňuji různé, které hodně usnadňují život. A téměř vždy se soustředím na to, jak je správně zapojit.


Samozřejmě je jednodušší a běžnější jít tradiční cestou a jednoduše vložit úryvek do souboru funkce.php vaše aktivní téma. Ale v 9 z 10 případů bude účelnější a správnější umístit kód fragmentu do samostatného pluginu. Jako poslední možnost jej přidejte do speciálního funkčního pluginu pro váš web. T.N. Specifické pro web WordPress Plugin , ve kterém budou uloženy všechny doplňkové funkce vašeho webu.

Proč je to nutné?

Vysvětlím dál jednoduchý příklad. Řekněme, že jste vytvořili web se složitou strukturou, hmotností vlastní typy data, taxonomie, filtry, nabídky s podporou velkého množství vlastních polí a vlastní nastavení. Veškeré úpravy, jak se v tomto případě sluší, umístíte do souboru funkce.php. Vše je v pořádku, ale uplyne nějaký čas a vy budete stát před úkolem redesignu. Chcete se změnit nebo rozvíjet nové téma. Tehdy začínají problémy. Protože všechny funkce webu jsou integrovány do staré téma, vypne se spolu s ním.

Jak být

Je potřeba pochopit jednoduchá pravda. Soubor funkcí motivu by měl obsahovat pouze funkce, které jsou relevantní pro návrh vašeho webu. Konkrétně pro téma, jehož funkční soubor je upravován. A všechny tzv „mechanika“, funkční funkčnost webu a všechny jeho úpravy jsou správněji umístěny v pluginech. Nebo v jednom pluginu. Když pak změníte téma, zůstane nedotčeno.

tvoříme speciální plugin Funkce WordPress

Ve skutečnosti se vše dělá velmi jednoduše.

  • Vytvořte složku v adresáři pluginů WordPress. Například: /wp-content/plugins/mysite-plugin/;
  • Vytvořte soubor v této složce a nazvěte jej např. my-plugin.php;
  • Do tohoto souboru vložte následující kód:
  • Přejděte do nastavení správy pluginu a aktivujte svůj nový plugin.

Název, popis a komentáře ke kódu lze nahradit vlastními. Nyní můžete do tohoto pluginu umístit všechny potřebné úryvky a přizpůsobení. Bez obav ze ztráty funkčnosti webu při opětovné změně aktivního motivu.

Zde se můžeme zastavit, ale nebylo by z mé strany úplně správné nezmínit tzv. pluginy MU.

MU pluginy (musí používat pluginy)

Pluginy MU mohou být velmi užitečné v případech, kdy je zakázání pluginu nepřijatelné a mohlo by způsobit kritické chyby v provozu stránky. Například na klientských stránkách. Chcete-li se vyhnout nesprávným akcím klienta v konzole správy webu.

MU pluginy jsou pluginy povinné použití WordPress, které se instalují do speciálního adresáře a jsou vždy aktivní. Pluginy MU nejsou zobrazeny v obecný seznam pluginy stránek, pro ně existuje samostatná záložka. Lze je zakázat pouze přímým smazáním souboru pluginu MU z adresáře.

Výhody MU pluginů
  • Zásuvné moduly MU není nutné aktivovat, jsou vždy aktivní a nelze je zakázat v konzole pro správu webu;
  • Plugin MU se připojí a aktivuje pouhým nahráním souboru pluginu do adresáře mu-plugins;
  • Pluginy MU jsou načteny do abecední pořadí před načtením běžných pluginů.

Upozorňujeme, že podadresáře pro pluginy MU, na rozdíl od běžných, nejsou podporovány. Jako poslední možnost si můžete vytvořit plugin a napsat do něj jednoduchý loader, který bude pluginy načítat z adresářů. Něco jako toto:

Na závěr

Jak vidíte, na používání funkčních pluginů není nic zásadně obtížného. A výhody jejich použití jsou zřejmé. Často jsem slýchal názor, že pluginy vytvářejí na webu nějakou neuvěřitelnou zátěž. Mnoho uživatelů má určité předsudky ohledně nebezpečí používání pluginů. Není to tak úplně pravda. Škodu mohou způsobit pluginy pro leváky, vyvinuté někým neznámým a stažené z neznámých zdrojů. Špatná optimalizace pluginu, používání zastaralých PHP funkce a WordPress. Škody mohou pocházet z velké množství současně spuštěné pluginy. Zejména s duplicitní funkčností. Je také možný banální konflikt mezi pluginy a pluginy s tématem. A s kompetentním a rozumným přístupem přinesou pluginy vašemu webu výjimečné výhody.

Všechny nejnovější a nejzajímavější ze světa WordPress na mém kanálu Telegram. Upsat!

Pokud chcete, aby váš blog fungoval správně, bylo by skvělé zvážit úpravu nebo aktualizaci verze PHP. Nová verze PHP (PHP7) zatím není dostatečně rozšířená, ale nebude to na dlouho, protože tato nová verze přinese spoustu novinek a je velmi pravděpodobné, že tato verze je vyžadována pro všechny WordPress hostingy.

Proč byste měli upgradovat na PHP 7

Pokud na svém serveru provozujete web WordPress, zřejmě již máte nainstalované PHP. Proč tedy upgradovat, když vše funguje tak dobře?

Zde jsou některé z nejčastějších důvodů, proč byste měli zvážit upgrade verze PHP:

  • Pluginy a skripty, které jste nainstalovali, již nejsou kompatibilní s verzí, kterou používáte.
  • Minimální požadavky na provoz WordPressu se zvýší
  • Verze, kterou používáte, má bezpečnostní díry a aktualizace obsahuje opravu
  • Musíte přejít ke stabilnímu uvolnění
  • Chcete lokálně otestovat jinou verzi? Instalace WordPressu nebo v testovacím prostředí
  • Zjistili jste konflikty mezi verzí, kterou používáte, a pluginy, motivy nebo skripty, které jste nainstalovali.

To vše jsou oprávněné důvody, ale než se pustíte do aktualizace PHP, aktualizace má nevýhody, které byste měli zvážit a pečlivě si je přečíst.

Budou také popsány důležité vedlejší účinky...

Pokud chcete změnit věci, každý nemusí být nutně růžový, bohužel.

Hlavní věc, kterou musíte mít na paměti před upgradem, je, že všechny vaše pluginy, motivy a skripty nemusí být nutně kompatibilní s nejnovější verzi PHP, které chcete použít Pokud nebude kompatibilní, vaše stránky již pravděpodobně nebudou použitelné.

Každá verze PHP nabízí nové možnosti, vylepšení a možné opravy, bezpečnostní záplaty a struktury kódu. Zatímco některé aktualizace jsou méně komplexní než jiné, mnoho verzí obsahuje vylepšení nebo úpravy, které činí některé části starších verzí zastaralými.

V některých případech již nejsou podporovány celé verze, jako je PHP 4 a vyšší. Pokud na svém webu používáte pluginy, motivy nebo skripty, které závisí na starším kódu PHP a aktualizujte na další nová verze Aktualizace PHP způsobí, že kód bude zastaralý, a tím rozbije váš blog. ,

I když tomu tak stále není, je důležité pochopit, že změny, které provedete, budou mít dopad, jaký máte. Takže možná budete chtít zvážit různé problémy kompatibilita.

Kromě toho ruční kontrola Chcete-li na svém webu objevit možná slabá místa, jsou k dispozici pluginy, které vám dají vědět, zda je vaše prostředí s aktualizací kompatibilní.

Kontrola kompatibility PHP

Zde jsou některé pluginy, které můžete použít ke kontrole kompatibility vašeho prostředí s aktualizovanými verze PHP:

  • PHP Compatibility Checker - Tento plugin umožňuje detekovat verzi PHP a provádět analýzu proti aktuální verze PHP na vašem hostingu. Vygeneruje také zprávu, která vám řekne, co je třeba opravit.
  • Nick PHP kompilátor - nástroj PHP kontroly pro kontrolu nedefinované funkce a metody.
  • Sledování protokolu chyb – Pokud se vyskytnou chyby, můžete protokol aktivovat, abyste měli přehled o všech chybách, což vám pomůže je snadněji opravit.

Soukromé protokolování chyb můžete také povolit ručně pomocí „WP_DEBUG“. Také můžete vidět, co se u jednotlivých verzí PHP před aktualizací změnilo:

Pokud zjistíte, že používáte plugin, téma nebo skript, který není kompatibilní s verzí PHP, kterou chcete použít, můžete kontaktovat autora nebo vývojáře, aby vám pomohli problém vyřešit. Pokud potřebujete pomocnou ruku, můžete zanechat komentář k tomuto článku, rád vám poskytnu odpovědi.

Jak změnit verzi PHP

Při změně verze se verze automaticky zálohuje.

To je vše, co můžete udělat pro aktualizaci svého prostředí. Pokud máte nějaké dotazy, neváhejte zanechat komentář.

O existenci ví téměř každý, kdo provozuje blog na WordPressu a samostatně ho udržuje magický soubor funkce.php. Často se používá zcela pro jiné účely, což může vést k významným problémům. Pojďme se na tuto problematiku společně podívat podrobněji.

Ujišťuji vás, že po přečtení tohoto článku změníte svůj postoj k pluginům a přestanete přidávat další fragment kódu do svého functions.php.

Pluginy a funkce.php

Mnoho majitelů WordPress stránek je pevně přesvědčeno o tom, že pluginy určitě načítají a zpomalují blog. A pokud jen přidáte kód do functions.php, zátěž to nijak neovlivní. Bohuzel to neni tak uplne pravda...

Faktem je, že zatížení není způsobeno konkrétně pluginem, ale jeho nesprávně napsaným kódem, který může snadno skončit ve functions.php z dalšího manuálu.

Podívejme se na hlavní rozdíly mezi pluginem a functions.php.

Zásadním rozdílem mezi pluginem a souborem functions.php je jeho účel a pořadí provedení.

Je také neopodstatněné věřit, že kód ve functions.php se spustí rychleji než v pluginu. Stejný kód v pluginu a ve functions.php bude spuštěn se stejnou rychlostí a zatížením.

Velmi často problémy s vysoké zatížení vzniknout kvůli další funkce pluginy a rychlost načítání stránek trpí tím, že skripty spojují vlastní styly, skripty a další obsah. Proto je důležité věnovat výběru pluginu pozornost, aby se předešlo problémům v budoucnu.

Pokud jste obyčejný blogger a k vývoji webu máte daleko, pak při výběru pluginu určitě věnujte pozornost recenzím v repozitáři WordPress a na blozích autorů nebo webových vývojářů.

Pokud stále pochybujete, uvařte si kávu a přečtěte si článek Konstantina Kovshenina na WP Magazine – „Celá pravda o funkcích.php“. První část jednoduše a jasně vysvětluje, proč byste neměli věřit mýtům o functions.php.

Plugin jako alternativa k souboru functions.php

Všechny doplňky, které provedete do souborů šablon (skripty, čítače, funkce), mohou být ztraceny, když změníte aktivní motiv nebo na něj použijete aktualizace. Abyste se tomu vyhnuli a nevytvářeli chaos ve functions.php, doporučuji vám použít svůj vlastní osobní plugin.

Vytvořme si vlastní plugin – alternativu k souboru functions.php. Nebojte se, bude to vypadat přesně jako vaše oblíbené funkce.php :) Vše, co musíte udělat, je jednoduše přidat prázdný plugin na vaše stránky. A pak do něj můžete vložit potřebný kód, jak jste to dělali u functions.php.

Nejprve musíme na našem počítači vytvořit soubor s názvem functionsphp.php a přidat do něj následující kód:




Nahoru