När jag läste artiklar på webbplatser har jag funnit att när ett inlägg är över fyra år, visas en anmälan om att posten är gammal visas på vissa webbplatser. En liknande anmälan finns också i WordPress-plugin-katalogen när ett plugin inte har uppdaterats på över två år.
I den här artikeln kommer vi att bygga ett plugin som visar en liknande meddelande när ett inlägg är över X-år gammal där "X"ett heltal som anger antalet år som definierar gamla.
Pluggen ger dig möjlighet att ange din egen anpassade anmälningsdom och antalet år innan ett inlägg anses vara gammalt.
Denna plugin kommer att byggas med objektorienterad programmering i ett försök att göra koden mer organiserad och följa DRY-principen. Som sådan krävs viss erfarenhet av objektorienterad programmering om du ska förstå denna handledning.
Pluggen kommer att bestå av två skyddad
klassegenskaper och tio metoder. Egenskaperna beskrivs nedan.
$ _notification
lagrar meddelandemeddelandet som hämtats från databasen som tidigare fastställdes av plugin-användaren.$ _years
lagrar antalet år som hämtats från databasen.Jag kommer att förklara varje metods roll (känd som funktioner i procedurprogrammering) och deras respektive kod när vi reser.
Låt oss först inkludera pluginhuvudet, skapa klass
och definiera egenskaperna:
När du skriver WordPress-plugins i OOP kan alla åtgärds- och filterhakar ställas in i konstruktorn (som heter
__konstruera
). Vår plugins konstruktormetod kommer att bestå av fem funktioner: tre handtag krokar, en filter krok och aregister_activation_hook
fungera.funktion __construct () // Initiera inställningsalternativen vid aktivering register_activation_hook (__FILE__, array ($ this, 'aop_settings_default_values')); // registrera menyn add_action ('admin_menu', array ($ this, 'aop_settings_menu')); // hook plugin avsnitt och fält till admin_init add_action ('admin_init', array ($ this, 'pluginOption')); // lägg till plugin stylesheet till header add_action ('wp_head', array ($ this, 'stylesheet')); // displaymeddelande ovanför post add_filter ('the_content', array ($ this, 'displayNotification'));
register_activation_hook
anropar metoden för att ställa in standardinställningarna för plugin vid aktivering.add_action
funktioner kallar krokfunktionerna för att registrera pluginmenyn, koppla in plugin-sektionen och fältet till admin_init
och lägg till plugin stilark till respektive rubrik.add_filter
ring displayNotification
Metod som visar anmälan när ett inlägg är gammalt.Titta på __konstruera
metod ovan, register_activation_hook
funktionen kallar aop_settings_default_values
metod för att ställa in standardinställningarna för plugin.
allmän funktion aop_settings_default_values () $ aop_plugin_options = array ('notification' => 'Det här inlägget har inte uppdaterats på över 2 år.', 'years' => 2); update_option ('apo_alert_old_post', $ aop_plugin_options);
De aop_settings_menu
Metoden skapar undermenyn för plugin under det befintliga inställningar meny.
allmän funktion 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'));
Det tredje argumentet passerade till add_options_page
funktion ovan är alert_post_old_function
metod som visar sidinnehållet i pluginens inställningar.
offentlig funktion alert_post_old_function () echo ''; screen_icon (); eko "Alert Post är gammal
'; eko "