Displaying you WordPress.org favourite plugins

On a whim this May bank holiday, tucked up on the sofa watching movies, I decided to create a plugin to display my favourited plugins on WordPress.org.

After a bit of digging I found you can use the plugins_api() function and pass it a username, e.g.:

plugins_api( 'query_plugins', array( 'user' => emirpprime, 'per_page' => '-1' ) );

This returns an object with some information about the results, then an array of plugins. A stripped down example of the structure is below:

stdClass Object
    (
    [info] => Array
        (
            [page] => 1
            [pages] => 0
            [results] => 57
        )
    [plugins] => Array
        (
            [0] => stdClass Object
                (
                    [name] => Autoptimize
                    [slug] => autoptimize
                    [version] => 2.1.0
                    [author] => <a href="http://blog.futtta.be/">Frank Goossens (futtta)</a>
                    [author_profile] => https://profiles.wordpress.org/optimizingmatters
                    [requires] => 4.0
                    [tested] => 4.7.5
                    [compatibility] => Array
                        (
                        )
                    [rating] => 94
                    [ratings] => Array
                        (
                            [5] => 419
                            [4] => 23
                            [3] => 12
                            [2] => 8
                            [1] => 22
                        )
                    [num_ratings] => 484
                    [support_threads] => 121
                    [support_threads_resolved] => 81
                    [downloaded] => 1349088
                    [last_updated] => 2016-12-14 5:45am GMT
                    [added] => 2009-07-09
                    [homepage] => http://blog.futtta.be/autoptimize
                    [sections] => Array
                        (
                            [description] => Autoptimize makes ...
                            [installation] => Just install from your WordPress...
                            [faq] => Installation Instructions...
                            [short_description] => Autoptimize speeds up your website and helps you save bandwidth by aggregating and minimizing JS, CSS and HTML.
                            [download_link] => https://downloads.wordpress.org/plugin/autoptimize.2.1.0.zip
                            [screenshots] => Array
                                (
                                )
                            [tags] => Array
                                (
                                    [css] => css
                                    [html] => html
                                    [javascript] => javascript
                                    [js] => JS
                                    [minify] => minify
                                )
                            [versions] => Array
                                (
                                    [0.1] => https://downloads.wordpress.org/plugin/autoptimize.0.1.zip
                                    ...
                                    [trunk] => https://downloads.wordpress.org/plugin/autoptimize.zip
                                )
                            [donate_link] => http://blog.futtta.be/2013/10/21/do-not-donate-to-me/
                            [contributors] => Array
                                (
                                )
                        )
                )
        )
)

A simple loop over the plugins array will get all the details about a plugin you could want.

A short while later, and a rough and ready version is complete – a basic plugin that registers a shortcode and returns a list of a user’s plugins.

What does the plugin output?

Here are my favourites as an example – the markup is basic but easy to style, with a couple of classes for targetting. I’ve kept it simpler than the layout in wp-admin or the plugin repository, but hopefully with enough info to be useful:

Found: 59

  • Add Descendants As Submenu Items by Alex Mills (Viper007Bond)
    Automatically all of a nav menu item's descendants as submenu items. Designed for pages but…
  • Autoptimize by Frank Goossens (futtta)
    Autoptimize speeds up your website by optimizing JS, CSS and HTML, async-ing JavaScript, removing emoji cruft, optimizing Google Fonts and more.
  • Blacklist Updater by Sergej Müller
    Automatic updating of the comment blacklist in WordPress with antispam keys from GitHub.
  • Broken Link Checker by Janis Elsts, Vladimir Prelovac
    This plugin will check your posts, comments and other content for broken links and missing…
  • Client-proof Visual Editor by Hugo Baeta
    Simple, option-less, plugin to make TinyMCE - the WordPress Visual Editor - easier for clients…
  • Cloudflare by John Wineman, Furkan Yilmaz, Junade Ali (Cloudflare Team)
    All of Cloudflare’s performance and security benefits in a simple one-click install of recommended settings specifically developed for WordPress.
  • Code Snippets by Shea Bunge
    An easy, clean and simple way to add code snippets to your site.
  • Coming Soon Page & Maintenance Mode by SeedProd by SeedProd
    The #1 Coming Soon Page, Under Construction & Maintenance Mode plugin for WordPress.
  • Custom Post Type UI by WebDevStudios
    Admin UI for creating custom post types and custom taxonomies for WordPress
  • Debogger by Simon Prosser
    Debugging tool for theme authors and reviewers.
  • Developer by Automattic
    A plugin, which helps WordPress developers develop.
  • Disable Comments by Samir Shah
    Allows administrators to globally disable comments on their site. Comments can be disabled according to post type. Multisite friendly.
  • Duplicate Post by Enrico Battocchi
    Copy posts of any type with a click!
  • Duplicator – WordPress Migration Plugin by Snap Creek
    WordPress migration and backups are much easier with Duplicator! Clone, back up, move and transfer…
  • Email Address Encoder by Till Krüss
    A lightweight plugin to protect email addresses from email-harvesting robots by encoding them into decimal and hexadecimal entities.
  • Enable Media Replace by Måns Jonasson
    Enables replacing attachment files by simply uploading a new file in the media library edit…
  • Epoch – A native Disqus alternative with a focus on speed and privacy by Postmatic
    Epoch - 100% realtime chat and commenting in a tiny little package that is fully…
  • EWWW Image Optimizer by Shane Bishop
    Speed up your website and improve your visitors' experience by automatically compressing and resizing images…
  • FakerPress by Gustavo Bordoni
    FakerPress is a clean way to generate fake and dummy content to your WordPress, great for developers who need testing
  • Flickr Justified Gallery by Miro Mannino
    Just your beautiful Flickr photos. In a Justified Grid.
  • Google Analytics Dashboard for WP (GADWP) by Alin Marcu
    Connects Google Analytics with your WordPress site. Displays stats to help you understand your users…
  • Google Maps All In One by Ve Bailovity (Incsub)
    Easily embed and customize Google maps on your WordPress site - in posts, pages or…
  • Gravity PDF by Gravity PDF
    Automatically generate, email and download PDF documents with Gravity Forms and Gravity PDF.
  • If Menu by Layered
    Display or hide menu items with user-defines rules
  • iThemes Security (formerly Better WP Security) by iThemes
    iThemes Security is the #1 WordPress Security Plugin
  • Lazy Load by Mohammad Jangda
    Lazy load images to improve page load times and server bandwidth. Images are loaded only…
  • Lazy Load by WP Rocket by WP Media
    The tiny Lazy Load script for WordPress without jQuery, works for images and iframes.
  • List Pages Shortcode by Ben Huson, Aaron Harp
    Introduces the [list-pages], [sibling-pages] and [child-pages] shortcodes for easily displaying a list of pages within a post or page.
  • Liveblog by WordPress.com VIP, Automattic
    Quick and simple blogging for following fast-paced events.
  • MCE Table Buttons by Jake Goldman, 10up, Oomph
    Adds table editing controls to the visual content editor (TinyMCE).
  • Meteor Slides by Josh Leuze
    Easily create responsive slideshows with WordPress that are mobile friendly and simple to customize.
  • Open Graph Protocol Framework by itthinx
    The Open Graph Protocol enables any web page to become a rich object in a social graph. This plugin renders meta tags within an extension framework.
  • Page Links To by Mark Jaquith
    Contributors: markjaquith Donate link: http://txfx.net/wordpress-plugins/donate Tags: page, redirect, link, external link, repoint Requires at least: …
  • PDF Image Generator by Mizuho Ogino
    Generate automatically cover image of PDF by using ImageMagick. Allow user to insert PDF link…
  • Plugin Check by Manoj Thulasidas
    Plugin Check is a validation tool for PHP developers (and a quality checker for end…
  • Really Simple SSL by Rogier Lankhorst
    No setup required! You only need an SSL certificate, and this plugin will do the rest.
  • Redirection by John Godley
    Manage 301 redirections, keep track of 404 errors, and improve your site, with no knowledge of Apache or Nginx needed.
  • Redis Object Cache by Till Krüss
    A persistent object cache backend powered by Redis. Supports Predis, PhpRedis, HHVM, replication, clustering and WP-CLI.
  • Regenerate Thumbnails by Alex Mills (Viper007Bond)
    Regenerate the thumbnails for one or more of your image uploads. Useful when changing their sizes or your theme.
  • REST API Toolbox by Pete Nelson
    Allows tweaking of several REST API settings
  • Restricted Site Access by Jake Goldman, 10up, Oomph
    Limit access to visitors who are logged in or allowed by IP addresses. Includes many options for handling blocked visitors.
  • Safe Report Comments by Thorsten Ott, Daniel Bachhuber, Automattic
    This plugin gives your visitors the possibility to report a comment as inappropriate. After a…
  • Sidebar Login by Mike Jolley
    Easily add an ajax-enhanced login widget to your WordPress site sidebar.
  • Simple History by Pär Thernström
    View changes made by users within WordPress. See who created a page, uploaded an attachment or approved an comment, and more.
  • Stream by XWP
    Planes have a black box, WordPress has Stream. When something goes wrong, you need to know how it happened.
  • Subscribe To Comments Reloaded by reedyseth, camu
    Subscribe to Comments Reloaded allows commenters to sign up for e-mail notifications of subsequent replies.…
  • Tabify Edit Screen by CodeKitchen B.V.
    Enable tabs in the edit screen and manage them from the back-end.
  • Theme Check by Otto42, pross
    A simple and easy way to test your theme for all the latest WordPress standards…
  • WordPress Beta Tester by Peter Westwood
    Allows you to easily upgrade to Beta releases.
  • WordPress Zero Spam by Ben Marshall
    Zero Spam makes blocking spam comments a cinch. Install, activate and enjoy a spam-free site. Even supports third-party plugins!
  • WP Content Filter by David Gwyer
    Take control of your site today! Censor all content containing profanity, swearing, and abusive comments.…
  • WP Document Revisions by Ben Balter
    WP Document Revisions is a document management and version control plugin. Built for time-sensitive and mission-critical…
  • WP Lynx by John Havlik
    WP Lynx allows you to mimic Facebook's wall links in your WordPress posts.
  • WP Maintenance Mode by Designmodo
    Adds a splash page to your site that lets visitors know your site is down for maintenance. It's perfect for a coming soon page.
  • WP Offload S3 Lite by Delicious Brains
    Copies files to Amazon S3 as they are uploaded to the Media Library. Optionally configure Amazon CloudFront for faster delivery.
  • WP Retina 2x by Jordy Meow
    Make your website look beautiful and crisp on modern displays by creating and displaying retina images. WP 4.4+ is also supported and enhanced.
  • WP TinyMCE Tables by Adam Pope
    Adds the table controls to the TinyMCE editor in WordPress
  • WP-Optimize by David Anderson, Ruhani Rabin, Team Updraft
    WP-Optimize is WordPress's most-installed optimisation plugin. With it, you can clean up your database easily…
  • Yet Another Related Posts Plugin (YARPP) by Adknowledge
    Display a list of related posts on your site based on a powerful unique algorithm.
  •  

    What do you think? Is there any other info you think would be useful to include? Let me know in the comments.

    Leave a Reply

    Your email address will not be published.