Tools Dashboard
WordPress plugin that exposes custom REST API endpoints suitable for a blogging frontend and includes a backend dashboard.
by Muhammad Ali Raza · github.com/aliraza254/tools-dashboard · website
Install
No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:
wp plugin install https://github.com/aliraza254/tools-dashboard/archive/refs/heads/main.zipTools Dashboard is a powerful WordPress plugin designed to turn your WordPress site into a robust backend for Headless applications (like Next.js). It provides custom API endpoints, security features, and a dedicated dashboard.
Features
- Custom REST API (
dashboard/v1): Optimized endpoints for Posts and Single Post data.- Includes SEO Data (Yoast/Rank Math schema, OpenGraph, Twitter Cards).
- Includes Author Details and Categories/Tags.
- Return rendered HTML content relative to standard blocks.
- Security:
- API Key Authentication: Secure your data with
X-API-KEYheader. - Custom Login URL: Hide your
wp-login.phppage with a custom slug (e.g.,/my-secret-login).
- API Key Authentication: Secure your data with
- Headless Mode:
- Disables the frontend for visitors (returns 401 Unauthorized "Not a WordPress" page).
- Adds
noindexheaders to prevent search engine indexing of the CMS directly.
- Admin Dashboard:
- View Request Logs (IP, Endpoint, Status).
- Monitor API usage statistics.
- Manage Settings (Headless Mode, Login Slug).
- User Roles:
- SEO Manager: A restricted role for content editors (Post & Media access only).
- Action Logging:
- Automatically logs Post creation/updates and Media uploads.
Installation
- Upload the plugin files to the
/wp-content/plugins/tools-dashboarddirectory, or install the plugin through the WordPress plugins screen. - Activate the plugin through the 'Plugins' screen in WordPress.
- Go to Tools Dashboard in the admin menu to finish setup.
Usage
API Requests
All requests to dashboard/v1 endpoints require the API Key header.
Header:
X-API-KEY: your_generated_api_key
Endpoints:
GET /wp-json/dashboard/v1/posts- List all posts.GET /wp-json/dashboard/v1/post/{id}- Get single post by ID.
Headless Mode
Enable "Headless Mode" in Tools Dashboard > Settings. This will block all frontend access to your WordPress site, ensuring visitors only see your Headless App.
Custom Login URL
In Settings, define a Custom Login Slug (e.g., admin-login).
- Your new login URL will be:
https://yoursite.com/admin-login - The old
wp-login.phpwill be inaccessible.
Author
Muhammad Ali Raza GitHub Profile