Tijdens het lezen van artikelen op websites, heb ik vastgesteld dat wanneer een bericht ouder is dan vier jaar, een melding dat het bericht oud is, op bepaalde websites wordt weergegeven. Een soortgelijke melding is ook te vinden in de WordPress-invoegmap wanneer een plug-in niet meer dan twee jaar geleden is bijgewerkt.
In dit artikel bouwen we een plug-in die een vergelijkbare melding weergeeft wanneer een bericht is afgelopen X-jaar oud waar "X"een geheel getal dat het aantal jaren aangeeft dat oud is.
De plug-in biedt u de mogelijkheid om uw eigen aangepaste notificatiezin op te geven en het aantal jaren voordat een bericht als oud wordt beschouwd.
Deze plug-in wordt gebouwd met behulp van objectgeoriënteerd programmeren in een poging de code overzichtelijker te maken en zich aan het DRY-principe te houden. Daarom is enige ervaring met objectgeoriënteerd programmeren vereist om deze tutorial te begrijpen.
De plug-in bestaat uit twee beschermde
klasse-eigenschappen en tien methoden. De eigenschappen worden hieronder beschreven.
$ _notification
slaat het notificatiebericht op dat is opgehaald uit de database die eerder was ingesteld door de gebruiker van de plug-in.$ _years
slaat het aantal jaren op dat uit de database is opgehaald.Ik zal de rol van elke methode (bekend als functies in procedureel programmeren) en hun respectievelijke code tijdens het reizen uitleggen.
Laten we eerst de plug-in header toevoegen, de klasse
en definieer de eigenschappen:
Bij het schrijven van WordPress-plug-ins in OOP, kunnen alle actie- en filterhaken worden ingesteld in de constructor (die de naam heeft
__construct
). De constructormethode van onze plugin bestaat uit vijf functies: drie actiehaken, een filterhaak en eenregister_activation_hook
functie.function __construct () // Initialiseer instellingsopties op activatie register_activation_hook (__FILE__, array ($ this, 'aop_settings_default_values')); // registreer Menu add_action ('admin_menu', array ($ this, 'aop_settings_menu')); // hook plugin sectie en veld om admin_init add_action ('admin_init', array ($ this, 'pluginOption')); // voeg het plug-ins stylesheet toe aan header add_action ('wp_head', array ($ this, 'stylesheet')); // weergavemelding boven bericht add_filter ('the_content', array ($ this, 'displayNotification'));
register_activation_hook
roept de methode op om de standaardinstellingen van de plug-in in te stellen bij activering.add_action
functies bellen de haakfuncties om het plug-in menu te registreren, haak de plugin sectie en het veld naar admin_init
en voeg de stylesheet van plug-in toe aan de koptekst.add_filter
bel de displayNotification
methode die de melding weergeeft wanneer een bericht oud is.Kijken naar de __construct
methode hierboven, de register_activation_hook
functie roept de aop_settings_default_values
methode om de standaard plugin-instellingen in te stellen.
public function aop_settings_default_values () $ aop_plugin_options = array ('notification' => 'Dit bericht is niet meer dan 2 jaar geleden bijgewerkt.', 'jaar' => 2); update_option ('apo_alert_old_post', $ aop_plugin_options);
De aop_settings_menu
methode maakt het plug-in-submenu onder het bestaande instellingen menu.
public function aop_settings_menu () add_options_page ('Alert Post is Old', 'Alert Post is Old', 'manage_options', 'aop-alert-post-old', array ($ this, 'alert_post_old_function'));
Het derde argument dat is doorgegeven aan de add_options_page
functie hierboven is de alert_post_old_function
methode die de pagina-inhoud van de instellingen van de plug-in weergeeft.
publieke functie alert_post_old_function () echo ''; screen_icon (); echo 'Alert Post is oud
'; echo '