Blockparty Tabs
An accessible tabs block for WordPress Gutenberg editor that follows ARIA best practices.
★ 0stars
0forks
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/beapi/blockparty-tabs/archive/refs/heads/develop.zipReadme
Blockparty Tabs
An accessible tabs block for WordPress Gutenberg editor that follows ARIA best practices.
Features
- ✅ Accessible: Built with proper ARIA attributes and keyboard navigation support
- 🎨 Customizable: Add custom colors and icons to your tabs
- 🧩 Flexible: Nest any WordPress block inside tab panels
- ⚡ Easy to use: Simple interface to add, remove, and reorder tabs
Requirements
- WordPress 6.2 or higher
- PHP 8.1 or higher
- Gutenberg editor enabled
Installation
Manual Installation
- Download the plugin files
- Upload the
blockparty-tabsfolder to the/wp-content/plugins/directory - Activate the plugin through the 'Plugins' menu in WordPress
Composer Installation
composer require beapi/blockparty-tabs
Usage
Adding a Tabs Block
- In the WordPress editor, click the + button to add a new block
- Search for "Tabs" or "Blockparty Tabs"
- Click on the block to insert it into your content
By default, the block comes with 3 tabs. Each tab contains a panel where you can add any content.
Adding/Removing Tabs
- Add a tab: Click the "Add Item After" button in the block toolbar
- Remove a tab: Select the tab you want to remove and click the trash icon in the toolbar
Customizing Tabs
Adding Icons
- Select a tab item
- In the block toolbar, click the "Icon" button
- Choose an icon from the available options
Changing Colors
- Select the tabs block
- Use the color settings in the right sidebar to customize:
- Tab background colors
- Text colors
- Active tab colors
Adding Content to Tabs
- Click inside a tab panel
- Add any WordPress block (paragraphs, images, buttons, etc.)
- You can nest multiple blocks within each tab panel
Accessibility
The plugin generates semantic HTML with proper ARIA attributes:
role="tablist"for the tabs containerrole="tab"for each tab buttonrole="tabpanel"for each content panel- Proper
aria-controls,aria-labelledby, andaria-selectedattributes - Keyboard navigation support (Arrow keys, Tab, Enter)
Generated Markup Example
<div class="wp-block-blockparty-tabs" role="tablist">
<ul class="wp-block-blockparty-tabs-nav">
<li class="wp-block-blockparty-tabs-nav-item is-active">
<a
id="block-tab-0-0"
role="tab"
aria-controls="block-panel-0-0"
class="wp-block-blockparty-tabs-nav-link"
href="#block-tab-0-0"
aria-selected="true"
>
<span>Tab 1</span>
</a>
</li>
<!-- More tabs... -->
</ul>
<section class="wp-block-blockparty-tabs-panels">
<div
role="tabpanel"
tabindex="0"
class="wp-block-blockparty-tabs-panel-item is-active"
id="block-panel-0-0"
aria-labelledby="block-tab-0-0"
>
<div class="wp-block-blockparty-tabs-panel-item__inner">
<!-- Your content here -->
</div>
</div>
<!-- More panels... -->
</section>
</div>
Development
Building the Plugin
npm install
npm run build
Development Mode
npm start
Linting
npm run lint:js
npm run lint:css
Support
For bug reports and feature requests, please use the GitHub issues page.
Changelog
See readme.txt and CHANGELOG.md for the full version history.
Developed with ❤️ by Be API
License
GPL-2.0-or-later
