Vlastní stránka s nastavením ve WordPressu

Tento článek (nebo jeho část) je převzat z externího zdroje. Je tedy slušností jej uvést včetně případného autora.

Minule jsme se naučili, jak si vytvořit vlastní plugin. Tentokrát přidáme nějaké vlastní nastavení přímo do administrace WordPressu.

Následující návod volně navazuje na předchozí článek Jednoduchý plugin do WordPressu. Stránku s nastavením však můžeme vytvořit, aniž bychom si psali vlastní plugin.

Umístění kódu

Tento kód můžete vložit do souboru pluginu jako v minulém článku, nebo do functions.php v dané šabloně. Nastavení nemusí být nutně pouze pro plugin.

Registrace stránky

Prvně musíme někam vložit odkaz na stránku, ve které nastavení budeme chtít vytvořit. Provedeme pomocí přidání vlastní funkce pro akci admin_menu.

Výsledek bude vypadat následovně. Stránka se přidá do submenu Nastavení.

Registrace nastavení do menu

Vytvoření obsahu s nastavením

Celý formulář bude definován ve funkci, kterou jsme specifikovali v registraci položky do menu. V našem případě se musí jmenovat gcm_sender_settings_page.

WordPress nabízí ve svém API skript pro ukládání nastavení. Nám proto stačí vytvořit formulář, odeslat jej na stránku options.php a o zbytek se starat nemusíme. Ve formuláři je ale pár povinných položek, bez kterých uložení neproběhne.

Prvně zavoláme PHP funkci wp_nonce_field, která mimo jiné vloží také pole s aktuální URL adresou. Po uložení budeme přesměrováni zpět na stejnou stránku a uživatel nic nepozná. Další povinnou položkou je input s názvem action a důležitý input s názvem page_options. Ten specifikuje názvy všech polí, které chceme uložit do nastavení, oddělené čárkou.

Stránka s nastavením

A máme hotovo, formulář je hotový a funkční. Po uložení se dočkáme i hlášky, že nastavení bylo uloženo. Pro načtení aktuálních hodnot z nastavení, stačí zavolat funkci get_option().