What is WidgetCore?
An introduction to the WidgetCore plugin for Elementor — a growing set of accessible widgets, including an FAQ accordion with FAQPage schema and an AJAX live search with a shortcode, plus requirements and a reading path.
WidgetCore is a free, open-source WordPress plugin that adds a growing set of practical, ready-to-use widgets to Elementor — including an accessible FAQ accordion that outputs FAQPage structured data and a live search that shows results without reloading the page, also available anywhere on the site through the [wgcr_search] shortcode. Every widget the plugin ships has its own guide page in these docs, and the set grows with each release.
The plugin focuses on three things: real accessibility (keyboard support, ARIA and reduced motion), first-class Persian and right-to-left support (with fa_IR and en_US translations bundled), and staying light (no external JavaScript or CSS library, no extra requests).
The widgets
At a glance
| Item | Value |
|---|---|
| Current version | 0.0.7 |
| Widgets | 2 |
| Translatable strings | 192 |
| Minimum WordPress | 6.7 |
| Minimum PHP | 7.4 |
| Required plugin | Elementor |
| Tested with | WordPress 7.1.2 and Elementor 4.3.2 |
| License | GPL-2.0-or-later |
| Text domain | widgetcore |
| Shortcode | [wgcr_search] |
| REST route | /wp-json/wgcr/v1/search |
Suggested reading path
Check the requirements
WordPress 6.7 or newer, PHP 7.4 or newer, and an active Elementor installation. Details on the requirements page.
Download and install the plugin
Get the ZIP package from the download page and activate it following the installation guide.
Place your first widget
In the Elementor editor, open the “WidgetCore Widgets” category and drag a widget onto the canvas.
Configure the behaviour
For search, read display modes and pagination; for FAQs, see the FAQ widget page.
Stay current
Updates are delivered straight from the GitHub repository — see the updates page.
How the plugin is organised
The plugin is a handful of small, independent parts. Knowing them makes troubleshooting much faster:
| Part | Role |
|---|---|
widgetcore.php | Registers the widget category, loads translations and registers assets |
widgets/class-faq-widget.php | The FAQ widget with its inline style and script |
widgets/class-search-widget.php | The live search widget and all of its controls |
includes/search/search-shared.php | Shared search logic, the shortcode and the render output |
includes/search/rest-search.php | The search REST route and its parameters |
includes/update/github-updater.php | Updates from the GitHub repository |
assets/search/search.css and search.js | Front-end appearance and behaviour of the search widget |
languages/ | The fa_IR and en_US translation files and the .pot template |
What the plugin does not do
- No external JavaScript or CSS library is loaded; everything ships inside the package.
- No data is sent to a third-party server. The only network requests the plugin makes are to your own WordPress REST API and (when checking for updates) to the GitHub API.
- Widgets are registered inside Elementor only; with Elementor inactive, the plugin adds nothing to your site.