Plugins


Everything here is free, GPL licensed, and open source. There is no Pro version, no licence key, and no upgrade prompt in any of them. The plugins on WordPress.org were reviewed by the WordPress.org team before release.

General Slider plugin icon

General Slider

A slider that does not slow your site down.

A slider sounds like a simple feature, but it is one of the most common places a WordPress site picks up weight it does not need — jQuery dependencies, render-blocking CSS, and JavaScript that runs on every page even when there is no slider on it.

General Slider is built on Splide, a lightweight slider engine with no dependencies. There is no jQuery on the front end, and the CSS and JavaScript are only added to pages that actually contain a slider.

What it does

  • Build a slider once, then drop it anywhere with a block, a shortcode, or an Elementor widget
  • Works without a page builder — the block and shortcode work with any theme
  • Pull slides automatically from your latest posts, pages, or WooCommerce products
  • Design presets and navigation skins you can mix freely, plus per-slide background video and an accent colour
  • Keyboard and screen-reader accessible by default
  • Images lazy-load, and a slider only starts once it is scrolled into view
Advanced Testimonial plugin icon

Advanced Testimonial

Customer reviews, added once and shown anywhere.

Most WordPress testimonial solutions force a trade-off. Basic plugins give you one static layout and no way to collect new reviews. All-in-one page-builder addon packs bury a testimonial widget inside dozens of others you will never use, adding weight to every page on the site.

Advanced Testimonial is built only for testimonials. Reviews get their own post type with Groups, and each review carries its own fields — rating, company, verified badge, video. It ships with Schema.org review markup, so Google can show star ratings next to your search result.

What it does

  • Several display layouts — grid, list, card, carousel, marquee, masonry and spotlight
  • A set of card styles you can mix, with a different style per block if you want
  • A front-end form so visitors can submit their own review, with spam protection built in
  • Submissions arrive as pending, so nothing goes live before you approve it
  • Group testimonials so different pages can show different sets
  • Video testimonials from YouTube, Vimeo or a self-hosted file, opened in a lightbox
  • Your testimonials are never deleted on uninstall unless you explicitly opt in
Free Widgets For Elementor plugin icon

Free Widgets For Elementor

The widgets Elementor's free core is missing.

If you have built more than a couple of sites with the free version of Elementor, you have hit this wall: you need a pricing table, or a flip box, or a simple countdown timer, and the free core does not have them. The usual fix is installing a giant addon pack that ships dozens of widgets when you need three.

This plugin adds only what the free core is actually missing — nothing you already have, nothing you will not use. Each widget's CSS and JavaScript load only on the pages where that widget is used.

What is inside

  • Pricing Table — header, price, feature list, button, optional featured highlight
  • Flip Box — a 3D hover or click flip to a back face with a call to action
  • Team — photo, role, bio and social links for team member cards
  • Call To Action — title, text, button and background in a styled box
  • Countdown Timer — counts down to a date and time, with an optional expired message
  • Post Grid — a responsive grid of posts with image, title, meta, excerpt and read-more
  • Logo Carousel — a responsive logo carousel with arrows, dots and autoplay
  • Table of Contents — an auto-generated page outline with smooth scroll and scrollspy

Elementor Pro is not required, and there is no locked feature anywhere in it. A built-in demo library lets you import ready-made sections in one click.

Janitorix Media Audit plugin icon

Janitorix Media Audit

Proves an image is unused before it suggests deleting it.

Every WordPress media library fills up with images nobody uses any more — old banners, replaced logos, test uploads. Most cleanup plugins scan the uploads folder, flag whatever looks unused, and hand you a delete button.

The trouble is that the cost of being wrong is not symmetric. Leaving an unused image costs a few kilobytes. Deleting one that is still referenced somewhere — a Customizer background, an ACF field, a page-builder section — breaks your site, and you might not notice for weeks.

How it is different

Janitorix Media Audit never blends "is this used?" into a single guess. Every image gets two separate judgements:

  • Confidence — how sure the plugin is that the image is genuinely unused, based on scanners covering post content, Gutenberg blocks and synced patterns, full-site-editing templates, the Customizer, theme options, widgets, menus, Elementor, ACF, WooCommerce, and the theme's own PHP, CSS and JavaScript files.
  • Risk — how much damage deleting it would cause if the plugin is wrong.

A site logo nobody explicitly references and a stray test upload can score identically on confidence, but they need opposite treatment. That is why risk is scored on its own.

What it refuses to do

  • Will not recommend deleting anything if scan coverage was too low — it asks for a rescan instead
  • Will not offer Trash for anything at medium risk or above, however confident the scan is
  • Will never touch a site's logo, icon or header — those are refused outright, not just scored low
  • Will not touch an image uploaded in the last 24 hours
  • Never deletes in one step — Trash first, always

It is free and open source, and the whole review that got it into the directory is written up in what the WordPress.org plugin review flagged.

CrawlWatch plugin icon

CrawlWatch – AI Bot Insights

Shows you the traffic your analytics never mentions.

GPTBot, ClaudeBot, PerplexityBot and Google-Extended read your site every day, and none of it shows up in a normal analytics dashboard. You cannot tell which pages they took, whether anyone arrived from an AI assistant afterwards, or whether your site is worth reading in the first place.

CrawlWatch logs those visits and puts them somewhere you can see them. It recognises more than forty AI crawlers, and every visit is stored in one table on your own server. There is no API key, no account, and no external service.

What it does

  • Shows which AI bots visited and exactly which URLs they read
  • Tracks referrals — visitors arriving from ChatGPT, Perplexity, Gemini or Claude
  • Generates llms.txt and ai.txt in one click, with a full-content version for deeper context
  • Allows or blocks each AI bot in robots.txt from a preview screen, with no code
  • Scores how ready your site is for AI readers, from 0 to 100, and ranks the quickest fixes
  • Blocking an AI training bot does not touch Google search — regular Googlebot is never managed here

What it does not do

  • Sends nothing off your server — every row lives in one local table
  • Never stores a raw IP address; they are hashed, and truncated before hashing
  • Adds no CSS or JavaScript to the front end, and a normal human visit costs zero extra queries
  • Keeps logs for 30 days by default, and deletes older rows on a daily schedule

One thing worth knowing before you install it: tracking runs in PHP, so a full-page cache that serves a page without running PHP will hide those visits. The plugin detects the common caching plugins and says so on its own screens rather than quietly showing you an empty chart.

ScheduleLens plugin icon

ScheduleLens – Cron Viewer & Manager

Every cron job in plain words.

WordPress runs dozens of scheduled jobs in the background, and there is no screen that lists them. When one silently stops, the symptom shows up somewhere else — a post that never publishes, a check that never runs.

ScheduleLens is that screen. Every event with its repeat interval, next run time, and which plugin added it — overdue jobs badged red, core jobs gray. Run a job now, pause it without deleting it, add a custom job without code, and check wp-cron health with fix steps on the same screen.

What it does

  • Lists all cron events with repeat, next run, and source plugin
  • Run now, Pause / Resume, Delete custom jobs — core jobs protected
  • Adds custom jobs without code (existing hook only, no PHP execution)
  • Health tab: enabled, reachable, late count, total — Green / Yellow / Red with fix steps
  • Keeps a log of the last 100 runs with duration, auto-pruned after a few days
  • Admin pages only — no CSS or JavaScript on the front end, no tracking
Also

Other things I build

Need help with one of these?

For a bug or a question about a plugin, the support forum on WordPress.org is the fastest way to reach me, and the answer stays public so the next person with the same problem can find it. For anything else, send me an email.