Building a WordPress plugin was never part of Grant Fritchey’s comfort zone — but that’s the whole point of this series. In Part 5 of his AI-driven app build, Grant uses Microsoft CoPilot and GitHub Copilot to generate a working WordPress plugin for dbRosetta almost entirely through prompts. By the end, there’s a live, searchable web page – but also a growing list of lessons about what AI can – and can’t – do on its own.

Once again, this part of the series takes me into unfamiliar territory. I’ve never built a PHP plugin or a WordPress page…but that’s exactly what AI is for. So, let’s get into it.

This is the fifth part of Grant Fritchey’s series on building an app and database almost entirely through an LLM. The repo, including every prompt, lives on GitHub.

For anyone new here: I write prompts to Microsoft CoPilot (the paid version, running on my desktop), which then generates a prompt for Visual Studio (VS) Code and the GitHub Copilot agent.

There’s supposed to be a strict prompt structure we agreed on at the start of the series, but MS CoPilot keeps forgetting it. I’ve found that the more you try to correct AI on a given path, the more it drifts towards hallucination — so I’ve stopped fighting it, and just try to be more explicit upfront.

Please generate the necessary prompt for VS Code to create the WordPress application for dbRosetta. Include clear steps for any manual work, since VS Code can’t access my WordPress environment directly.

Start with just the page to read from the dbRosetta database — no admin UI or data entry yet. Keep it simple. Allow users to define a search term for a given database.

Results may include multiple terms and explanations, as supported by the current database design. Ensure there’s no possibility of SQL injection and that we’re making a secure connection to the Azure-hosted API.

Project: dbRosetta WordPress Plugin — Read/Search Integration

Context: You are an expert WordPress plugin developer. Implement a minimal, secure plugin that allows a WordPress site to query the dbRosetta API (hosted in Azure) and display results.

The plugin must: provide a search form where users can enter a term and select a database; send the query securely to the API (HTTPS and JWT/OAuth tokens); display multiple terms and explanations returned by the API; prevent SQL injection by validating and sanitizing all user input; and be simple — no admin UI or data entry at this stage.