Skip to content

Commit 8cf5c45

Browse files
committed
docs: add CHANGELOG.md and readme.txt
1 parent c3fb181 commit 8cf5c45

2 files changed

Lines changed: 221 additions & 0 deletions

File tree

CHANGELOG.md

Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
# Changelog
2+
3+
All notable changes to this project will be documented in this file.
4+
5+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7+
8+
## [2.1.0] - 2026-06-30
9+
10+
### Added
11+
12+
- Configurable FAQ question heading level (h2–h6) from the block settings panel.
13+
- Rank Math SEO integration for FAQ structured data (JSON-LD).
14+
- SEOPress integration for FAQ structured data (JSON-LD).
15+
- SEO service resolver to delegate schema output to the active SEO plugin (Yoast SEO, Rank Math, or SEOPress).
16+
- PSR-4 autoloading for plugin PHP classes via Composer.
17+
- Block example in the FAQ block inserter preview.
18+
- Deprecated save handlers to preserve front-end markup for content saved in 2.0.x.
19+
20+
### Changed
21+
22+
- Refactored FAQ block markup to use WordPress block class names (aligned with blockparty-accordion).
23+
- Refactored Yoast SEO integration into a dedicated service class alongside other SEO plugins.
24+
- Updated French translations for all block editor scripts.
25+
- Replaced wp-env npm scripts (`start:env` / `stop:env` / `setup:env`) with `env:start` / `env:stop`.
26+
- Local development environment now mounts Yoast SEO, Rank Math, and SEOPress via Composer.
27+
28+
### Fixed
29+
30+
- Removed duplicate block wrapper in the FAQ item editor component (`useBlockProps` called twice).
31+
- Renamed `includes/` subdirectories to match PSR-4 namespace casing (`Schema/`, `Services/`, `Hooks/`).
32+
33+
### Removed
34+
35+
- Psalm static analysis configuration and dependency.
36+
37+
## [2.0.3] - 2026-02-17
38+
39+
### Added
40+
41+
- Support for core/button blocks inside FAQ answers.
42+
- Spacing support for FAQ answers.
43+
- Font size (typography) support for FAQ questions.
44+
45+
### Changed
46+
47+
- FAQ question text is stripped of HTML tags in structured data output.
48+
49+
## [2.0.2] - 2026-01-27
50+
51+
### Fixed
52+
53+
- Added missing `isAccordion` attribute to the parent FAQ block.
54+
55+
## [2.0.1] - 2026-01-27
56+
57+
### Fixed
58+
59+
- Block registration now uses block metadata from `block.json` correctly after the 2.0 build restructure.
60+
61+
## [2.0.0] - 2026-01-27
62+
63+
### Added
64+
65+
- Nested block architecture with child blocks: `faq-item`, `faq-question`, and `faq-answer`.
66+
- Configurable accordion mode via the `isAccordion` attribute (interactive accordion or static layout).
67+
- InnerBlocks support in FAQ answers (paragraphs, lists, images, and other Gutenberg blocks).
68+
- InnerBlocks support in FAQ questions when accordion mode is disabled.
69+
- Front-end accordion script with configurable behavior via the `beapi_faq_block_config` filter.
70+
- Automatic migration from the legacy `questions` array attribute to the InnerBlocks format.
71+
- Add and remove FAQ item controls in the block editor toolbar.
72+
- Full internationalization: PO/MO translations for PHP and JSON translations for JavaScript.
73+
- Yoast SEO FAQPage structured data integration.
74+
- wp-env local development environment.
75+
76+
### Changed
77+
78+
- Build structure reorganized to follow the blockparty-accordion model (one `block.json` per block directory).
79+
80+
## [1.0.2] - 2024-06-07
81+
82+
### Changed
83+
84+
- Added PHP 8.2 to supported PHP versions.
85+
86+
## [1.0.1] - 2024-04-03
87+
88+
### Fixed
89+
90+
- Corrected CSS custom property variable names.
91+
92+
## [1.0.0] - 2024-04-02
93+
94+
### Added
95+
96+
- Initial release of the Blockparty FAQ Gutenberg block.
97+
- Accessible accordion front-end behavior powered by `@beapi/be-a11y`.
98+
- Yoast SEO FAQPage structured data (JSON-LD) generation.
99+
- Editor controls to add and remove FAQ items.
100+
101+
[2.1.0]: https://github.com/BeAPI/blockparty-faq/compare/2.0.3...2.1.0
102+
[2.0.3]: https://github.com/BeAPI/blockparty-faq/compare/2.0.2...2.0.3
103+
[2.0.2]: https://github.com/BeAPI/blockparty-faq/compare/2.0.1...2.0.2
104+
[2.0.1]: https://github.com/BeAPI/blockparty-faq/compare/2.0.0...2.0.1
105+
[2.0.0]: https://github.com/BeAPI/blockparty-faq/compare/1.0.2...2.0.0
106+
[1.0.2]: https://github.com/BeAPI/blockparty-faq/compare/1.0.1...1.0.2
107+
[1.0.1]: https://github.com/BeAPI/blockparty-faq/compare/1.0.0...1.0.1
108+
[1.0.0]: https://github.com/BeAPI/blockparty-faq/releases/tag/1.0.0

readme.txt

Lines changed: 113 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,113 @@
1+
=== Blockparty FAQ ===
2+
Contributors: beapi
3+
Tags: block, faq, accordion, gutenberg, schema, seo, accessibility
4+
Requires at least: 6.2
5+
Tested up to: 6.8
6+
Requires PHP: 8.1
7+
Stable tag: 2.1.0
8+
License: GPL-2.0-or-later
9+
License URI: https://www.gnu.org/licenses/gpl-2.0.html
10+
11+
A Gutenberg FAQ block with accessible accordion behavior and SEO-friendly structured data.
12+
13+
== Description ==
14+
15+
Blockparty FAQ provides a nested Gutenberg block for building frequently asked questions pages. Each FAQ entry is composed of a question and a rich-text answer that can contain any supported inner blocks (paragraphs, lists, images, buttons, and more).
16+
17+
**Key features:**
18+
19+
* Accessible accordion on the front end, powered by `@beapi/be-a11y`.
20+
* Toggle between accordion and static display modes.
21+
* Configurable question heading level (h2–h6).
22+
* Nested block architecture: FAQ → FAQ Item → Question + Answer.
23+
* FAQPage structured data (JSON-LD) via Yoast SEO, Rank Math, or SEOPress.
24+
* Automatic migration from the legacy single-block format (pre-2.0).
25+
* Full editor internationalization (JavaScript JSON translations and PHP PO/MO files).
26+
27+
**SEO plugins**
28+
29+
FAQ structured data requires one of the following SEO plugins to be active:
30+
31+
* Yoast SEO
32+
* Rank Math
33+
* SEOPress
34+
35+
Only one SEO plugin should be active at a time. The plugin automatically detects which one is available and outputs the appropriate schema.
36+
37+
== Installation ==
38+
39+
1. Upload the plugin files to the `/wp-content/plugins/blockparty-faq` directory, or install the plugin through the WordPress plugins screen directly.
40+
2. Activate the plugin through the **Plugins** screen in WordPress.
41+
3. Install and activate Yoast SEO, Rank Math, or SEOPress if you need FAQ structured data output.
42+
4. Insert the **FAQ** block from the block inserter in the WordPress editor.
43+
44+
== Frequently Asked Questions ==
45+
46+
= Does this block work without an SEO plugin? =
47+
48+
Yes. The FAQ block renders correctly on the front end without any SEO plugin. Structured data (JSON-LD) output requires Yoast SEO, Rank Math, or SEOPress.
49+
50+
= Can I use multiple FAQ blocks on the same page? =
51+
52+
Yes. All FAQ blocks on a page are aggregated into a single FAQPage schema entry.
53+
54+
= Is the accordion accessible? =
55+
56+
Yes. The front-end accordion uses `@beapi/be-a11y` with proper ARIA attributes (`aria-expanded`, `role="region"`) and keyboard support.
57+
58+
== Changelog ==
59+
60+
= 2.1.0 - 2026-06-30 =
61+
* Added configurable FAQ question heading level (h2–h6).
62+
* Added Rank Math SEO integration for FAQ structured data.
63+
* Added SEOPress integration for FAQ structured data.
64+
* Added SEO service resolver to delegate schema output to the active SEO plugin.
65+
* Added PSR-4 autoloading for plugin PHP classes.
66+
* Added block inserter example preview for the FAQ block.
67+
* Added deprecated save handlers for content saved in 2.0.x.
68+
* Changed FAQ block markup to WordPress block class names (aligned with blockparty-accordion).
69+
* Changed Yoast SEO integration into a dedicated service class.
70+
* Changed wp-env npm scripts to `env:start` / `env:stop`.
71+
* Fixed duplicate block wrapper in the FAQ item editor component.
72+
* Fixed PSR-4 directory casing for Composer autoloading.
73+
* Removed Psalm static analysis.
74+
75+
= 2.0.3 - 2026-02-17 =
76+
* Added support for core/button blocks in FAQ answers.
77+
* Added spacing support for FAQ answers.
78+
* Added font size support for FAQ questions.
79+
* Changed FAQ question text to strip HTML tags in structured data.
80+
81+
= 2.0.2 - 2026-01-27 =
82+
* Fixed missing `isAccordion` attribute on the parent FAQ block.
83+
84+
= 2.0.1 - 2026-01-27 =
85+
* Fixed block registration to use block metadata after the 2.0 build restructure.
86+
87+
= 2.0.0 - 2026-01-27 =
88+
* Added nested block architecture (`faq-item`, `faq-question`, `faq-answer`).
89+
* Added configurable accordion mode (`isAccordion` attribute).
90+
* Added InnerBlocks support in FAQ answers and questions.
91+
* Added front-end accordion script with `beapi_faq_block_config` filter.
92+
* Added automatic migration from the legacy `questions` array format.
93+
* Added add/remove FAQ item controls in the block editor.
94+
* Added full internationalization (PO/MO and JSON translations).
95+
* Added Yoast SEO FAQPage structured data integration.
96+
* Changed build structure to one `block.json` per block directory.
97+
98+
= 1.0.2 - 2024-06-07 =
99+
* Added PHP 8.2 to supported PHP versions.
100+
101+
= 1.0.1 - 2024-04-03 =
102+
* Fixed CSS custom property variable names.
103+
104+
= 1.0.0 - 2024-04-02 =
105+
* Initial release with accessible accordion and Yoast SEO FAQPage structured data.
106+
107+
== Upgrade Notice ==
108+
109+
= 2.1.0 =
110+
Adds Rank Math and SEOPress support, configurable question heading levels, and updated block markup. Existing content is preserved via deprecated save handlers.
111+
112+
= 2.0.0 =
113+
Major block architecture change. Existing FAQ blocks are automatically migrated to the new nested format on save.

0 commit comments

Comments
 (0)