Overview
The LearnDash + Breakdance plugin provides a compatibility layer between the LearnDash LMS (sfwd-lms) plugin and the Breakdance Builder. It resolves fatal PHP errors and silent data-handling bugs that arise when both plugins are active together, particularly when WordPress core tightened strict type enforcement in version 6.7+.
Problems This Plugin Fixes
1. WP_Query Array/String Type Mismatch (PHP Fatal Error)
LearnDash shortcodes (e.g.
CA$30
DBT Skills Practice Through Art Course for Youth & Young Adults (16-25+)
A companion course to the DBT Skills Practice Through Art Workbook for Youth & Young Adults. Walk through DBT Skills Practice Through Art with activities that speak their language — including 5 DBT art activities that make skill-building feel less like homework and more like creative exploration. Includes DBT monitoring tools and a reflection questionnaire.
CA$55
DBT Skills Practice Through Art Course for Youth & Young Adults (Advanced)
A companion course to the DBT Skills Practice Through Art Workbook for Youth & Young Adults — Advanced, this course delivers all four core DBT skill modules — Mindfulness, Emotion Regulation, Interpersonal Effectiveness, and Distress Tolerance — through guided instruction, reflective exercises, and 22 art activities woven throughout. Each module is followed by hands-on art projects that give participants a creative way to practise and process what they're learning.
CA$40
DBT Skills Practice Coaching Course (for Parents & Trusted Adults)
A companion course to the DBT Skills Coaching Guide workbook, this course covers the full workbook curriculum, plus an extended coaching section with practical guidance on interpersonal effectiveness, boundaries, validation, effective negotiation, and collaborative problem-solving strategies. Includes five DBT art activities and a reflection questionnaire.
CA$30
DBT Skills Practice Through Art Course for Kids (8-15)
This course introduces kids to practical emotional and relationship skills through art-based activities. They'll explore goal setting, WiseMind123, building healthy relationships, and four Calm-Only Skills — all brought to life through four fun DBT art activities. Includes DBT monitoring tools and a reflection questionnaire.
) pass comma-separated strings like "12,45,67" to WP_Query arguments that require a proper PHP array. WordPress 6.7+ enforces strict typing on array_map(), causing a fatal error. This plugin intercepts those arguments via pre_get_posts and normalizes them to integer arrays before WP_Query processes them.
2. LearnDash Query Args Filter
Where LearnDash exposes the ld_before_course_list_query_args filter, this plugin also hooks in to normalize the following array-type arguments at the source: post__in, post__not_in, author__in, author__not_in, tag__in, tag__not_in, category__in, category__not_in.
3. Breakdance Shortcode Element SSR Crash Recovery
When Breakdance renders a page server-side that contains a LearnDash shortcode, fatal errors in the shortcode bubble up and crash the entire page render. This plugin wraps shortcode output in a safe execution buffer to catch and log these gracefully rather than crashing the page.
4. ACF Flexible Content / Repeater Field Include Guard
Breakdance’s ACF dynamic data integration uses require_once to load field-type handlers. If any file is missing (e.g. after a partial update), the site goes down entirely. This plugin registers a pre-load check and logs missing files rather than letting PHP throw a fatal.
Setup
- Upload the plugin folder to
/wp-content/plugins/learndash-breakdance/.
- Activate via Plugins → Installed Plugins.
- No configuration is required — all fixes are active immediately after activation.
- Optionally visit Settings → LearnDash + Breakdance to review the active fix log.
Configuration Reference
| Option |
Default |
Description |
ldb_enable_query_fix |
1 (enabled) |
Normalizes WP_Query array args from strings via pre_get_posts |
ldb_enable_ld_filter_fix |
1 (enabled) |
Normalizes args via ld_before_course_list_query_args filter |
ldb_enable_shortcode_guard |
1 (enabled) |
Wraps Breakdance shortcode SSR output in error recovery buffer |
ldb_enable_debug_log |
0 (disabled) |
Logs normalization events to the WordPress debug log |
Troubleshooting
Site still shows fatal error after activation
If the site is completely down, you may not be able to activate via WP Admin. Activate by renaming the plugin folder to trigger WordPress auto-deactivation of the broken plugin, then re-upload and rename back, and activate this compatibility plugin before re-activating LearnDash or Breakdance.
Course list shortcodes showing no results
The normalization filters cast all IDs to integers using intval(). Verify that the IDs you are passing to the shortcode attributes are numeric. Non-numeric values will become 0 and silently exclude those posts.
Debug log location
Enable WP_DEBUG_LOG in wp-config.php and turn on the debug log option in plugin settings. Normalization events will appear in wp-content/debug.log prefixed with [LDB].
FAQ
Will this plugin work without LearnDash active?
Yes. All hooks check for the presence of relevant functions or plugins before acting. The plugin is safe to leave active even if LearnDash is deactivated.
Will this plugin work without Breakdance active?
Yes, same as above. The Breakdance-specific guards only hook in when Breakdance classes are detected.
Do I still need to update LearnDash?
Yes — this plugin is a compatibility shim, not a permanent replacement for keeping plugins up to date. Update LearnDash as soon as an update is available that addresses these issues.