Upgrade to Pro — share decks privately, control downloads, hide ads and more …

WordPress Plugins - Cosa sono e come crearne di propri

WordPress Plugins - Cosa sono e come crearne di propri

Introduzione al mondo dei plugins per WordPress, cosa serve per scrivere un plugin? - Guido Scialfa

0b7debc4c32c9768afae428f457fc247?s=128

WordPress Meetup Catania

July 20, 2017
Tweet

Transcript

  1. WordPress Plugins Cosa sono e come crearne di propri!

  2. Un plugin è un pezzo di software che contiene del

    codice che si integra nell’ambiente di WordPress. I plugins possono estendere e/o modificare il comportamento di WordPress oltre che aggiungere nuove funzionalità e persino sovrascriverne di esistenti. Cosa sono i Plugins?
  3. 1.Plugins 2.Network 3.Must-Use 4.Drop-in Tipologie di Plugins

  4. Plugins che vengono attivati/disattivati per tutti i siti all’interno di

    una installazione multisite. 
 
 Questi plugins sarano disponibili all’interno di tutti i siti senza necessità di doverli attivare sito per sito. I plugins per poter funzionare in network wide devono poter supportare questa modalità di WordPress. Network Plugins
  5. I mu-plugins sono plugins installati in una directory speciale e

    sono attivati automaticamente in tutti i siti.
 
 Questi plugins vengono gestiti in una lista separata. Non possono essere deattivati ne distinstallati a meno di non rimuovere la directory dal server. Must-Use Plugins
  6. I Drop-in Plugins permettono di modificare alcune funzionalità di WordPress

    sovrascrivendo le funzioni stesse del cms. Possiamo ad esempio, sovrascrivere la libreria usata da Wp per collegarsi al database, modificare il sistema di cache, gestione dei blog etc…
 
 Non tutti i plugins drop-ins lavorano a livello di Network. Drop-In Plugins
  7. Per poter scrivere un plugin per WordPress bisogna Conoscere WordPress.

    Avere una conoscenza basilare degli Hooks (ganci). Sapere dove e quando potersi agganciare a WordPress. Concetti Fondamentali
  8. Gli Hooks Gli Hooks sono suddivisi in actions e filters

    e permettono ai plugins di potersi integrare e manipolare i dati in WordPress.
 
 L’unica differenza tra actions e filters e che i secondi devono sempre ritornare qualcosa. do_action() do_action_ref_array() add_action() remove_action()
 remove_all_actions() apply_filters() apply_filters_ref_array() add_filter() remove_filter() remove_all_filters()
  9. Dichiarazione do_action ( ‘action_key_name’, $arg1, $arg2, …$argN ); add_action (

    ‘action_key_name’, function () { … }, $priority, $nArgs);
  10. Esempio // … Codice di WordPress do_action(‘after_setup_theme’); // … Continua

    altro codice di WordPress
  11. Esempio // … Codice in wp-content/plugins/mio-plugin/mio-plugin.php add_action(‘after_setup_theme’, function() { add_image_size(‘my-big-image-size’,

    1200, 1200); }); // … Continua codice del file.
  12. Esempio add_filter( 'manage_media_columns', function ( $columns ) { $columns['size'] =

    __( 'Size' ); return $columns; } ); add_action( 'manage_media_custom_column', function ( $column_name, $post_id ) { if ( 'size' === $column_name ) { echo size_format( filesize( get_attached_file( $post_id ) ) ); } }, 10, 2 );
  13. http://wpsnipp.com/ http://wp-snippets.com/ https://generatewp.com/ Snippet per Tutti

  14. Ok, ma come creo un plugin? Il file del plugin.

    Intestazione del plugin. Initializzare il plugin.
  15. Il file del Plugin I plugins risiedono all’interno della directory

    di WordPress: wp-content/plugins oppure wp-content/mu-plugins o wp-content/ Per convenzione il file principale del plugin ottiene lo stesso nome della directory del plugin stesso. wp-content/plugins/mio-plugin/mio-plugin.php
  16. Intestazione del plugin WordPress riconosce il file da utilizzare come

    file principale del plugin dalla presenza di una intestazione all’interno del file stesso. L’intestazione o header del plugin definisce alcune informazioni riguardanti il plugin stesso come: Nome, Autore, Licenza etc…
  17. Intestazione del plugin /* * Plugin Name: WordPress.org Plugin *

    Plugin URI: https://developer.wordpress.org/plugins/the-basics/ * Description: Basic WordPress Plugin Header Comment * Version: 1.0.0 * Author: WordPress.org * Author URI: https://developer.wordpress.org/ * License: GPL2 * License URI: https://www.gnu.org/licenses/gpl-2.0.html * Text Domain: wporg * Domain Path: /languages */
  18. Intestazione del plugin

  19. Inizializzare il plugin Quando WordPress include il file principale del

    plugin viene anche eseguito il codice al suo interno. È importante quindi che il plugin esegua il suo codice in un determinato momento all’interno del ciclo di vita del processo php.
  20. WordPress Bootstrap

  21. WordPress Bootstrap

  22. WordPress Bootstrap

  23. WordPress Bootstrap

  24. WordPress Bootstrap

  25. Inizializzare il plugin

  26. None
  27. WordPress Plugins Boilerplate Ovvero, evitiamo di eseguire gli stessi noiosi

    task.
  28. https://github.com/widoz/unprefix-plugin-boilerplate https://github.com/DevinVinson/WordPress-Plugin-Boilerplate https://github.com/WPBP/WordPress-Plugin-Boilerplate-Powered

  29. WordPress Plugins Ajax Rebuild Thumbnail User Switching / in Admin

    Bar Log Deprecated Notice P3 Profiler Query Monitor Minify Html Gmail Smtp WpRollback Widget Importer Exporter Transient Manager Theme Check Show Hidden Post Meta Options Importer Jetpack HumanMade Importer HeartBreath Control
  30. Thank you!