{"id":19899,"date":"2023-01-28T14:27:48","date_gmt":"2023-01-28T13:27:48","guid":{"rendered":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/?p=19899"},"modified":"2023-01-28T14:29:26","modified_gmt":"2023-01-28T13:29:26","slug":"how-to-create-a-plugin-wordpress","status":"publish","type":"post","link":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-create-a-plugin-wordpress\/","title":{"rendered":"How to create a plugin WordPress"},"content":{"rendered":"\n<p class=\"has-medium-font-size wp-block-paragraph\">Before we dive into how to create a plugin WordPress i want to say a few words about WordPress. WordPress is an open source content management system (CMS) used to build and manage websites. It includes a simple user interface that allows users to easily create and edit their website content, without the need for coding knowledge. Furthermore, it offers a wide range of plugins and themes to customize the look and functionality of your website. Furthermore, it is used by millions of websites around the world and supports many languages.<\/p>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">What makes it extraordinarily flexible is its plugin system that makes it suitable for any type of web development. Therefore, it is not uncommon to see web applications developed entirely with WordPress. Therefore, to understand how to develop with WordPress it is necessary to know how to create a plugin and, in this guide we will explore the basic steps to create one of your own.<\/p>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Creating a WordPress plugin may seem like a daunting task, but it&#8217;s actually a fairly simple process once you learn the <a href=\"https:\/\/developer.wordpress.org\/plugins\/wordpress-org\/detailed-plugin-guidelines\/\">basics <\/a><a href=\"https:\/\/developer.wordpress.org\/plugins\/wordpress-org\/detailed-plugin-guidelines\/\">and guidelines dictated by the <\/a><a href=\"https:\/\/developer.wordpress.org\/plugins\/wordpress-org\/detailed-plugin-guidelines\/\"><\/a><a href=\"https:\/\/developer.wordpress.org\/plugins\/wordpress-org\/detailed-plugin-guidelines\/\">WordPress development team <\/a><a href=\"https:\/\/developer.wordpress.org\/plugins\/wordpress-org\/detailed-plugin-guidelines\/\"><\/a>. A WordPress plugin is simply a set of PHP files that extend the functionality of a WordPress site. In this article, I&#8217;ll tell you how to create a plugin WordPress step by step.<\/p>\n\n\n\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_89 counter-hierarchy ez-toc-counter ez-toc-custom ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">In questo articolo:<\/p>\n<span class=\"ez-toc-title-toggle\"><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-create-a-plugin-wordpress\/#1_Choose_a_name_for_the_plugin\" >1. Choose a name for the plugin<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-create-a-plugin-wordpress\/#2_Create_a_folder_for_the_plugin\" >2. Create a folder for the plugin<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-create-a-plugin-wordpress\/#3_Create_a_PHP_file_for_the_plugin\" >3. Create a PHP file for the plugin<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-create-a-plugin-wordpress\/#4_Include_a_plugin_header\" >4. Include a plugin header<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-create-a-plugin-wordpress\/#5_Write_the_code_for_the_plugin\" >5. Write the code for the plugin<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-create-a-plugin-wordpress\/#6_How_to_test_the_created_plugin\" >6. How to test the created plugin<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-create-a-plugin-wordpress\/#7_Upload_your_Plugin_to_WordPressorg_for_final_review\" >7. Upload your Plugin to WordPress.org for final review<\/a><\/li><\/ul><\/nav><\/div>\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"1_Choose_a_name_for_the_plugin\"><\/span><strong>1. Choose a name for the plugin<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">The first step to create a plugin WordPress is picking a name for it. The name must be descriptive and unique, so that users can easily locate it among the myriad of plugins already available on the WordPress Repository. The only requirement that your plugin name must have is that it must never start with the characters \u201c<strong>WP_<\/strong>\u201d. Plugins starting with the prefix \u201c<strong>WP_<\/strong>\u201d are reserved for the <strong>WordPress <\/strong>development team. This is to prevent the code inserted in your plugin from conflicting with the code present in the WordPress CORE.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"2_Create_a_folder_for_the_plugin\"><\/span><strong>2. Create a folder for the plugin<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Once you have chosen the name for your plugin, you need to create a folder to hold all the files related to the plugin itself. The folder must be created inside the \u201c<strong>wp-content\/plugins\u201d<\/strong> folder of your WordPress site. The folder name must be the same as the name chosen for the plugin.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"3_Create_a_PHP_file_for_the_plugin\"><\/span><strong>3. Create a PHP file for the plugin<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Inside the newly created folder, you need to create a new PHP file for the plugin. This file will contain the main plugin code and must be named with the same name as the plugin folder. For example, if the plugin folder name is &#8220;my- plugin &#8220;, the PHP file should be renamed to: \u201cmy- plugin.php\u201d. Now, the \u201cmy- plugin.php\u201d file is an empty file. Before inserting any code in this file, it is necessary to include a commented header immediately after the character \u201c<strong>&lt;? php<\/strong>\u201d at the start of the file. Now let&#8217;s see the structure that the plugin header must have.<\/p>\n\n\n\n<hr>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Read more: \u201c<a href=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/web-app-development-with-wordpress-php-and-codeless-framework\/\">Web app development with WordPress, PHP and CodeLess Framework<\/a><a href=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/come-sviluppare-web-app-codeless-con-wordpress-php-e-mysql\/\"><\/a>\u201d<\/p>\n\n\n\n<hr>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"4_Include_a_plugin_header\"><\/span><strong>4. Include a plugin header<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">As I just told you, at the beginning of the newly created PHP file, it is necessary to include a header comment for the plugin. The header comment, called <strong>header<\/strong> <strong>of the plugin,<\/strong> will provide WordPress with a whole series of information on the nature of the plugin itself, including: the name, description, version, author and links for further information. This information will be displayed on the WordPress Plugins page and will help users understand what the plugin does, how to install it, and the updates it will undergo over time. an example header for the \u201cmy- plugin\u201d plugin is this:<\/p>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">\/**\n*\n* Plugin Name: \u00a0my -plugin\n* Plugin URI: \u00a0\u00a0http:\/\/mysiteweb.it\/plugin\/my-plugin\n* Description: \u00a0Enter a short description of what your plugin does.\n* Version: \u00a0\u00a0\u00a0\u00a0\u00a01.0.0\n* Author: \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0your first and last name\n* Author URI: \u00a0\u00a0The URL of your website\n* Text Domain: \u00a0my-plugin\n* License: \u00a0\u00a0\u00a0\u00a0\u00a0GPL-3.0\n* License URI: \u00a0https:\/\/www.gnu.org\/licenses\/gpl-3.0.txt\n*\/<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"5_Write_the_code_for_the_plugin\"><\/span><strong>5. Write the code for the plugin<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Once you have completed the above steps, you can start coding the plugin. The code can be written using the functions and classes already present in WordPress CORE. The code must be written to extend the functionality of the CMS to meet the specific needs of the plugin. In essence, a plugin is composed of a series of functions linked to predefined WordPress events and executed using the function add_action ( ). For example, if you want to insert PHP code in the HEAD section of your page or post to print the greeting message \u201cHello World\u2026!\u201d in the upper right corner of your browser, the code should look like this:<\/p>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">if (! function_exists('my-plugin-function-hello-world')) {\n   function my-plugin-function-hello-world() {\n      ?>\n         &lt;div style=\"z-index: 9999; position: fixed; right: 0px; top: 10px;\">\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0   \u00a0\u00a0 &lt;p>Hello World...!&lt;\/p>\n         &lt;\/div>\n      &lt;?php\n   }\n\u00a0\u00a0 add_action ('wp_head','my-plugin-function-hello-world');\n}<\/pre>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">If you&#8217;ve already taken a look at the <a href=\"https:\/\/developer.wordpress.org\/plugins\/wordpress-org\/detailed-plugin-guidelines\/\">WordPress <\/a><a href=\"https:\/\/developer.wordpress.org\/plugins\/wordpress-org\/detailed-plugin-guidelines\/\"><\/a><a href=\"https:\/\/developer.wordpress.org\/plugins\/wordpress-org\/detailed-plugin-guidelines\/\">developer guidelines<\/a>, you&#8217;ve already taken a huge step forward in writing and creating WordPress plugins. In any case, in the code reported above you can see what are the fundamental rules for development in WordPress. Since WordPress is an environment full of features added by other developers, it is necessary to avoid conflicts between functions, classes and objects. Therefore, you must always check, before declaring a function, that this does not already exist. So the first command line:<\/p>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">if (! function_exists('my-plugin-function-hello-world'))<\/pre>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">it serves just that purpose. The \u201c<strong>add_action<\/strong>\u201c function executes the \u201cmy-plugin-function-hello-world\u201d function and inserts the code present within it into the HEAD section of all your WordPress pages or posts. As specified by the \u201cwp_head\u201d keyword. A fundamental reminder is now necessary. Did you notice the prefix of the \u201c<strong>wp_head<\/strong>\u201d parameter of the \u201cadd_action\u201d function ? Well, I think so, almost all <strong>actions in WordPress <\/strong>are identified by the prefix \u201c<strong>wp _<\/strong>\u201d. That&#8217;s why, the development team of the CMS, forces you not to declare, names of plugins, functions and classes within it, with the prefix \u201cwp _\u201d. All this for the sole purpose of avoiding conflicts with all the code already present in the WordPress CORE. <a href=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/wordpress-hooks-user-guide\/\">If you want to know which <\/a><a href=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/gli-hook-in-wordpress\/\"><\/a><a href=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/wordpress-hooks-user-guide\/\">actions <\/a><a href=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/gli-hook-in-wordpress\/\"><\/a><a href=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/wordpress-hooks-user-guide\/\">are present in your theme, I suggest you read this guide<\/a>.<\/p>\n\n\n\n<hr>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Read more: \u201c <a href=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/gli-hook-in-wordpress\/\">Hooks in <\/a><a href=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/gli-hook-in-wordpress\/\"><\/a><a href=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/gli-hook-in-wordpress\/\">WordPress <\/a><a href=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/gli-hook-in-wordpress\/\"><\/a><a href=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/gli-hook-in-wordpress\/\">: User&#8217;s Guide <\/a>\u201d<\/p>\n\n\n\n<hr>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"6_How_to_test_the_created_plugin\"><\/span><strong>6. How to test the created plugin<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Once the code for the plugin is complete, it&#8217;s important to test it to make sure it works properly. To do this, it is convenient to install WordPress locally on your computer and install and test the plugin, which you have just created, without running the risk of damaging your online blog. Since your plugin is not yet present in the WordPress.org repository, to install it you will need to compress the \u201cmy- plugin\u201c folder containing all the plugin files. Access the WordPress dashboard, select the menu item \u201c<strong>Plugins &gt; add new<\/strong>\u201c and click on the \u201c<strong>Upload Plugin<\/strong>\u201c button. Now, click on the \u201c<strong>Choose file<\/strong>\u201d button, select the zipped plugin folder and click on the \u201c<strong>Install now<\/strong>\u201d button again.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"731\" height=\"425\" src=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-content\/uploads\/2023\/01\/aggiungi-nuovo-plugin-in-wordpress-1.jpg\" alt=\"Add your plugin after creating it\" class=\"wp-image-19909\" srcset=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-content\/uploads\/2023\/01\/aggiungi-nuovo-plugin-in-wordpress-1.jpg 731w, https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-content\/uploads\/2023\/01\/aggiungi-nuovo-plugin-in-wordpress-1-300x174.jpg 300w\" sizes=\"auto, (max-width: 731px) 100vw, 731px\" \/><figcaption class=\"wp-element-caption\">Add your plugin after creating it<\/figcaption><\/figure>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Once the plugin installation procedure is complete, all you have to do is activate it. Now load any of your web page or article and you will see the message \u201cHello World\u2026!\u201d appear at the top right of the active window of your web browser.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"7_Upload_your_Plugin_to_WordPressorg_for_final_review\"><\/span><strong>7. Upload your Plugin to WordPress.org for final review<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">As you can see, becoming a WordPress developer is not that complicated. You&#8217;ve built your first plugin and are now excited to publish it on WordPress.org. here things become more puzzling. Of course, in order to make your plugin available to the entire worldwide community of WordPress users, your plugin must be reviewed by the WordPress development team. First, before submitting a plugin for review, make sure it performs a function that can really help blog owners. It goes without saying that our \u201cmy- plugin\u201d plugin was developed for educational purposes only.<\/p>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">However, after making sure of the usefulness that your plugin can have for the whole community, to publish it on WordPress.org, you must follow these simple steps:<\/p>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\"><strong>a. <\/strong>Create an account on WordPress.org if you don&#8217;t already have one otherwise <a href=\"https:\/\/login.wordpress.org\/register?locale=en_US\">click on this link and register as a <\/a><a href=\"https:\/\/login.wordpress.org\/register?locale=it_IT\"><\/a><a href=\"https:\/\/login.wordpress.org\/register?locale=en_US\">WordPress developer<\/a>.<\/p>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\"><strong>b. <\/strong>Create a plugin repository on GitHub or another source code hosting service, for example, Dropbox. <a href=\"https:\/\/docs.github.com\/en\/repositories\/creating-and-managing-repositories\/creating-a-new-repository\">If you have never done it, consult this guide<\/a>.<\/p>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\"><strong>c. <\/strong>Fill out a readme.txt file for your plugin, which will describe the plugin &#8216;s features and instructions for installing and using it. Click here to see an example readme.txt file compiled according to <a href=\"https:\/\/wordpress.org\/plugins\/readme.txt\">WordPress <\/a><a href=\"https:\/\/wordpress.org\/plugins\/readme.txt\"><\/a><a href=\"https:\/\/wordpress.org\/plugins\/readme.txt\">guidelines <\/a><a href=\"https:\/\/wordpress.org\/plugins\/readme.txt\"><\/a>. You will need to upload this file into the folder containing all the plugin files to be created. After compiling the readme.txt file you should verify it through the WordPress validation portal. Therefore, <a href=\"http:\/\/wordpress.org\/plugins\/about\/validator\/\">click on this link to access the validation operation of the readme.txt file<\/a>.<\/p>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\"><strong>d. <\/strong>Submit your plugin for review on WordPress.org using the plugin submission form. The operation is simple. Guess what&#8217;? all you have to do is <a href=\"https:\/\/wordpress.org\/plugins\/developers\/add\/\">click on this link <\/a>and upload the compressed folder in zip format as requested in the online form.<\/p>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\"><strong>e. <\/strong>Now, you just have to wait for the plugin review. The WordPress team developers will verify the plugin, for compliance with the guidelines, and to check for any security issues. Otherwise, the development team will suggest any corrections to be made to the code via email.<\/p>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\"><strong>f. <\/strong>Once approved, the plugin will be published on the official WordPress repository, will be available for download, and users will be able to leave reviews and ratings.<\/p>\n\n\n\n<hr>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Read more: \u201c<a href=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-delete-duplicate-files-from-your-computer\/\">How To Delete Duplicate Files From Your Computer<\/a>\u201d<\/p>\n\n\n\n<hr>\n","protected":false},"excerpt":{"rendered":"<p>Create a plugin Wordpress is an opportunity to put all your programming skills to good use. Increasing the visibility of your work.<\/p>\n","protected":false},"author":1,"featured_media":19900,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[268,1063],"tags":[3797,2810,3653,4086,3686,2941,2937,2837,3040,4084,4088,3044,2839,4090,3805,2845,4092,3893],"class_list":["post-19899","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-articles-en","category-wordpress-en","tag-blog-en","tag-development-en","tag-features-en","tag-guide-en","tag-hosting-en","tag-how-en","tag-how-to-en","tag-new-en","tag-online-en","tag-plugin-wordpress","tag-review-en","tag-system-en","tag-to-en","tag-upload-en","tag-url-en","tag-web-en","tag-wordpress-development-en","tag-wordpress-plugin-en"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>How to create a plugin WordPress<\/title>\n<meta name=\"description\" content=\"Create a plugin Wordpress is an opportunity to put all your programming skills to good use. Increasing the visibility of your work.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-create-a-plugin-wordpress\/\" \/>\n<meta property=\"og:locale\" content=\"it_IT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to create a plugin WordPress\" \/>\n<meta property=\"og:description\" content=\"Create a plugin Wordpress is an opportunity to put all your programming skills to good use. Increasing the visibility of your work.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-create-a-plugin-wordpress\/\" \/>\n<meta property=\"og:site_name\" content=\"Antonio Lamorgese\" \/>\n<meta property=\"article:published_time\" content=\"2023-01-28T13:27:48+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-01-28T13:29:26+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-content\/uploads\/2023\/01\/How-to-create-a-plugin-WordPress.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"450\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Antonio Lamorgese\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"How to create a plugin WordPress\" \/>\n<meta name=\"twitter:description\" content=\"Create a plugin Wordpress is an opportunity to put all your programming skills to good use. Increasing the visibility of your work.\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-content\/uploads\/2023\/01\/How-to-create-a-plugin-WordPress.jpg\" \/>\n<meta name=\"twitter:creator\" content=\"@AntonioLamorge3\" \/>\n<meta name=\"twitter:site\" content=\"@AntonioLamorge3\" \/>\n<meta name=\"twitter:label1\" content=\"Scritto da\" \/>\n\t<meta name=\"twitter:data1\" content=\"Antonio Lamorgese\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo di lettura stimato\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minuti\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"TechArticle\",\"@id\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/en\\\/how-to-create-a-plugin-wordpress\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/en\\\/how-to-create-a-plugin-wordpress\\\/\"},\"author\":{\"name\":\"Antonio Lamorgese\",\"@id\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/#\\\/schema\\\/person\\\/264cf3af38edc93a3362a4c47ec5b2f0\"},\"headline\":\"How to create a plugin WordPress\",\"datePublished\":\"2023-01-28T13:27:48+00:00\",\"dateModified\":\"2023-01-28T13:29:26+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/en\\\/how-to-create-a-plugin-wordpress\\\/\"},\"wordCount\":1536,\"publisher\":{\"@id\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/#\\\/schema\\\/person\\\/264cf3af38edc93a3362a4c47ec5b2f0\"},\"image\":{\"@id\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/en\\\/how-to-create-a-plugin-wordpress\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/wp-content\\\/uploads\\\/2023\\\/01\\\/How-to-create-a-plugin-WordPress.jpg\",\"keywords\":[\"blog\",\"development\",\"features\",\"Guide\",\"hosting\",\"how\",\"how to\",\"new\",\"online\",\"plugin wordpress\",\"review\",\"system\",\"to\",\"upload\",\"URL\",\"web\",\"wordpress development\",\"wordpress plugin\"],\"articleSection\":[\"Blog Articles\",\"Wordpress\"],\"inLanguage\":\"it-IT\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/en\\\/how-to-create-a-plugin-wordpress\\\/\",\"url\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/en\\\/how-to-create-a-plugin-wordpress\\\/\",\"name\":\"How to create a plugin WordPress\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/en\\\/how-to-create-a-plugin-wordpress\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/en\\\/how-to-create-a-plugin-wordpress\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/wp-content\\\/uploads\\\/2023\\\/01\\\/How-to-create-a-plugin-WordPress.jpg\",\"datePublished\":\"2023-01-28T13:27:48+00:00\",\"dateModified\":\"2023-01-28T13:29:26+00:00\",\"description\":\"Create a plugin Wordpress is an opportunity to put all your programming skills to good use. Increasing the visibility of your work.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/en\\\/how-to-create-a-plugin-wordpress\\\/#breadcrumb\"},\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/en\\\/how-to-create-a-plugin-wordpress\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/en\\\/how-to-create-a-plugin-wordpress\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/wp-content\\\/uploads\\\/2023\\\/01\\\/How-to-create-a-plugin-WordPress.jpg\",\"contentUrl\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/wp-content\\\/uploads\\\/2023\\\/01\\\/How-to-create-a-plugin-WordPress.jpg\",\"width\":800,\"height\":450,\"caption\":\"How to create a plugin WordPress\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/en\\\/how-to-create-a-plugin-wordpress\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Wordpress\",\"item\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/en\\\/category\\\/wordpress-en\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"How to create a plugin WordPress\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/#website\",\"url\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/\",\"name\":\"Antonio Lamorgese\",\"description\":\"Il web e i suoi strumenti operativi\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/#\\\/schema\\\/person\\\/264cf3af38edc93a3362a4c47ec5b2f0\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"it-IT\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/#\\\/schema\\\/person\\\/264cf3af38edc93a3362a4c47ec5b2f0\",\"name\":\"Antonio Lamorgese\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/wp-content\\\/uploads\\\/2019\\\/06\\\/ChiSono.png\",\"url\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/wp-content\\\/uploads\\\/2019\\\/06\\\/ChiSono.png\",\"contentUrl\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/wp-content\\\/uploads\\\/2019\\\/06\\\/ChiSono.png\",\"width\":120,\"height\":130,\"caption\":\"Antonio Lamorgese\"},\"logo\":{\"@id\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/wp-content\\\/uploads\\\/2019\\\/06\\\/ChiSono.png\"},\"description\":\"Amministratore di rete e sviluppatore. Dopo anni di esperienza nel settore, ho ideato un sistema di gestione dati MYSQL in PHP senza scrivere una sola riga di codice.&nbsp;Scopri di pi\u00f9....\",\"sameAs\":[\"https:\\\/\\\/www.Phpcodewizard.it\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/antonio-lamorgese-660735190\\\/\",\"https:\\\/\\\/pinterest.it\\\/antoniolamorgese9711\\\/\",\"https:\\\/\\\/x.com\\\/AntonioLamorge3\",\"https:\\\/\\\/www.youtube.com\\\/user\\\/antoniolamorgese\",\"https:\\\/\\\/tumblr.com\\\/blog\\\/phpcodewizard\"],\"url\":\"https:\\\/\\\/www.phpcodewizard.it\\\/antoniolamorgese\\\/author\\\/antonio-lamorgese\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to create a plugin WordPress","description":"Create a plugin Wordpress is an opportunity to put all your programming skills to good use. Increasing the visibility of your work.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-create-a-plugin-wordpress\/","og_locale":"it_IT","og_type":"article","og_title":"How to create a plugin WordPress","og_description":"Create a plugin Wordpress is an opportunity to put all your programming skills to good use. Increasing the visibility of your work.","og_url":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-create-a-plugin-wordpress\/","og_site_name":"Antonio Lamorgese","article_published_time":"2023-01-28T13:27:48+00:00","article_modified_time":"2023-01-28T13:29:26+00:00","og_image":[{"width":800,"height":450,"url":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-content\/uploads\/2023\/01\/How-to-create-a-plugin-WordPress.jpg","type":"image\/jpeg"}],"author":"Antonio Lamorgese","twitter_card":"summary_large_image","twitter_title":"How to create a plugin WordPress","twitter_description":"Create a plugin Wordpress is an opportunity to put all your programming skills to good use. Increasing the visibility of your work.","twitter_image":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-content\/uploads\/2023\/01\/How-to-create-a-plugin-WordPress.jpg","twitter_creator":"@AntonioLamorge3","twitter_site":"@AntonioLamorge3","twitter_misc":{"Scritto da":"Antonio Lamorgese","Tempo di lettura stimato":"9 minuti"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"TechArticle","@id":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-create-a-plugin-wordpress\/#article","isPartOf":{"@id":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-create-a-plugin-wordpress\/"},"author":{"name":"Antonio Lamorgese","@id":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/#\/schema\/person\/264cf3af38edc93a3362a4c47ec5b2f0"},"headline":"How to create a plugin WordPress","datePublished":"2023-01-28T13:27:48+00:00","dateModified":"2023-01-28T13:29:26+00:00","mainEntityOfPage":{"@id":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-create-a-plugin-wordpress\/"},"wordCount":1536,"publisher":{"@id":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/#\/schema\/person\/264cf3af38edc93a3362a4c47ec5b2f0"},"image":{"@id":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-create-a-plugin-wordpress\/#primaryimage"},"thumbnailUrl":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-content\/uploads\/2023\/01\/How-to-create-a-plugin-WordPress.jpg","keywords":["blog","development","features","Guide","hosting","how","how to","new","online","plugin wordpress","review","system","to","upload","URL","web","wordpress development","wordpress plugin"],"articleSection":["Blog Articles","Wordpress"],"inLanguage":"it-IT"},{"@type":"WebPage","@id":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-create-a-plugin-wordpress\/","url":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-create-a-plugin-wordpress\/","name":"How to create a plugin WordPress","isPartOf":{"@id":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-create-a-plugin-wordpress\/#primaryimage"},"image":{"@id":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-create-a-plugin-wordpress\/#primaryimage"},"thumbnailUrl":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-content\/uploads\/2023\/01\/How-to-create-a-plugin-WordPress.jpg","datePublished":"2023-01-28T13:27:48+00:00","dateModified":"2023-01-28T13:29:26+00:00","description":"Create a plugin Wordpress is an opportunity to put all your programming skills to good use. Increasing the visibility of your work.","breadcrumb":{"@id":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-create-a-plugin-wordpress\/#breadcrumb"},"inLanguage":"it-IT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-create-a-plugin-wordpress\/"]}]},{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-create-a-plugin-wordpress\/#primaryimage","url":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-content\/uploads\/2023\/01\/How-to-create-a-plugin-WordPress.jpg","contentUrl":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-content\/uploads\/2023\/01\/How-to-create-a-plugin-WordPress.jpg","width":800,"height":450,"caption":"How to create a plugin WordPress"},{"@type":"BreadcrumbList","@id":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/how-to-create-a-plugin-wordpress\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/"},{"@type":"ListItem","position":2,"name":"Wordpress","item":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/en\/category\/wordpress-en\/"},{"@type":"ListItem","position":3,"name":"How to create a plugin WordPress"}]},{"@type":"WebSite","@id":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/#website","url":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/","name":"Antonio Lamorgese","description":"Il web e i suoi strumenti operativi","publisher":{"@id":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/#\/schema\/person\/264cf3af38edc93a3362a4c47ec5b2f0"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"it-IT"},{"@type":["Person","Organization"],"@id":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/#\/schema\/person\/264cf3af38edc93a3362a4c47ec5b2f0","name":"Antonio Lamorgese","image":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-content\/uploads\/2019\/06\/ChiSono.png","url":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-content\/uploads\/2019\/06\/ChiSono.png","contentUrl":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-content\/uploads\/2019\/06\/ChiSono.png","width":120,"height":130,"caption":"Antonio Lamorgese"},"logo":{"@id":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-content\/uploads\/2019\/06\/ChiSono.png"},"description":"Amministratore di rete e sviluppatore. Dopo anni di esperienza nel settore, ho ideato un sistema di gestione dati MYSQL in PHP senza scrivere una sola riga di codice.&nbsp;Scopri di pi\u00f9....","sameAs":["https:\/\/www.Phpcodewizard.it\/","https:\/\/www.linkedin.com\/in\/antonio-lamorgese-660735190\/","https:\/\/pinterest.it\/antoniolamorgese9711\/","https:\/\/x.com\/AntonioLamorge3","https:\/\/www.youtube.com\/user\/antoniolamorgese","https:\/\/tumblr.com\/blog\/phpcodewizard"],"url":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/author\/antonio-lamorgese\/"}]}},"permalink_manager":null,"_links":{"self":[{"href":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-json\/wp\/v2\/posts\/19899","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-json\/wp\/v2\/comments?post=19899"}],"version-history":[{"count":0,"href":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-json\/wp\/v2\/posts\/19899\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-json\/wp\/v2\/media\/19900"}],"wp:attachment":[{"href":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-json\/wp\/v2\/media?parent=19899"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-json\/wp\/v2\/categories?post=19899"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.phpcodewizard.it\/antoniolamorgese\/wp-json\/wp\/v2\/tags?post=19899"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}