Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

So, you want to be a plugin developer?

18 830 vues

Publié le

Presented at WordCamp Montreal 2014

Do you ever browse the WordPress Plugin Directory and wish you could see your creations up there? Have you ever written code for a personal site or customer and thought that others could benefit from having access to your work? ‘So, you want to be a plugin developer?’ covers numerous aspects of plugin development, including finding an idea for your plugin and securing a space for it in the directory, programming resources and code quality guidelines to make sure your add-on is top-notch, and more business-oriented topics like monetization and promotion. With all of these tips and tools in hand, your next idea could be the next great WordPress plugin.

Publié dans : Technologie
  • Identifiez-vous pour voir les commentaires

  • Soyez le premier à aimer ceci

So, you want to be a plugin developer?

  1. 1. SO, YOU WANT TO BE A PLUGIN DEVELOPER? , WordPress Plugin Developer /Yannick Lefebvre @ylefebvre ylefebvre.ca/wcmtl14 WordCampMontréal2014
  2. 2. ABOUT ME User since 2004 First plugin in 2005 Eight free plugins on Private plugins for customers official repository
  3. 3. MY BOOK Published July 2012 Learn all about plugin development through more than 80 step-by-step examples
  4. 4. MY GOALS TODAY Educate potential plugin developers Make users appreciate plugin dev work
  5. 5. TOPICS Finding inspiration Coding your masterpiece Promoting your work Monetization strategies Supporting your community
  6. 6. FINDING INSPIRATION Best plugins come from solving actual needs functions.php code Customer plugins Recurring needs from wordpress.org forums No good plugin for a task
  7. 7. WHAT CAN A PLUGIN DO? Almost ANYTHING!
  8. 8. ACTIONS AND FILTERS 101 Actions allow you to execute code almost anywhere in page rendering Add content Alter core functionality Add custom admin panels Extend WP (CPT, DB Schema, etc...)
  9. 9. ACTIONS AND FILTERS 101 Filters allow you to modify almost any data before it is displayed Hide unwanted elements Modify page content Insert new items on pages based on configuration (e.g. image slider)
  10. 10. ACTIONS AND FILTERS 101 1061 action hooks 1594 filter hooks Full list of calls hookr.io
  11. 11. ACTIONS AND FILTERS: THE BIG PICTURE Community-driven sites Complex store fronts Dynamic content-driven sites Enhance content editing Create new importers New ways to interact with external web sites
  12. 12. DID OTHERS HAVE YOUR IDEA? > 32000 plugins! Look for others Can you do better? Name taken? Reserve name ASAP
  13. 13. PLUGIN REPOSITORY SEO OPTIMIZATION wordpress.org or plugins admin Catchy name Short description Keywords Test searches
  14. 14. CODING YOUR MASTERPIECE CODE QUALITY Size Execution time Admin versus front-end PHP warnings
  15. 15. CODING YOUR MASTERPIECE USER EXPERIENCE Clean admin pages No file modification div tags for styling FAQ and Documentation
  16. 16. CODING YOUR MASTERPIECE TAB NAVIGATION STYLE New style
  17. 17. CODING YOUR MASTERPIECE DISTRIBUTION LICENSE GNU General Public License v2 or later Core plugin code PHP libraries javascript / jQuery plugins Icons and images Plugins scanned for non-compliance
  18. 18. CODING YOUR MASTERPIECE PLUGIN SECURITY Scanned for security holes Known insecure libraries (Timthumb) Malicious code injection SQL injection Relative file load paths Suspended and hidden when issues found Fix ASAP to get back online
  19. 19. CODING YOUR MASTERPIECE INTERNATIONALIZATION Follow WordPress guidelines on making your plugin translatable I18n for WordPress Developers Dedicated users often provide translations for your work
  20. 20. CODING YOUR MASTERPIECE TESTING Single-site versus multi-site Single plugin versus Top 10 popular plugins http vs https jQuery Multiple themes Local machine vs hosted site Configuration option mix
  21. 21. PROMOTING YOUR WORK PLUGIN BANNER IMAGE
  22. 22. PROMOTING YOUR WORK PLUGIN BANNER IMAGE
  23. 23. PROMOTING YOUR WORK PLUGIN BANNER IMAGE
  24. 24. PROMOTING YOUR WORK PLUGIN BANNER IMAGE
  25. 25. morgueFile PROMOTING YOUR WORK IMAGE RESOURCES Others: ,StockVault EveryStockPhoto
  26. 26. IconArchive PROMOTING YOUR WORK ICON RESOURCES Others: ,Icons8 The Noun Project
  27. 27. FontSquirrel PROMOTING YOUR WORK FONT RESOURCES
  28. 28. MONETIZATION STRATEGIES FREE PLUGINS Only free plugins on wordpress.org Donation links Ads for premium version Guilt-based support Revenue expectation: $0-100 / month
  29. 29. MONETIZATION STRATEGIES PREMIUM PLUGINS AND ADD-ONS e.g. Gravity Forms, MailPoet Direct revenue Separate sale channel and hosting platform Custom update mechanism Potential piracy User support expectation Revenue expectation: Higher, more work
  30. 30. MONETIZATION STRATEGIES FAIR USE Direct call to action Allows integrators to remove donation links Revenue expectation: Slightly better than free
  31. 31. MONETIZATION STRATEGIES FREE PLUGINS
  32. 32. MONETIZATION STRATEGIES MARKET SIZE One download != 1 user Update spikes, installed but not kept
  33. 33. MONETIZATION STRATEGIES MARKET PREFERENCE Most users don't want to pay But they want everything!
  34. 34. MONETIZATION STRATEGIES PLUGINS AS PORTFOLIO Funding for new features Custom contract work
  35. 35. SUPPORTING YOUR COMMUNITY Popular plugin = Questions Paid plugin = Demanding users Avoid general WP support questions Manage expectations
  36. 36. SUPPORTING YOUR COMMUNITY KEEP ALL SUPPORT IN ONE PLACE wordpress.org forums Easier for users to search Harder to miss a question Advanced users can help others!
  37. 37. SUPPORTING YOUR COMMUNITY VIDEO TUTORIALS Free tools: ,screenr.com Screencast-O-Matic
  38. 38. SUPPORTING YOUR COMMUNITY FEATURE REQUESTS Good and bad ideas Feature creep Don't be afraid to say NO!
  39. 39. SUPPORTING YOUR COMMUNITY UPDATE FREQUENCY Updates include Bug fixes New functionality After update, users need to Read changelog Test site functionality
  40. 40. SUPPORTING YOUR COMMUNITY DROPPING FEATURES Avoid if possible No easy way to poll users Remove and cross fingers
  41. 41. CONCLUSION
  42. 42. THANK YOU FOR ATTENDING MY TALK QUESTIONS? ylefebvre.ca/wcmtl14 @ylefebvre

×