Unlimited Plugins, WordPress themes, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. WordPress
Code

Oznámení trvalých WordPress Admin: Část 4

by
Difficulty:IntermediateLength:LongLanguages:
This post is part of a series called Persisted WordPress Admin Notices.
Persisted WordPress Admin Notices: Part 3

Czech (Čeština) translation by Tereza Foretová (you can also view the original English article)

Zatím v této sérii, probrali jsme dva samostatné způsoby, jak zrušit trvalé oznámení admin WordPress. Postavíme na tom v této čtvrté a poslední části tutoriálu série pohledem na dvě další specifické metody trvale zavřete Správce oznámení. Jsme tím, že ukazuje jak vytvořit vlastní správce oznámení typy a přidat dekorace jako jsou ikony, bude věcí zaokrouhlení.

Důležité oznámení Admin

Už víme jak zobrazit admin Všimněte si, že může být zamítnuta. Vše, co musíme udělat je, přidejte je vypnout CSS třídy obsahující prvek div. To je však pouze dočasné a bude pouze zavřete upozornění pro aktuální stránku. Jakmile stránka načte, objeví se znovu.

Chcete-li trvale vypnout zahrnuje více kódu než jsme dosud viděli, ale to není příliš obtížné realizovat. Pojďme se podívat na co se účastní, počínaje přehled.

Budeme používat vlastní možnosti pro ukládání zobrazit stav našeho správce oznámení. O aktivaci pluginu, tato možnost bude vytvořen/aktualizován a nastavena na hodnotu true. Oznámení Správce pak zobrazí pouze pokud je v současné době platí možnost.

Klíčem k této metody je pomocí Ajax umožňují nastavit možnost na hodnotu false, je klepnutí na tlačítko Zavřít. Jednou úspěšně nastavena na hodnotu false, podmíněný kód, který kontroluje stav možnost se nezdaří a správce oznámení již nebude zobrazen.

Začněme tím, že přidá admin oznámení, sama o sobě, což bude prosté oznámení, zahájení. V Gwyer_Dismissible_Admin_Notices::init() přidejte nové volání add_action:

Poté přidejte funkci zpětného volání dismiss_admin_notice() stejné třídy:

Tím přidáte správce oznámení, která zobrazuje pouze na stránce admin plugin a je velmi podobná co jsme viděli v předchozích cvičení. Pouze nepatrný rozdíl je, že jsme také přidali CSS ID do kontejneru div správce oznámení. To bude použity k přesně zacílit admin oznámení, které nás zajímají.

Standard admin notice with custom CSS ID

Budeme muset přidat kód JavaScript, aby Ajax volání pracovat, tak přidejte js složku v kořenové složce plugin admin oznámení a uvnitř vytvořte soubor s názvem admin-notices.js. Přidáte kód do nového souboru to vyzkoušet je řádně načíst podle výstupu zpráv konzoly.

V Gwyer_Plugin_Options::init() přidejte nový add_action volání enqueue náš soubor skriptu:

Chceme pouze tento JavaScriptový soubor má být načten na stránce Možnosti plugin, takže potřebujeme způsob, jak podmíněně enqueue to. Můžeme lze provést kontrolou co admin stránky jsme si zjistěte, zda je naše plugin možnosti stránky.

Můžeme-li získat popisovače na naši stránku možnosti plugin, ukládání vrácená hodnota add_options_page() v vlastnosti třídy. Jsme nemuseli tuto hodnotu dříve, takže jsme právě volal add_options_page() bez ukládání vrácená hodnota.

Přidejte vlastnost třídy Gwyer_Plugin_Options:

Poté, v create_admin_menu_page(), tato nová vlastnost slouží k ukládání popisovač k naší stránce Možnosti plugin:

Můžeme konečně zařadit náš soubor jazyka JavaScript tak, aby načte pouze na stránce Možnosti plugin:

Pokud vše půjde dobře uvidíte admin-notices.js načten! Zpráva výstupu ke konzole prohlížeč.

Admin notice JavaScript loaded

Aktualizujte kód jazyka JavaScript v admin-notices.php následující:

Tady posloucháme pro click událost na CSS ID an1 jsme přidali na náš admin oznámení dříve. Jakmile se přístroj s cvaknutím, Ajax požadavek je aktivována. Dobře, Vezměme tuto žádost dále.

V Gwyer_Dismissible_Admin_Notices::init() přidejte nové volání add_action:

To spustí funkci zpětného volání, jakmile display_dismissible_admin_notice Ajax požadavek požáry. Mějte na paměti, že to původně byl definován jako data.action vlastnost v naší žádosti Ajax.

Nyní přidejte funkci zpětného volání display_dismissible_admin_notice Gwyer_Dismissible_Admin_Notices:

Uložit změny znovu načíst plugin možnosti stránky a klepněte na tlačítko Správce oznámení, Zavřít tlačítko zobrazíte žádosti Ajax v akci!

The Ajax request in action

Je-li požadavek byl úspěšný uvidíte zpracování Ajax žádost... HOTOVO! zpráva zobrazená v okně prohlížeče konzole.

Poslední kousek skládačky, je vytvořit vlastní možnost zpočátku nastavena na hodnotu true, ale který je pak nastavena na false, je klepnutí na tlačítko Zavřít. Potom když plugin možnosti stránka načte, správce oznámení zobrazí pouze pokud platí hodnota vlastní možnosti.

V Gwyer_Dismissible_Admin_Notices::init() přidejte druhé volání register_activation_hook():

A přidejte funkci zpětného volání create_custom_option třídy:

Nyní, když je aktivována pluginu, vlastní možnost nazývá gwyer-propustit je vytvořen a nastavit na hodnotu true.

Aktualizujte display_dismissible_admin_notice() aktualizovat naše vlastní volba, když Ajax požadavek požáry:

Teď je vše, co zbývá udělat aktualizaci dismiss_admin_notice() vyhledat hodnotu vlastní volby a pouze vykreslení admin upozornění, pokud je nastaven na hodnotu true.

Deaktivovat a znovu aktivujte plugin k testování kódu, které jsme přidali. Navštivte stránku možnosti pluginu, zamítnutí oznámení admin a aktualizujte stránku. Oznámení by mělo být již viditelné. Yay!

Protože vlastní možnost nastavena na hodnotu true, pokaždé, když je aktivován plugin, můžete opakovat výše uvedené kroky k testování vypnout admin všimnout tak často, jak potřebujete.

Udržet věci jednoduché, to byl nahý kosti příkladem použití Ajax požadavek nastavit vlastní admin možnost oznámení. V praxi, budete chtít použít nonce (číslo použít jednou) hodnota ověření Ajax žádost jako minimální bezpečnostní opatření.

To bylo hodně práce jen trvale zrušit oznámení o admin, ale výsledný efekt funguje dobře a je něco, co slouží účelně v vlastní pluginy.

Vlastní akce Admin oznámení propouštění

Je na čase podívat se na trochu jinou metodu pro zavření správce oznámení nyní. To je typ kobylka oznámení admin, který se zobrazí na všech obrazovkách admin a nelze zavřít, dokud některé akce byla provedena.

Poznámka: Tuto metodu používejte s opatrností nebo riskujete odcizit vaše plugin uživatele velmi rychle!

Konkrétní akce, kterou budeme soustředit na v našem příkladu bude k zobrazení oznámení o admin, dokud požadovaný plugin nebo seznam pluginů byly nainstalován a aktivován.

Na rozdíl od předchozí metody, kde jsme museli proskočit obručí, aby si správce oznámení být trvale vypnout řešení pro tuto metodu je překvapivě jednoduchý!

Za prvé okomentujte všechny funkce volání v Gwyer_Dismissible_Admin_Notices::init(). Poté přidejte novou funkci add_action():

A zpětné volání definovat následovně:

To je všechno tam je k němu! Říkal jsem, že to bylo jednoduché, ne?

Jediné, co jsme dělali jinak tentokrát bylo použití is_plugin_active() funkce WordPress k testování, pokud je nainstalován a aktivován plugin Hello Dolly. Pokud tomu tak není, is_plugin_active() vrátí hodnotu false a naše oznámení správce se zobrazí.

Example of a nag admin notice

Zkuste aktivovat plugin Hello Dolly ověřit že správce oznámení zmizí.

Tento postup funguje dobře pro jednoho pluginů, ale co když jste chtěli připomenout uživatelům aktivovat více pluginů? Namísto pevného zakódování informací plugin Hello Dolly, jsme mohli vytvořit matici whitelist naši požadované pluginy.

Nahraďte install_plugin_to_dismiss_admin_notice() s:

Požadované pluginy jsou nyní uloženy v matici, která je navlečena kontrolovat, zda každý zásuvný modul již byl aktivován. Pro všechny plugin není aktuálně aktivní název je přidán do pole $requires_activating, které výstupu prostřednictvím sdělení správce jako čárkami oddělený seznam názvů požadovaných plugin.

List of required plugins

Vlastní správce oznámení

Než skončíme, tak si trochu zábavy vytvořením vlastní vlastní admin typy oznámení. Uvidíme, jak přidat některé vlastní admin oznámení typy vlastní. Nyní bude plně obeznámen s čtyři vestavěné správce oznámení, WordPress poskytuje ve výchozím nastavení, ale není to tak těžké přijít s některými z našich vlastních.

Za prvé však komentář všechna volání funkce v Gwyer_Dismissible_Admin_Notices::init() takže vyrazíme na čisté břidlice.

Budeme potřebovat přidat CSS pro naši vlastní admin typy oznámení, tak v kořenové složce plugin přidat složku css, a uvnitř vytvořte soubor s názvem admin-notices.css. Pro zařazení do ji na všech stránkách admin, přidejte nové volání add_action v Gwyer_Plugin_Options::init().

Enqueue_styles() zpětného volání, přidejte tuto metodu do stejné třídy:

Teď pojďme nastavit novou metodu pro výstup naše vlastní správce oznámení. V Gwyer_Admin_Notices::init() přidejte:

Poté přidejte zpětné volání zobrazit řadu vlastních admin oznámení:

Nakonec přidejte CSS do admin-notices.css stylu naší vlastní admin oznámení:

Po uložení změny nahrát jakýkoliv admin stránku zobrazíte naše vlastní správce oznámení.

Some examples of custom admin notices

Soudě podle výsledků, že to je pravděpodobně dobrý nápad použít vlastní admin oznámení střídmě, jinak budete spouštět riziko z nich hledá přeplácaný.

Nebudu zacházet do podrobností o vlastní CSS používá. Je to jen pro trochu zábavy a většina styling je docela samo-vysvětlující.

Použili jsme dashicons písmo ikon pro naše vlastní admin oznámení pro větší pohodlí jsou k dispozici v WordPress admin ve výchozím nastavení. Však můžete importovat a použít všechny ikony, které se vám líbí dekorace pro extra.

Zkuste kód pro sebe

Zabalenému-WordPress plugin si můžete stáhnout kód z tohoto tutoriálu série. Podívejte se na kód, rozšířit a implementovat nové způsoby, jak zobrazit (a) správce oznámení. Ujistěte se, dejte mi vědět v komentářích, pokud vytvoříte něco cool! Rád bych vidět, co jste přišel.

Závěr

Děkujeme vám za mě v tomto čtyřfázovém seriálu výukových lekcí. Doufejme, že nyní budete mít mnohem větší důvěru v jak implementovat správu oznámení do vašich vlastních projektů.

Probrali jsme mnoho různých aspektů WordPress admin oznámení, včetně několika způsoby, jak trvale propouštět, což není možné bez vlastního kódu.

Vytváření vlastních vlastní admin oznámení je docela snadné, příliš, ale v praxi by chtěl používat střídmě, ve vašich vlastních projektů. Většinu času je to nejlepší, aby WordPress výchozí styly pro konzistentní uživatelské zkušenosti.

WordPress má neuvěřitelně aktivní ekonomiky. Existují témata, pluginy, knihovny a mnoho dalších produktů, které vám pomohou vytvářet vaše stránky a projektu. Open-source povaze platformy také je skvělá volba, ze kterého lze lépe vaše znalosti programování. Ať tak či onak, můžete vidět, co máme k dispozici na trhu Envato.

A nezapomeňte si stáhnout plugin a Pohrajte si s kódem. Je to skvělý způsob, jak se blíže seznámit s tím, jak všechny části do sebe zapadají. A prosím, dejte mi vědět vaše myšlenky na kurz prostřednictvím níže uvedených komentářů.

Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.