[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fTlxqk395FFDnFLkrdUYjFro1OsUfFf9NY61QHsN08lQ":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":24,"download_link":25,"security_score":26,"vuln_count":27,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30,"vulnerabilities":31,"developer":129,"crawl_stats":37,"alternatives":136,"analysis":163,"fingerprints":1197},"edwiser-bridge","Edwiser Bridge – WordPress Moodle Integration","4.3.3","WisdmLabs","https:\u002F\u002Fprofiles.wordpress.org\u002Fwisdmlabs\u002F","\u003Cp>Edwiser Bridge the #1 Moodle WordPress Integration Plugin to seamlessly connect, synchronize, and sell Moodle courses through WooCommerce. This powerful WordPress Moodle plugin provides robust integration between WordPress and Moodle LMS, enabling automated course sales, user synchronization, and seamless learning management across both platforms. Get complete two-way synchronization between your WordPress website and Moodle LMS, making this the most comprehensive WordPress Moodle plugin available.\u003C\u002Fp>\n\u003Cp>\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FAf4BIhN1kV8?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch3>Edwiser Bridge – The #1 WordPress and Moodle Integration plugin to sell Moodle courses online.\u003C\u002Fh3>\n\u003Ch3>How to integrate WordPress with Moodle?\u003C\u002Fh3>\n\u003Cp>This comprehensive setup guide ensures proper WordPress Moodle integration:\u003C\u002Fp>\n\u003Ch3>WordPress Moodle Integration – WordPress Side Setup\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Install the Edwiser Bridge WordPress Moodle plugin from the WordPress repository\u003C\u002Fli>\n\u003Cli>Configure integration settings for seamless Moodle WordPress connectivity\u003C\u002Fli>\n\u003Cli>Set up WooCommerce integration for course selling (optional)\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>WordPress Moodle Integration – Moodle Side Setup\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Download and install the companion Moodle plugin for complete WordPress Moodle integration\u003C\u002Fli>\n\u003Cli>Configure integration settings for seamless Moodle WordPress connectivity\u003C\u002Fli>\n\u003Cli>Test the WordPress Moodle integration connection\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Cstrong>Are you a Moodle user, who creates courses and wants a robust integration with WordPress\u002FWooCommerce to sell them?\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Then you are in the right place. Edwiser Bridge is the only WordPress plugin that provides stable and robust integration between the two platforms.\u003C\u002Fp>\n\u003Cp>Edwiser Bridge provides the necessary platform for you to sell your Moodle courses through the default payment gateway, PayPal.\u003C\u002Fp>\n\u003Cp>So to enhance its functionality and achieve a fully automated WooCommerce Solution for the purpose of selling your Moodle courses, you may consider choosing Edwiser Bridge Pro to be installed on both your Moodle and WordPress sites.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fedwiser.org\u002Fplugins\u002Fedwiserbridge.zip\" rel=\"nofollow ugc\">Edwiser Bridge – Moodle Add On\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fedwiser.org\u002Fbridge-wordpress-moodle-integration\u002F?utm_source=wordpress&utm_medium=landingpage&utm_campaign=EBFreePlugin\" rel=\"nofollow ugc\">Edwiser Bridge Pro: Best Moodle plugin to Sell Moodle Courses\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fedwiser.org\u002Fbridge-wordpress-moodle-integration\u002F#viewdemo\" rel=\"nofollow ugc\">Demo\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fedwiser.org\u002Fdocumentation\u002Fedwiser-bridge\u002F\" rel=\"nofollow ugc\">Docs\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fplaylist?list=PLPepcuzJD_712WfstyW4Vo7OGpkzeRocV\" rel=\"nofollow ugc\">Video Tutorials\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fedwiser.org\u002Fcontact-us\u002F\" rel=\"nofollow ugc\">Contact Us\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwww.facebook.com\u002Fgroups\u002FMoodleTipsNTricks\u002F\" rel=\"nofollow ugc\">Community\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>📈 Edwiser Bridge Free Features –\u003C\u002Fh3>\n\u003Ch3>\u003Cstrong>📚 CourseFront:\u003C\u002Fstrong>\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>Course Integration:\u003C\u002Fstrong> Integration between your WordPress and Moodle sites\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Multi-Site Connection:\u003C\u002Fstrong> Connect Moodle with multiple WordPress sites\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Multiple Sales Channels:\u003C\u002Fstrong> Courses from a single Moodle site could be sold through multiple WordPress sites\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Course Import:\u003C\u002Fstrong> Import your Moodle courses to WordPress\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Category Synchronization:\u003C\u002Fstrong> Synchronize Moodle course categories to WordPress\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Course Drafts:\u003C\u002Fstrong> Set the Moodle courses as drafts\u003C\u002Fli>\n\u003Cli>\u003Cstrong>PayPal Integration:\u003C\u002Fstrong> Sell courses through WordPress and take payments through PayPal\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Enrollment Synchronization:\u003C\u002Fstrong> Synchronize enrolled course data for users\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Image Synchronization:\u003C\u002Fstrong> Synchronize Moodle course images with WordPress\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Automated Synchronization:\u003C\u002Fstrong> Automated 2-way synchronization between each WordPress site and your Moodle site\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Real-Time Progress:\u003C\u002Fstrong> The course progress of students is synced from Moodle to WordPress in real-time\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>\u003Cstrong>🔐 Course Access Control:\u003C\u002Fstrong>\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>Automated Registration:\u003C\u002Fstrong> Automation user registration in Moodle\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Registration Control:\u003C\u002Fstrong> Enable\u002FDisable registration for courses\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Identical Credentials:\u003C\u002Fstrong> Identical login credentials to access courses in Moodle\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Access Time Control:\u003C\u002Fstrong> Set course access time from WordPress\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Update Courses:\u003C\u002Fstrong> Update previously synchronized courses\u003C\u002Fli>\n\u003Cli>\u003Cstrong>User Management:\u003C\u002Fstrong> Enroll \u002F Unenroll users from WordPress\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Refund Processing:\u003C\u002Fstrong> Provide refunds to your students from WordPress\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>\u003Cstrong>🌍 Connect your Moodle with Multiple WordPress Sites:\u003C\u002Fstrong>\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>Multi-Site Connection:\u003C\u002Fstrong> Now connect a single Moodle site with multiple WordPress sites\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Expanded Sales Channels:\u003C\u002Fstrong> Courses from a single Moodle site could be sold through multiple WordPress sites\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Two-Way Synchronization:\u003C\u002Fstrong> Automated 2-way synchronization between each WordPress site and your Moodle site\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Secure Information Transfer:\u003C\u002Fstrong> Secured and efficient transfer of information across sites\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Real-Time Progress Tracking:\u003C\u002Fstrong> The course progress of students is synced from Moodle to WordPress in real-time\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>🏆 Edwiser Bridge Pro Features:\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>WooCommerce Integration:\u003C\u002Fstrong> If you wish to create a complete WooCommerce shopfront to sell your Moodle courses.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Multiple Payment Gateways:\u003C\u002Fstrong> If you want to sell your courses through payment gateways other than PayPal.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Automatic Invoicing:\u003C\u002Fstrong> If you want to create purchase invoices automatically for your course buyers.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Add-On Products:\u003C\u002Fstrong> If you wish to sell an add-on product along with your Moodle course.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Seamless Access:\u003C\u002Fstrong> When you want to provide seamless access between your Course Shopfront and Moodle LMS.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Corporate Sales:\u003C\u002Fstrong> If you sell your courses to companies.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Expanded Payment Options:\u003C\u002Fstrong> If you are interested in integrating with WooCommerce, a popular e-commerce solution in WordPress, this will allow you to sell your Moodle courses through more than 160 payment gateways.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Subscription Selling:\u003C\u002Fstrong> Courses could be sold through subscriptions with ready integration with the WooCommerce Subscriptions add-on.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Course Variations\u003C\u002Fstrong>: Ability to set variations on courses and sell them through your store.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Course Bundling:\u003C\u002Fstrong> Ability to bundle multiple courses as a single product or multiple products under a single product.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Bulk Purchasing:\u003C\u002Fstrong> When coupled with the WooCommerce Integration extension, your course buyers could then purchase multiple courses at once.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Multiple Enrollments:\u003C\u002Fstrong> Course Buyers could also enroll multiple students in the purchased course,\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Cohort Creation:\u003C\u002Fstrong> Cohorts are created for each purchase made by the course buyer.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>\u003Cstrong>Checkout \u003Ca href=\"https:\u002F\u002Fedwiser.org\u002Fbridge-wordpress-moodle-integration\u002F?utm_source=wordpress&utm_medium=landingpage&utm_campaign=EBFreePlugin\" rel=\"nofollow ugc\">Edwiser Bridge Pro\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fh3>\n\u003Ch3>Why Choose Edwiser Bridge for Moodle WordPress Integration?\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>✅ Complete WordPress Moodle Integration Solution\u003C\u002Fstrong>\u003Cbr \u002F>\nUnlike basic Moodle WordPress plugins, Edwiser Bridge provides comprehensive two-way synchronization, automated user management, and seamless course delivery across both platforms.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🚀 Boost Course Sales with WordPress Power\u003C\u002Fstrong>\u003Cbr \u002F>\nLeverage WordPress’s SEO capabilities and extensive plugin ecosystem to market your Moodle courses more effectively than standalone LMS solutions.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🔒 Enterprise-Grade WordPress Moodle Integration\u003C\u002Fstrong>\u003Cbr \u002F>\nTrusted by educational institutions and businesses worldwide, this WordPress Moodle plugin handles complex multi-site scenarios and high-volume course sales.\u003C\u002Fp>\n\u003Ch3>\u003Cstrong>Other Edwiser products:\u003C\u002Fstrong>\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fedwiser.org\u002Fremui-moodle-theme\u002F?utm_source=WordPress&utm_medium=landingpage&utm_campaign=EBFreePlugin\" rel=\"nofollow ugc\">Moodle Theme – Edwiser RemUI\u003C\u002Fa>\u003C\u002Fstrong>: The Best theme for Moodle is built to provide a superior user experience in Moodle.\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fedwiser.org\u002Fforms\u002F?utm_source=WordPress&utm_medium=landingpage&utm_campaign=EBFreePlugin\" rel=\"nofollow ugc\">Edwiser Forms\u003C\u002Fa>\u003C\u002Fstrong>: An easy-to-use tool that lets you create any form in Moodle using a drag and drop interface.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fedwiser.org\u002Fsite-monitor\u002F?utm_source=WordPress&utm_medium=landingpage&utm_campaign=EBFreePlugin\" rel=\"nofollow ugc\">Edwiser Site Monitor\u003C\u002Fa>\u003C\u002Fstrong>: A free plugin that helps you manage your Moodle site performance right from the admin dashboard of Moodle.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fedwiser.org\u002Fcourse-formats\u002F?utm_source=WordPress&utm_medium=landingpage&utm_campaign=EBFreePlugin\" rel=\"nofollow ugc\">Edwiser Course Formats\u003C\u002Fa>\u003C\u002Fstrong>: A free plugin that provides you with two distinct course formats for your Moodle courses.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fedwiser.org\u002Freports\u002F?utm_source=WordPress&utm_medium=landingpage&utm_campaign=EBFreePlugin\" rel=\"nofollow ugc\">Edwiser Reports\u003C\u002Fa>\u003C\u002Fstrong>: A powerful tool that can help you improve your Moodle LMS with advanced reporting capabilities.\u003C\u002Fli>\n\u003C\u002Ful>\n","Edwiser Bridge integrates WordPress with Moodle LMS & provides an easy option to import and sell Moodle courses using WordPress.",5000,200786,90,82,"2026-02-17T18:48:00.000Z","6.9.4","6.0","",[20,21,22,23],"lms-integration","moodle-wordpress-integration","sell-moodle-courses","wordpress-moodle-plugin","https:\u002F\u002Fedwiser.org\u002Fbridge-wordpress-moodle-integration\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fedwiser-bridge.4.3.3.zip",83,7,0,"2026-01-21 00:00:00","2026-03-15T15:16:48.613Z",[32,47,62,76,85,101,115],{"id":33,"url_slug":34,"title":35,"description":36,"plugin_slug":4,"theme_slug":37,"affected_versions":38,"patched_in_version":6,"severity":39,"cvss_score":40,"cvss_vector":41,"vuln_type":42,"published_date":29,"updated_date":43,"references":44,"days_to_patch":46},"CVE-2026-24570","edwiser-bridge-missing-authorization","Edwiser Bridge \u003C= 4.3.2 - Missing Authorization","The Edwiser Bridge plugin for WordPress is vulnerable to unauthorized access due to a missing capability check on a function in versions up to, and including, 4.3.2. This makes it possible for authenticated attackers, with subscriber-level access and above, to perform an unauthorized action.",null,"\u003C=4.3.2","medium",4.3,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:L\u002FUI:N\u002FS:U\u002FC:N\u002FI:L\u002FA:N","Missing Authorization","2026-02-24 18:41:19",[45],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002Fd5a4e980-afb7-416d-baa6-b8a25c5502b1?source=api-prod",35,{"id":48,"url_slug":49,"title":50,"description":51,"plugin_slug":4,"theme_slug":37,"affected_versions":52,"patched_in_version":53,"severity":39,"cvss_score":54,"cvss_vector":55,"vuln_type":56,"published_date":57,"updated_date":58,"references":59,"days_to_patch":61},"CVE-2025-24593","edwiser-bridge-wordpress-moodle-lms-integration-reflected-cross-site-scripting","Edwiser Bridge – WordPress Moodle LMS Integration \u003C= 3.0.8 - Reflected Cross-Site Scripting","The Edwiser Bridge – WordPress Moodle LMS Integration plugin for WordPress is vulnerable to Reflected Cross-Site Scripting in all versions up to, and including, 3.0.8 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that execute if they can successfully trick a user into performing an action such as clicking on a link.","\u003C=3.0.8","3.1.0",6.1,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:N\u002FUI:R\u002FS:C\u002FC:L\u002FI:L\u002FA:N","Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')","2024-12-25 00:00:00","2025-02-24 16:12:40",[60],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F133c212e-9a9e-4538-a07d-05abac741ad9?source=api-prod",62,{"id":63,"url_slug":64,"title":65,"description":66,"plugin_slug":4,"theme_slug":37,"affected_versions":67,"patched_in_version":68,"severity":39,"cvss_score":69,"cvss_vector":70,"vuln_type":56,"published_date":71,"updated_date":72,"references":73,"days_to_patch":75},"CVE-2024-49311","edwiser-bridge-authenticated-subscriber-stored-cross-site-scripting","Edwiser Bridge \u003C= 3.0.7 - Authenticated (Subscriber+) Stored Cross-Site Scripting","The Edwiser Bridge plugin for WordPress is vulnerable to Stored Cross-Site Scripting in versions up to, and including, 3.0.7 due to insufficient input sanitization and output escaping. This makes it possible for authenticated attackers, with subscriber-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.","\u003C=3.0.7","3.0.8",6.4,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:L\u002FUI:N\u002FS:C\u002FC:L\u002FI:L\u002FA:N","2024-10-15 00:00:00","2024-11-14 16:45:19",[74],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F2a56b6f1-d3f1-4c6b-9657-a25ebc083b9e?source=api-prod",31,{"id":77,"url_slug":78,"title":79,"description":80,"plugin_slug":4,"theme_slug":37,"affected_versions":67,"patched_in_version":68,"severity":39,"cvss_score":69,"cvss_vector":70,"vuln_type":81,"published_date":71,"updated_date":82,"references":83,"days_to_patch":75},"CVE-2024-49312","edwiser-bridge-authenticated-subscriber-server-side-request-forgery","Edwiser Bridge \u003C= 3.0.7 - Authenticated (Subscriber+) Server-Side Request Forgery","The Edwiser Bridge – WordPress Moodle LMS Integration plugin for WordPress is vulnerable to Server-Side Request Forgery in all versions up to, and including, 3.0.7. This makes it possible for authenticated attackers, with Subscriber-level access and above, to make web requests to arbitrary locations originating from the web application which can be used to query and modify information from internal services.","Server-Side Request Forgery (SSRF)","2024-11-14 16:45:05",[84],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F655cd6ec-088f-4610-ae7f-76a959c290af?source=api-prod",{"id":86,"url_slug":87,"title":88,"description":89,"plugin_slug":4,"theme_slug":37,"affected_versions":90,"patched_in_version":91,"severity":92,"cvss_score":93,"cvss_vector":94,"vuln_type":95,"published_date":96,"updated_date":97,"references":98,"days_to_patch":100},"CVE-2024-4186","edwiser-bridge-authentication-bypass-due-to-missing-empty-value-check","Edwiser Bridge \u003C= 3.0.5 - Authentication Bypass due to Missing Empty Value Check","The Edwiser Bridge plugin for WordPress is vulnerable to authentication bypass in versions up to, and including, 3.0.5. This is due to the 'eb_user_email_verification_key' default value is empty, and the not empty check is missing in the 'eb_user_email_verify' function. This makes it possible for unauthenticated attackers to log in as any existing user on the site, such as an administrator, if they have access to the user id. This can only be exploited if the 'Email Verification' setting is enabled.","\u003C=3.0.5","3.0.6","critical",9.8,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:N\u002FUI:N\u002FS:U\u002FC:H\u002FI:H\u002FA:H","Authentication Bypass Using an Alternate Path or Channel","2024-05-06 00:00:00","2024-10-12 18:01:25",[99],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F6969d281-f280-4714-9859-38ac66e9cc60?source=api-prod",160,{"id":102,"url_slug":103,"title":104,"description":105,"plugin_slug":4,"theme_slug":37,"affected_versions":106,"patched_in_version":107,"severity":92,"cvss_score":108,"cvss_vector":109,"vuln_type":110,"published_date":111,"updated_date":112,"references":113,"days_to_patch":27},"CVE-2024-31260","edwiser-bridge-authenticated-administrator-sql-injection","Edwiser Bridge \u003C= 3.0.2 - Authenticated (Administrator+) SQL Injection","The Edwiser Bridge plugin for WordPress is vulnerable to SQL Injection in versions up to, and including, 3.0.2 due to insufficient escaping on the user supplied parameter and lack of sufficient preparation on the existing SQL query.  This makes it possible for authenticated attackers, with administrator-level access and above, to append additional SQL queries into already existing queries that can be used to extract sensitive information from the database.","\u003C=3.0.2","3.0.4",9.1,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:H\u002FUI:N\u002FS:C\u002FC:H\u002FI:H\u002FA:H","Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')","2024-04-05 00:00:00","2024-04-11 16:12:10",[114],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002Fe4fc23cb-e443-4c8e-b1a0-b8eefbb25dae?source=api-prod",{"id":116,"url_slug":117,"title":118,"description":119,"plugin_slug":4,"theme_slug":37,"affected_versions":120,"patched_in_version":121,"severity":39,"cvss_score":40,"cvss_vector":122,"vuln_type":123,"published_date":124,"updated_date":125,"references":126,"days_to_patch":128},"CVE-2021-4399","edwiser-bridge-cross-site-request-forgery-bypass","Edwiser Bridge \u003C= 2.0.6 - Cross-Site Request Forgery Bypass","The Edwiser Bridge plugin for WordPress is vulnerable to Cross-Site Request Forgery in versions up to, and including,2.0.6. This is due to missing or incorrect nonce validation on the user_data_synchronization_initiater(), course_synchronization_initiater(), users_link_to_moodle_synchronization(), connection_test_initiater(), admin_menus(), and subscribe_handler() function. This makes it possible for unauthenticated attackers to perform unauthorized actions via a forged request granted they can trick a site administrator into performing an action such as clicking on a link.","\u003C=2.0.6","2.0.7","CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:N\u002FUI:R\u002FS:U\u002FC:N\u002FI:L\u002FA:N","Cross-Site Request Forgery (CSRF)","2021-06-28 00:00:00","2024-01-22 19:56:02",[127],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F6450dafd-5992-4831-87af-e5e47cc8663e?source=api-prod",939,{"slug":130,"display_name":7,"profile_url":8,"plugin_count":27,"total_installs":131,"avg_security_score":132,"avg_patch_time_days":133,"trust_score":134,"computed_at":135},"wisdmlabs",15130,97,147,77,"2026-04-04T19:05:34.978Z",[137],{"slug":138,"name":139,"version":140,"author":141,"author_profile":142,"description":143,"short_description":144,"active_installs":145,"downloaded":146,"rating":147,"num_ratings":148,"last_updated":149,"tested_up_to":150,"requires_at_least":151,"requires_php":152,"tags":153,"homepage":158,"download_link":159,"security_score":160,"vuln_count":161,"unpatched_count":28,"last_vuln_date":162,"fetched_at":30},"moowoodle","MooWoodle – WordPress Moodle LMS Integration, Sell Moodle Courses via WooCommerce","3.3.6","DualCube","https:\u002F\u002Fprofiles.wordpress.org\u002Fdualcube\u002F","\u003Ch3>MooWoodle – Most Recommended WordPress Moodle LMS Integration Bridge to sell Moodle courses online.\u003C\u002Fh3>\n\u003Cp>MooWoodle is the most recommended Moodle LMS integration plugin for WordPress. It allows you to sell Moodle courses from your WordPress site using WooCommerce and manage everything from course listings to student enrollments with ease.\u003C\u002Fp>\n\u003Cp>Designed for instructors, educational institutions, and LMS developers, MooWoodle connects Moodle and WordPress seamlessly—giving you the best of both platforms. With this powerful LMS integration plugin, you can sell Moodle LMS courses, sync course data, and enroll users automatically upon purchase.\u003C\u002Fp>\n\u003Cp>Whether you’re building a small learning portal or a large eLearning marketplace, MooWoodle makes Moodle WordPress integration simple, scalable, and efficient.\u003C\u002Fp>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FfL7wPVYopTU?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Cp>🌐 Explore our  \u003Cstrong>\u003Ca href=\"https:\u002F\u002Fdualcube.com\u002Fdocs\u002Fmoowoodle-pro\u002F?utm_source=wporg&utm_medium=plugindescription&utm_campaign=moowoodlewporg\" rel=\"nofollow ugc\">Documentation\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>👉 Learn More About \u003Cstrong>\u003Ca href=\"https:\u002F\u002Fdualcube.com\u002Fproduct\u002Fmoowoodle-pro\u002F?utm_source=wporg&utm_medium=plugindescription&utm_campaign=moowoodlewporg\" rel=\"nofollow ugc\">MooWoodle (PRO)\u003C\u002Fa>\u003C\u002Fstrong>\u003Cbr \u002F>\n👉 View Live Demo :\u003C\u002Fp>\n\u003Cp>➡️ \u003Cstrong>\u003Ca href=\"http:\u002F\u002Fdemo.dualcube.com\u002Fmoowoodle\u002Fwp-admin\" rel=\"nofollow ugc\">WordPress\u003C\u002Fa>\u003C\u002Fstrong>\u003Cbr \u002F>\n➡️ \u003Cstrong>\u003Ca href=\"http:\u002F\u002Fdemo.dualcube.com\u002Fmoodledemo\u002Flogin\u002Findex.php\" rel=\"nofollow ugc\">Moodle\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch3>✌️ Benefits\u003C\u002Fh3>\n\u003Cp>Take your eLearning platform to the next level with MooWoodle. Below are some of the key benefits that make MooWoodle a must-have for instructors, course creators, and education-based businesses.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>💰 Sell courses via WordPress & WooCommerce, and deliver via Moodle.\u003C\u002Fli>\n\u003Cli>🎓 Easily create and manage courses.\u003C\u002Fli>\n\u003Cli>\u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">↔\u003C\u002Fspan>️ Synchronize your courses between WordPress Moodle.\u003C\u002Fli>\n\u003Cli>📚 Automatically enroll students in courses upon successful Payment.\u003C\u002Fli>\n\u003Cli>💲 Boost income with group, variation, or individual course sales. [PRO]\u003C\u002Fli>\n\u003Cli>💰 Maximize earnings with bundled, varied, or individual courses.[PRO]\u003C\u002Fli>\n\u003Cli>🗂️ Category-Based Course Synchronization. [PRO]\u003C\u002Fli>\n\u003Cli>🎯 Select courses for synchronization with flexibility. [PRO]\u003C\u002Fli>\n\u003Cli>✅ Easily enroll or remove users into courses from WordPress itself. [PRO]\u003C\u002Fli>\n\u003Cli>💸 Conveniently provide student refunds through WordPress.[PRO]\u003C\u002Fli>\n\u003Cli>🖼️ Effortlessly sync Moodle course images to your WordPress.[PRO]\u003C\u002Fli>\n\u003Cli>🔄 Sync users in real-time between Moodle and WordPress.[PRO]\u003C\u002Fli>\n\u003Cli>✍️ Specify the user information (Username, Password, First Name, Last Name) for synchronization. [PRO]\u003C\u002Fli>\n\u003Cli>🎁 Gift Courses – Let users buy Moodle courses for friends or peers.\u003C\u002Fli>\n\u003Cli>👥 Classroom Mode – Purchase multiple seats and assign Moodle course \u002F cohort \u002F groups to others via WordPress.\u003C\u002Fli>\n\u003Cli>🧑‍🏫 Cohort Products – Automatically enroll users into Moodle LMS cohorts.\u003C\u002Fli>\n\u003Cli>🧩 Group by Variations – Let variation selection control Moodle group enrollment.\u003C\u002Fli>\n\u003Cli>🔄 Custom User Sync – Sync Moodle WordPress users with real-time updates.\u003C\u002Fli>\n\u003Cli>🌍 WPML Support – Deliver multilingual courses with global reach\u003C\u002Fli>\n\u003Cli>🔔 WooCommerce Subscription Support – Sell recurring course access\u003C\u002Fli>\n\u003Cli>📦 WooCommerce Bundle Support – Package multiple courses together\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>✌️ MooWoodle is the smart choice for:\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>🎓 Educators and institutions already using Moodle who want to leverage WordPress to reach a broader audience.\u003C\u002Fli>\n\u003Cli>🛒 Site owners who prefer WooCommerce for eCommerce but still rely on Moodle for course delivery.\u003C\u002Fli>\n\u003Cli>🔧 Developers and agencies looking to offer powerful WordPress Moodle integration for client projects.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>👉 Listen to What People Have to Say:\u003C\u002Fp>\n\u003Cp>🙆I had the pleasure of working with Ria to get Woomoodle connected, and I couldn’t be more impressed. Watching the courses sync was amazing. I’m thrilled about the capabilities of this powerful application and deeply impressed –ruthzitaruane\u003C\u002Fp>\n\u003Cp>🙆Just migrated from edwiser bridge to MooWoodle. The support team is always there to help you.– romastienfield\u003C\u002Fp>\n\u003Ch3>➡️ Key Features\u003C\u002Fh3>\n\u003Cp>Explore the powerful features that make MooWoodle the ideal bridge between Moodle WordPress. From course integration to user sync between WordPress Moodle and WooCommerce support—everything you need to manage and sell courses effortlessly.\u003C\u002Fp>\n\u003Cp>🚀 \u003Cstrong>Course Integration\u003C\u002Fstrong>: Showcase Moodle courses directly on your WordPress site, making it easy for students to discover and enroll in courses without leaving your website. \u003Ca href=\"https:\u002F\u002Fdualcube.com\u002Fdocs\u002Fmoowoodle-set-up-guide\u002F#11-toc-title?utm_source=wporg&utm_medium=plugindescription&utm_campaign=moowoodlewporg\" rel=\"nofollow ugc\">Check for more details\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>📋 \u003Cstrong>Enrollment Management\u003C\u002Fstrong>: Effortlessly manage course enrollments right within WordPress, reducing administrative complexity and enhancing the enrollment process via automation. Check for \u003Ca href=\"https:\u002F\u002Fdualcube.com\u002Fdocs\u002Fmoowoodle-set-up-guide\u002F#7-toc-title?utm_source=wporg&utm_medium=plugindescription&utm_campaign=moowoodlewporg\" rel=\"nofollow ugc\">more details\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>🔄 \u003Cstrong>User Synchronization\u003C\u002Fstrong>: Say goodbye to duplicate user management. MooWoodle keeps your user profiles in sync between Moodle WordPress, reducing administrative overhead. \u003Ca href=\"https:\u002F\u002Fdualcube.com\u002Fdocs\u002Fmoowoodle-set-up-guide\u002F#8-toc-title?utm_source=wporg&utm_medium=plugindescription&utm_campaign=moowoodlewporg\" rel=\"nofollow ugc\">Check for more details\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>💳 \u003Cstrong>WooCommerce Integration\u003C\u002Fstrong>: If you’re using WooCommerce for e-commerce on your WordPress site, MooWoodle integrates seamlessly. This allows you to sell Moodle courses through your WooCommerce store, manage orders, and provide access to enrolled users. \u003Ca href=\"https:\u002F\u002Fdualcube.com\u002Fdocs\u002Fmoowoodle-set-up-guide\u002F?utm_source=wporg&utm_medium=plugindescription&utm_campaign=moowoodlewporg\" rel=\"nofollow ugc\">Check for more details\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>📊 \u003Cstrong>Bulk Actions\u003C\u002Fstrong>: You can perform bulk actions such as enrolling multiple users in courses, updating user profiles, and more, saving time on administrative tasks.\u003C\u002Fp>\n\u003Cp>📧 \u003Cstrong>Notifications\u003C\u002Fstrong>: MooWoodle can send email notifications to users for course updates, enrollments, and other events, keeping them informed and engaged.\u003C\u002Fp>\n\u003Cp>🌍 \u003Cstrong>Multilingual Support\u003C\u002Fstrong>: It offers multilingual support, making it suitable for websites with a global audience.\u003C\u002Fp>\n\u003Cp>💳 \u003Cstrong>WooCommerce Payment Gateway\u003C\u002Fstrong>: Choose any WooCommerce payment method that suits your requirements to accept payments from students.\u003C\u002Fp>\n\u003Cp>🖥️ \u003Cstrong>User-Friendly Interface\u003C\u002Fstrong>: MooWoodle offers an intuitive and user-friendly interface, making integration straightforward for users of all technical levels.\u003C\u002Fp>\n\u003Cp>🎨 \u003Cstrong>Customizable Solution\u003C\u002Fstrong>: MooWoodle is customizable, allowing you to match the design and style of your Moodle courses with your WordPress site for a cohesive user experience.\u003C\u002Fp>\n\u003Ch3>➡️ Upgrade to \u003Ca href=\"https:\u002F\u002Fdualcube.com\u002Fproduct\u002Fmoowoodle-pro\u002F?utm_source=wporg&utm_medium=plugindescription&utm_campaign=moowoodlewporg\" rel=\"nofollow ugc\">MooWoodle Pro\u003C\u002Fa> for Enhanced Features:\u003C\u002Fh3>\n\u003Cp>Take your eLearning game up a notch— \u003Ca href=\"https:\u002F\u002Fdualcube.com\u002Fproduct\u002Fmoowoodle-pro\u002F?utm_source=wporg&utm_medium=plugindescription&utm_campaign=moowoodlewporg\" rel=\"nofollow ugc\">MooWoodle Pro\u003C\u002Fa> brings smarter WordPress Moodle integration, exclusive LMS tools, and powerful perks tailored for instructors and growing learning platforms.\u003C\u002Fp>\n\u003Cp>🚪 \u003Cstrong>Single Sign-On (SSO) [PRO]\u003C\u002Fstrong>: When you log in or log out of either Moodle™ or WordPress, the other platform automatically follows suit. Say goodbye to login hassles as your learners can effortlessly access both Moodle™ and WordPress with the same user profile, saving time and reducing the need for login-related support. \u003Ca href=\"https:\u002F\u002Fdualcube.com\u002Fdocs\u002Fsingle-sign-on\u002F?utm_source=wporg&utm_medium=plugindescription&utm_campaign=moowoodlewporg\" rel=\"nofollow ugc\">Check for more details\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>🔍 \u003Cstrong>Advanced Course Filtering [PRO]\u003C\u002Fstrong>: MooWoodle Pro allows you to filter courses by a variety of criteria, such as category, instructor, and price. This can be helpful for users who are looking for specific courses. \u003Ca href=\"https:\u002F\u002Fdualcube.com\u002Fdocs\u002Fmoowoodle-set-up-guide\u002F#8-toc-title?utm_source=wporg&utm_medium=plugindescription&utm_campaign=moowoodlewporg\" rel=\"nofollow ugc\">Check for more details\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>🚀 \u003Cstrong>Simplify Your Course Management [PRO]\u003C\u002Fstrong>: Boost productivity by easily managing multiple courses at once, including transfers to WordPress and student enrollments.\u003C\u002Fp>\n\u003Cp>💼 \u003Cstrong>Flexible Subscription Plans [PRO]\u003C\u002Fstrong>: Create subscription-based courses with varied access levels and pricing options, making it cost-effective and adaptable for diverse learning needs.\u003C\u002Fp>\n\u003Cp>🗂️ \u003Cstrong>Bulk Course Management [PRO]\u003C\u002Fstrong>: Increase productivity by using bulk course management features to manage multiple course management tasks simultaneously. With the help of this feature, you can handle multiple course transfers to WordPress, multiple student enrollments, and other similar tasks all at once.\u003C\u002Fp>\n\u003Cp>🔄 \u003Cstrong>Variations on Courses [PRO]\u003C\u002Fstrong>: Offering course variations with the option to sell them through your online store with the help of WooCommerce Subscription.\u003C\u002Fp>\n\u003Cp>💲 \u003Cstrong>Multiple Pricing Models [PRO]\u003C\u002Fstrong>: MooWoodle Integration supports various pricing models, including one-time payments, subscriptions, and memberships. This flexibility allows you to offer courses in a way that best suits your business model.\u003C\u002Fp>\n\u003Cp>👥 \u003Cstrong>Real-Time User Synchronization [PRO]\u003C\u002Fstrong>: Seamlessly sync users, whether from Moodle to WordPress or vice versa. This feature ensures users have unified access across both Moodle WordPress platforms, eliminating the need for separate accounts.\u003C\u002Fp>\n\u003Cp>👥 \u003Cstrong>Classroom Enrollment [PRO]\u003C\u002Fstrong>: Enables users to buy multiple seats of a Moodle course \u002F cohort \u002F groups and assign them to students or team members via the WordPress Learning Hub. It’s ideal for organizations running classroom sessions or corporate learning programs. \u003Ca href=\"https:\u002F\u002Fdualcube.com\u002Fdocs\u002Fmoowoodle-set-up-guide\u002F#12-toc-title?utm_source=wporg&utm_medium=plugindescription&utm_campaign=moowoodlewporg\" rel=\"nofollow ugc\">Check for more details\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>🧑‍🏫 \u003Cstrong>Cohort Enrollment [PRO]\u003C\u002Fstrong>: Lets you sell access to Moodle cohorts by connecting them to WooCommerce products. Upon purchase, students or teams are enrolled into the respective Moodle cohort. You can also sell multiple seats for a cohort and assign users to it via the Learning Hub. \u003Ca href=\"https:\u002F\u002Fdualcube.com\u002Fdocs\u002Fmoowoodle-set-up-guide\u002F#20-toc-title?utm_source=wporg&utm_medium=plugindescription&utm_campaign=moowoodlewporg\" rel=\"nofollow ugc\">Check for more details\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>🎁 \u003Cstrong>Gift a Course [PRO]\u003C\u002Fstrong> :  Allow WooCommerce customers to purchase Moodle courses as gifts. During checkout, they can enter recipient details so the access is assigned to the gifted user. A thoughtful way to boost course sharing. \u003Ca href=\"https:\u002F\u002Fdualcube.com\u002Fdocs\u002Fmoowoodle-set-up-guide\u002F#14-toc-title?utm_source=wporg&utm_medium=plugindescription&utm_campaign=moowoodlewporg\" rel=\"nofollow ugc\">Check for more details\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>👥 \u003Cstrong>Group Enrollment via Variations [PRO]\u003C\u002Fstrong>: Allows course variations (such as beginner, advanced, or different instructors) to be mapped to Moodle groups. When a specific variation is chosen during purchase, the student is automatically placed in the corresponding Moodle group.\u003C\u002Fp>\n\u003Cp>👉 Learn More About \u003Ca href=\"https:\u002F\u002Fdualcube.com\u002Fproduct\u002Fmoowoodle-pro\u002F?utm_source=wporg&utm_medium=plugindescription&utm_campaign=moowoodlewporg\" rel=\"nofollow ugc\">MooWoodle (PRO)\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>👉 Explore more of our \u003Ca href=\"https:\u002F\u002Fdualcube.com\u002Fmoodle-plugins-themes\u002F?utm_source=wporg&utm_medium=plugindescription&utm_campaign=moowoodlewporg\" rel=\"nofollow ugc\">Moodle LMS Products\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>➡️ MooWoodle Settings\u003C\u002Fh3>\n\u003Cp>MooWoodle Settings offers complete control over course listings, user enrollments, display preferences, and powerful WordPress Moodle LMS tools for seamless eLearning management.\u003C\u002Fp>\n\u003Cp>📚 \u003Cstrong>Complete Course Listing\u003C\u002Fstrong>: The “All Courses” tab allows administrators to conveniently access and oversee all courses, including their essential details such as categories, start dates, enrolled users, and more. Moreover, with the Pro version, you have the flexibility to manage courses on an individual basis or in bulk, including updating course details and images. \u003Ca href=\"https:\u002F\u002Fdualcube.com\u002Fdocs\u002Fmoowoodle-set-up-guide\u002F#6-toc-title?utm_source=wporg&utm_medium=plugindescription&utm_campaign=moowoodlewporg\" rel=\"nofollow ugc\">Check for more details\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>📈 \u003Cstrong>Enrollment Insights [PRO]\u003C\u002Fstrong>: The All Enrollments tab offers administrators a comprehensive view, allowing easy sorting of enrollments by students, courses, and dates for efficient management. \u003Ca href=\"https:\u002F\u002Fdualcube.com\u002Fdocs\u002Fmoowoodle-set-up-guide\u002F#7-toc-title?utm_source=wporg&utm_medium=plugindescription&utm_campaign=moowoodlewporg\" rel=\"nofollow ugc\">Check for more details\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>📺 \u003Cstrong>Course Display Preferences\u003C\u002Fstrong>: This dedicated setting allows administrators to control the locations within the WordPress site where students can access their courses, such as the dashboard, orders, downloads, addresses, and more.\u003C\u002Fp>\n\u003Cp>🚪 \u003Cstrong>Single Sign On (SSO) [PRO]\u003C\u002Fstrong>: Whether you log in or out in Moodle™ or WordPress, the other system mirrors your actions. No more login hassles – learners can seamlessly access both Moodle™ and WordPress with a single user profile, saving time and avoiding login issues. \u003Ca href=\"https:\u002F\u002Fdualcube.com\u002Fdocs\u002Fsingle-sign-on\u002F?utm_source=wporg&utm_medium=plugindescription&utm_campaign=moowoodlewporg\" rel=\"nofollow ugc\">Check for more details\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>🔧 \u003Cstrong>Moodle Test Connection\u003C\u002Fstrong>: This valuable feature verifies the proper configuration of all settings required to establish a connection between Moodle and WordPress. In the event that any settings have been overlooked, it will promptly notify you of the oversight. This allows you to review the log and identify which settings need to be adjusted. \u003Ca href=\"https:\u002F\u002Fdualcube.com\u002Fdocs\u002Fmoowoodle-set-up-guide\u002F?utm_source=wporg&utm_medium=plugindescription&utm_campaign=moowoodlewporg\" rel=\"nofollow ugc\">Check for more details\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>📜 \u003Cstrong>Log File\u003C\u002Fstrong>: Log files are crucial for troubleshooting and debugging purposes. When issues or errors occur during the operation between Moodle WordPress communication, log files can provide detailed information about what went wrong, making it easier for website administrators and developers to identify and resolve the problem. \u003Ca href=\"https:\u002F\u002Fdualcube.com\u002Fdocs\u002Fmoowoodle-set-up-guide\u002F?utm_source=wporg&utm_medium=plugindescription&utm_campaign=moowoodlewporg\" rel=\"nofollow ugc\">Check for more details\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>➡️   \u003Ca href=\"https:\u002F\u002Fdualcube.com\u002Fdocs\u002Fmoowoodle-set-up-guide\u002F#12-toc-title\u002F?utm_source=wporg&utm_medium=plugindescription&utm_campaign=moowoodlewporg\" rel=\"nofollow ugc\">Course Synchronization Options \u003C\u002Fa>. [PRO]\u003C\u002Fh3>\n\u003Cp>Unlock advanced Moodle WordPress course synchronization with MooWoodle Pro—sync categories, create and update products, and transfer course images effortlessly for a cohesive eLearning experience.\u003C\u002Fp>\n\u003Cp>📊 \u003Cstrong>Moodle Course Categories Sync\u003C\u002Fstrong>: Effortlessly synchronize your Moodle course category structure with WordPress category listings.\u003C\u002Fp>\n\u003Cp>🔄 \u003Cstrong>Create and Update Products\u003C\u002Fstrong>: Easily update existing product information using Moodle course data.\u003C\u002Fp>\n\u003Cp>🛒 \u003Cstrong>Create New Products [PRO]\u003C\u002Fstrong>: Automatically generate new products based on Moodle course data if they don’t already exist in WordPress.\u003C\u002Fp>\n\u003Cp>🔄 \u003Cstrong>Update Existing Products [PRO]\u003C\u002Fstrong>: Conveniently update previously created product information using Moodle course data.\u003C\u002Fp>\n\u003Cp>🖼️ \u003Cstrong>Course Images [PRO]\u003C\u002Fstrong>: Copy course images and apply them as WooCommerce product images.\u003C\u002Fp>\n\u003Ch3>➡️   \u003Ca href=\"https:\u002F\u002Fdualcube.com\u002Fdocs\u002Fmoowoodle-set-up-guide\u002F#20-toc-title\u002F?utm_source=wporg&utm_medium=plugindescription&utm_campaign=moowoodlewporg\" rel=\"nofollow ugc\">Cohort Synchronization Options \u003C\u002Fa>. [PRO]\u003C\u002Fh3>\n\u003Cp>Unlock advanced Moodle WordPress cohort synchronization and tcreate corresponding product.\u003C\u002Fp>\n\u003Cp>🔄 \u003Cstrong>Create and Update Products\u003C\u002Fstrong>: Easily update existing product information using Moodle cohort data.\u003C\u002Fp>\n\u003Cp>🛒 \u003Cstrong>Create New Products [PRO]\u003C\u002Fstrong>: Automatically generate new products based on Moodle cohort data if they don’t already exist in WordPress.\u003C\u002Fp>\n\u003Ch3>➡️ \u003Ca href=\"https:\u002F\u002Fdualcube.com\u002Fdocs\u002Fmoowoodle-set-up-guide\u002F#12-toc-title\u002F?utm_source=wporg&utm_medium=plugindescription&utm_campaign=moowoodlewporg\" rel=\"nofollow ugc\">User Synchronization Options \u003C\u002Fa> [PRO]\u003C\u002Fh3>\n\u003Cp>Streamline your Moodle WordPress user management with MooWoodle Pro—sync user data in real-time, control what information is shared, and easily manage existing users across platforms for a seamless eLearning experience.\u003C\u002Fp>\n\u003Cp>🔄 \u003Cstrong>Real-Time User Sync [PRO]\u003C\u002Fstrong>: Automatically sync user data between Moodle and WordPress and vice versa. When adding a new user on one platform, our system instantly syncs their profile to the other.\u003C\u002Fp>\n\u003Cp>🧑‍💻 \u003Cstrong>User Information [PRO]\u003C\u002Fstrong>: Select user details for syncing in WordPress Moodle. Choose info like First Name, Last Name, Username, and Password to sync across platforms.\u003C\u002Fp>\n\u003Cp>👥 \u003Cstrong>Existing Users [PRO]\u003C\u002Fstrong>: Utilize this option to synchronize user data manually between Moodle and WordPress bidirectionally. When adding a new user on one platform, our system instantly syncs their profile to the other. Check for more details.\u003C\u002Fp>\n\u003Cp>Join the ranks of satisfied users who have transformed their e-learning experiences with MooWoodle. Download it now and revolutionize your online education platform!\u003C\u002Fp>\n\u003Cp>Don’t miss out on the opportunity to enhance your e-learning ecosystem. Get started with MooWoodle today!\u003C\u002Fp>\n\u003Ch3>🤝 Contributions\u003C\u002Fh3>\n\u003Cp>This project might have bugs and may be lacking certain features. If you’d like to contribute to this project, your help is greatly appreciated.\u003C\u002Fp>\n\u003Cp>👨‍💻 \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fmultivendorx\u002Fmultivendorx\" rel=\"nofollow ugc\">Please fork the repository from Github\u003C\u002Fa> 👨‍💻\u003C\u002Fp>\n","Moodle LMS integration with WordPress to sell Moodle courses through WooCommerce and automate student enrollment.",800,36943,86,39,"2025-09-25T05:08:00.000Z","6.8.5","6.0.0","8.0",[154,20,155,156,157],"lms","moodle","moodle-wordpress-connect","sell-course","https:\u002F\u002Fdualcube.com\u002F?utm_source=wpadmin&utm_medium=pluginsettings&utm_campaign=moowoodle","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmoowoodle.3.3.6.zip",98,1,"2024-11-16 00:00:00",{"attackSurface":164,"codeSignals":454,"taintFlows":680,"riskAssessment":1179,"analyzedAt":1196},{"hooks":165,"ajaxHandlers":394,"restRoutes":429,"shortcodes":438,"cronEvents":448,"entryPointCount":365,"unprotectedCount":453},[166,172,175,178,181,185,190,194,200,203,206,210,214,219,223,228,234,236,238,240,243,247,251,253,255,257,259,261,264,267,270,273,275,278,280,282,284,288,290,292,296,298,301,305,308,311,314,316,318,321,325,329,333,336,340,342,346,348,351,354,359,363,366,369,373,377,381,385,390],{"type":167,"name":168,"callback":168,"priority":169,"file":170,"line":171},"action","admin_menu",9,"admin\\class-eb-admin-menus.php",30,{"type":167,"name":168,"callback":173,"priority":174,"file":170,"line":75},"settings_menu",10,{"type":167,"name":168,"callback":176,"priority":174,"file":170,"line":177},"email_template",32,{"type":167,"name":168,"callback":179,"priority":174,"file":170,"line":180},"manage_enrollment_menu",33,{"type":167,"name":182,"callback":183,"file":170,"line":184},"admin_footer","open_help_menu_new_tab",34,{"type":167,"name":186,"callback":187,"file":188,"line":189},"eb_settings_footer","\\app\\wisdmlabs\\edwiserBridge\\add_beacon_helpscout_script","admin\\class-eb-admin.php",259,{"type":167,"name":191,"callback":192,"file":188,"line":193},"eb_settings_header","\\app\\wisdmlabs\\edwiserBridge\\add_edwiser_header_content",261,{"type":195,"name":196,"callback":197,"file":198,"line":199},"filter","mce_external_plugins","add_mce_plugin","admin\\class-eb-email-template.php",28,{"type":195,"name":201,"callback":202,"priority":174,"file":198,"line":177},"eb_email_templates_list","eb_add_email_list",{"type":195,"name":204,"callback":205,"priority":174,"file":198,"line":180},"eb_email_template_constant","email_template_constant",{"type":195,"name":207,"callback":208,"priority":209,"file":198,"line":184},"wp_mail_from_name","wp_sender_name",99,{"type":195,"name":211,"callback":212,"file":198,"line":213},"wp_mail_content_type","closure",618,{"type":195,"name":215,"callback":216,"file":217,"line":218},"manage_users_columns","adding_moodle_account_column","admin\\class-eb-moodle-link-unlink.php",26,{"type":195,"name":220,"callback":221,"priority":174,"file":217,"line":222},"manage_users_custom_column","show_content",27,{"type":195,"name":224,"callback":225,"priority":226,"file":227,"line":14},"eb_license_setting_messages","license_messages",15,"admin\\licensing\\class-eb-licensing-manager.php",{"type":195,"name":229,"callback":230,"priority":231,"file":232,"line":233},"eb_settings_tabs_array","add_settings_page",20,"admin\\licensing\\class-licensing-settings.php",53,{"type":195,"name":229,"callback":230,"priority":231,"file":235,"line":148},"admin\\settings\\class-eb-bridge-summary.php",{"type":195,"name":229,"callback":230,"priority":231,"file":237,"line":177},"admin\\settings\\class-eb-error-log.php",{"type":195,"name":229,"callback":230,"priority":231,"file":239,"line":75},"admin\\settings\\class-eb-settings-connection.php",{"type":195,"name":229,"callback":230,"priority":231,"file":241,"line":242},"admin\\settings\\class-eb-settings-dummy.php",101,{"type":195,"name":244,"callback":245,"priority":174,"file":241,"line":246},"eb_get_sections_synchronization","prod_sections",103,{"type":195,"name":248,"callback":249,"priority":174,"file":241,"line":250},"eb_get_settings_synchronization","prod_sync_setting",104,{"type":195,"name":229,"callback":230,"priority":231,"file":241,"line":252},227,{"type":195,"name":229,"callback":230,"priority":231,"file":241,"line":254},338,{"type":195,"name":229,"callback":230,"priority":231,"file":241,"line":256},459,{"type":195,"name":229,"callback":230,"priority":231,"file":258,"line":177},"admin\\settings\\class-eb-settings-general.php",{"type":195,"name":229,"callback":230,"priority":231,"file":260,"line":177},"admin\\settings\\class-eb-settings-help.php",{"type":167,"name":262,"callback":263,"file":260,"line":180},"admin_action_eb_help","helpSubscribeHandler",{"type":195,"name":229,"callback":230,"priority":231,"file":265,"line":266},"admin\\settings\\class-eb-settings-licensing.php",40,{"type":195,"name":229,"callback":230,"priority":231,"file":268,"line":269},"admin\\settings\\class-eb-settings-other-plugins.php",41,{"type":195,"name":229,"callback":230,"priority":231,"file":271,"line":272},"admin\\settings\\class-eb-settings-page.php",42,{"type":195,"name":229,"callback":230,"priority":231,"file":274,"line":177},"admin\\settings\\class-eb-settings-paypal.php",{"type":195,"name":229,"callback":230,"priority":231,"file":276,"line":277},"admin\\settings\\class-eb-settings-pro-featuers.php",89,{"type":195,"name":229,"callback":230,"priority":231,"file":279,"line":177},"admin\\settings\\class-eb-settings-shortcode-doc.php",{"type":195,"name":229,"callback":230,"priority":231,"file":281,"line":177},"admin\\settings\\class-eb-settings-synchronization.php",{"type":195,"name":229,"callback":230,"priority":231,"file":283,"line":269},"admin\\settings\\class-eb-settings-templates.php",{"type":167,"name":285,"callback":286,"priority":169,"file":287,"line":180},"admin_init","eb_setup_wizard_template","admin\\setup-wizard\\class-eb-setup-wizard-functions.php",{"type":167,"name":285,"callback":289,"file":287,"line":184},"eb_setup_steps_save_handler",{"type":167,"name":168,"callback":291,"file":287,"line":46},"admin_menus",{"type":167,"name":293,"callback":294,"file":287,"line":295},"admin_enqueue_scripts","enqueue_scripts",36,{"type":167,"name":285,"callback":297,"file":287,"line":266},"welcome_handler",{"type":195,"name":299,"callback":300,"file":287,"line":272},"eb_send_new_user_email_on_user_sync","eb_setup_send_mail_on_user_sync",{"type":195,"name":302,"callback":303,"priority":174,"file":304,"line":160},"plugin_row_meta","\\app\\wisdmlabs\\edwiserBridge\\wdm_plugin_row_meta","edwiser-bridge.php",{"type":167,"name":285,"callback":306,"file":304,"line":307},"\\app\\wisdmlabs\\edwiserBridge\\process_upgrade",131,{"type":167,"name":309,"callback":212,"file":304,"line":310},"plugins_loaded",215,{"type":167,"name":285,"callback":312,"file":313,"line":171},"check_consent","includes\\analytics\\class-modular-analytics.php",{"type":167,"name":293,"callback":315,"file":313,"line":75},"enqueue_modal_scripts",{"type":167,"name":182,"callback":317,"file":313,"line":177},"set_deactivation_url",{"type":167,"name":319,"callback":320,"file":313,"line":250},"admin_notices","consent_notice",{"type":167,"name":322,"callback":323,"file":313,"line":324},"admin_post_modular_analytics_consent","handle_consent",249,{"type":167,"name":326,"callback":327,"file":328,"line":231},"rest_api_init","eb_register_course_routes","includes\\api\\class-eb-blocks-course-api.php",{"type":167,"name":326,"callback":330,"file":331,"line":332},"eb_register_my_courses_routes","includes\\api\\class-eb-blocks-my-courses-api.php",38,{"type":195,"name":334,"callback":335,"priority":174,"file":331,"line":148},"rest_authentication_errors","eb_rest_authentication_errors",{"type":167,"name":326,"callback":337,"file":338,"line":339},"eb_register_useraccount_routes","includes\\api\\class-eb-blocks-user-account-api.php",21,{"type":195,"name":334,"callback":335,"priority":174,"file":338,"line":341},22,{"type":167,"name":293,"callback":343,"file":344,"line":345},"enqueue_template_modal_assets","includes\\class-eb-admin-notice-handler.php",665,{"type":167,"name":182,"callback":212,"file":344,"line":347},667,{"type":167,"name":293,"callback":349,"file":344,"line":350},"enqueue_update_modal_assets",832,{"type":167,"name":182,"callback":352,"file":344,"line":353},"show_update_modal",833,{"type":167,"name":355,"callback":356,"file":357,"line":358},"init","eb_register_blocks","includes\\class-eb-blocks.php",11,{"type":167,"name":360,"callback":361,"file":357,"line":362},"wp_enqueue_scripts","eb_set_script_translations",12,{"type":167,"name":360,"callback":364,"file":357,"line":365},"eb_woo_storeapi_nonce",13,{"type":167,"name":360,"callback":367,"file":357,"line":368},"eb_enqueue_block_styles_conditionally",14,{"type":195,"name":370,"callback":371,"file":357,"line":372},"should_load_separate_core_block_assets","__return_false",16,{"type":195,"name":374,"callback":375,"priority":174,"file":357,"line":376},"block_type_metadata_settings","eb_prevent_block_style_auto_enqueue",17,{"type":195,"name":378,"callback":379,"file":357,"line":380},"block_categories_all","eb_register_edwiser_category",18,{"type":167,"name":382,"callback":383,"priority":174,"file":357,"line":384},"wp_after_insert_post","handle_block_setting_change",19,{"type":195,"name":386,"callback":387,"file":388,"line":389},"display_post_states","anonymous","includes\\class-eb.php",609,{"type":167,"name":391,"callback":392,"file":388,"line":393},"template_redirect","save_account_details",1378,[395,400,403,406,409,413,416,419,423,427],{"action":396,"nopriv":397,"callback":396,"hasNonce":398,"hasCapCheck":398,"file":287,"line":399},"eb_setup_change_step",false,true,43,{"action":401,"nopriv":397,"callback":401,"hasNonce":398,"hasCapCheck":398,"file":287,"line":402},"eb_setup_course_sync",44,{"action":404,"nopriv":397,"callback":404,"hasNonce":397,"hasCapCheck":397,"file":287,"line":405},"eb_setup_close_setup",45,{"action":407,"nopriv":397,"callback":407,"hasNonce":398,"hasCapCheck":398,"file":287,"line":408},"eb_setup_save_and_continue",46,{"action":410,"nopriv":397,"callback":411,"hasNonce":398,"hasCapCheck":398,"file":287,"line":412},"eb_setup_test_connection","eb_setup_test_connection_handler",47,{"action":414,"nopriv":397,"callback":414,"hasNonce":398,"hasCapCheck":398,"file":287,"line":415},"eb_setup_manage_license",48,{"action":417,"nopriv":397,"callback":417,"hasNonce":398,"hasCapCheck":398,"file":287,"line":418},"eb_setup_validate_license",49,{"action":420,"nopriv":397,"callback":421,"hasNonce":397,"hasCapCheck":397,"file":304,"line":422},"modular_analytics_deactivation_feedback","handle_deactivation_feedback_ajax",217,{"action":424,"nopriv":397,"callback":425,"hasNonce":397,"hasCapCheck":397,"file":304,"line":426},"modular_analytics_dismiss_feedback","handle_dismiss_feedback",218,{"action":428,"nopriv":397,"callback":428,"hasNonce":398,"hasCapCheck":397,"file":357,"line":341},"eb_get_order_details",[430],{"namespace":4,"route":431,"methods":432,"callback":434,"permissionCallback":435,"file":436,"line":437},"\u002Fwisdmlabs\u002F",[433],"GET","external_api_endpoint_def","__return_true","includes\\api\\class-eb-external-api-endpoint.php",25,[439,443],{"tag":440,"callback":441,"file":442,"line":437},"eb_payment_buttons","eb_payment_buttons_shortcode","includes\\payments\\class-eb-payment-manager.php",{"tag":444,"callback":445,"file":446,"line":447},"paypal","eb_enhanced_paypal_shortcode","includes\\payments\\enhanced-paypal-shortcodes.php",967,[449],{"hook":450,"callback":450,"file":451,"line":452},"eb_monthly_usage_tracking","includes\\class-eb-usage-tracking.php",29,4,{"dangerousFunctions":455,"sqlUsage":456,"outputEscaping":486,"fileOperations":380,"externalRequests":218,"nonceChecks":672,"capabilityChecks":218,"bundledLibraries":673},[],{"prepared":457,"raw":358,"locations":458},68,[459,463,465,467,469,471,473,476,478,480,484],{"file":460,"line":461,"context":462},"includes\\class-eb-activator.php",194,"$wpdb->query() with variable interpolation",{"file":460,"line":464,"context":462},195,{"file":460,"line":466,"context":462},198,{"file":460,"line":468,"context":462},199,{"file":460,"line":470,"context":462},202,{"file":460,"line":472,"context":462},203,{"file":451,"line":474,"context":475},109,"$wpdb->get_var() with variable interpolation",{"file":451,"line":477,"context":475},124,{"file":451,"line":479,"context":475},139,{"file":481,"line":482,"context":483},"includes\\class-eb-user-manager.php",153,"$wpdb->get_results() with variable interpolation",{"file":481,"line":485,"context":483},317,{"escaped":487,"rawEcho":277,"locations":488},1581,[489,491,493,496,498,500,502,504,506,508,510,512,515,518,520,522,525,527,529,532,533,535,536,539,541,543,545,547,548,550,552,554,556,558,560,562,564,566,568,570,572,573,575,577,579,581,583,585,586,588,590,592,594,597,599,601,603,606,609,612,614,616,618,621,623,626,628,630,632,634,636,638,640,643,645,647,650,653,655,657,659,661,662,663,664,665,666,667,670],{"file":198,"line":307,"context":490},"raw output",{"file":198,"line":492,"context":490},313,{"file":494,"line":495,"context":490},"admin\\class-eb-settings-ajax-initiater.php",78,{"file":494,"line":497,"context":490},102,{"file":494,"line":499,"context":490},126,{"file":494,"line":501,"context":490},152,{"file":494,"line":503,"context":490},502,{"file":494,"line":505,"context":490},565,{"file":494,"line":507,"context":490},617,{"file":494,"line":509,"context":490},673,{"file":494,"line":511,"context":490},717,{"file":513,"line":514,"context":490},"admin\\class-eb-welcome.php",244,{"file":516,"line":517,"context":490},"admin\\licensing\\html-licensing.php",88,{"file":516,"line":519,"context":490},188,{"file":516,"line":521,"context":490},190,{"file":523,"line":524,"context":490},"admin\\partials\\html-gutenberg-templates.php",73,{"file":523,"line":526,"context":490},121,{"file":523,"line":528,"context":490},183,{"file":530,"line":531,"context":490},"admin\\partials\\html-pro-featuers.php",37,{"file":530,"line":132,"context":490},{"file":530,"line":534,"context":490},119,{"file":235,"line":524,"context":490},{"file":537,"line":538,"context":490},"admin\\setup-wizard\\class-eb-setup-wizard-templates.php",120,{"file":537,"line":540,"context":490},286,{"file":537,"line":542,"context":490},287,{"file":537,"line":544,"context":490},288,{"file":537,"line":546,"context":490},829,{"file":537,"line":353,"context":490},{"file":537,"line":549,"context":490},1063,{"file":537,"line":551,"context":490},1121,{"file":537,"line":553,"context":490},1141,{"file":537,"line":555,"context":490},1144,{"file":537,"line":557,"context":490},1385,{"file":537,"line":559,"context":490},1400,{"file":537,"line":561,"context":490},1410,{"file":537,"line":563,"context":490},1420,{"file":537,"line":565,"context":490},1494,{"file":537,"line":567,"context":490},1669,{"file":537,"line":569,"context":490},1687,{"file":571,"line":372,"context":490},"blocks\\src\\course-description\\render.php",{"file":571,"line":376,"context":490},{"file":344,"line":574,"context":490},116,{"file":344,"line":576,"context":490},225,{"file":344,"line":578,"context":490},278,{"file":344,"line":580,"context":490},335,{"file":344,"line":582,"context":490},336,{"file":344,"line":584,"context":490},337,{"file":344,"line":254,"context":490},{"file":344,"line":587,"context":490},583,{"file":344,"line":589,"context":490},585,{"file":344,"line":591,"context":490},586,{"file":344,"line":593,"context":490},587,{"file":595,"line":596,"context":490},"includes\\class-eb-custom-list-table.php",432,{"file":595,"line":598,"context":490},454,{"file":595,"line":600,"context":490},456,{"file":595,"line":602,"context":490},458,{"file":604,"line":605,"context":490},"includes\\class-eb-enrollment-manager.php",871,{"file":607,"line":608,"context":490},"includes\\class-eb-error-logs-table.php",235,{"file":610,"line":611,"context":490},"includes\\class-eb-manage-enrollment.php",193,{"file":610,"line":613,"context":490},204,{"file":610,"line":615,"context":490},406,{"file":610,"line":617,"context":490},411,{"file":619,"line":620,"context":490},"includes\\class-eb-order-meta.php",134,{"file":619,"line":622,"context":490},324,{"file":624,"line":625,"context":490},"includes\\class-eb-post-types.php",527,{"file":624,"line":627,"context":490},545,{"file":624,"line":629,"context":490},562,{"file":481,"line":631,"context":490},1537,{"file":481,"line":633,"context":490},1538,{"file":481,"line":635,"context":490},1779,{"file":481,"line":637,"context":490},1804,{"file":481,"line":639,"context":490},1914,{"file":641,"line":642,"context":490},"includes\\eb-core-functions.php",1018,{"file":641,"line":644,"context":490},1050,{"file":641,"line":646,"context":490},1089,{"file":648,"line":649,"context":490},"public\\templates\\account\\edit-user-profile.php",52,{"file":651,"line":652,"context":490},"public\\templates\\account\\my-courses.php",57,{"file":651,"line":654,"context":490},61,{"file":651,"line":656,"context":490},66,{"file":658,"line":656,"context":490},"public\\templates\\archive-eb_course_gutenberg.php",{"file":660,"line":376,"context":490},"public\\templates\\course-filters.php",{"file":660,"line":384,"context":490},{"file":660,"line":199,"context":490},{"file":660,"line":171,"context":490},{"file":660,"line":75,"context":490},{"file":660,"line":177,"context":490},{"file":660,"line":180,"context":490},{"file":668,"line":669,"context":490},"public\\templates\\single-eb_course_gutenberg.php",80,{"file":668,"line":671,"context":490},84,87,[674,677],{"name":675,"version":37,"knownCves":676},"Select2",[],{"name":678,"version":37,"knownCves":679},"TinyMCE",[],[681,709,719,768,805,814,823,835,852,868,884,895,908,918,926,938,946,958,968,979,996,1005,1015,1023,1034,1044,1052,1064,1078,1095,1110,1132,1145,1158],{"entryPoint":682,"graph":683,"unsanitizedCount":28,"severity":708},"\u003Cclass-eb-admin-settings> (admin\\class-eb-admin-settings.php:0)",{"nodes":684,"edges":705},[685,691,697,700],{"id":686,"type":687,"label":688,"file":689,"line":690},"n0","source","$_REQUEST (x5)","admin\\class-eb-admin-settings.php",162,{"id":692,"type":693,"label":694,"file":689,"line":695,"wp_function":696},"n1","sink","echo() [XSS]",365,"echo",{"id":698,"type":687,"label":699,"file":689,"line":690},"n2","$_REQUEST",{"id":701,"type":693,"label":702,"file":689,"line":703,"wp_function":704},"n3","update_option() [Settings Manipulation]",858,"update_option",[706,707],{"from":686,"to":692,"sanitized":398},{"from":698,"to":701,"sanitized":398},"low",{"entryPoint":710,"graph":711,"unsanitizedCount":28,"severity":708},"output (admin\\class-eb-email-template.php:69)",{"nodes":712,"edges":717},[713,715],{"id":686,"type":687,"label":714,"file":198,"line":277},"$_GET (x8)",{"id":692,"type":693,"label":694,"file":198,"line":716,"wp_function":696},106,[718],{"from":686,"to":692,"sanitized":398},{"entryPoint":720,"graph":721,"unsanitizedCount":767,"severity":708},"save (admin\\class-eb-email-template.php:459)",{"nodes":722,"edges":758},[723,726,729,731,734,737,740,743,746,749,752,755],{"id":686,"type":687,"label":724,"file":198,"line":725},"$_POST",476,{"id":692,"type":727,"label":728,"file":198,"line":725},"transform","→ set_from_name()",{"id":698,"type":693,"label":702,"file":198,"line":730,"wp_function":704},420,{"id":701,"type":687,"label":732,"file":198,"line":733},"$_POST (x2)",477,{"id":735,"type":727,"label":736,"file":198,"line":733},"n4","→ set_notify_allow()",{"id":738,"type":693,"label":702,"file":198,"line":739,"wp_function":704},"n5",441,{"id":741,"type":687,"label":724,"file":198,"line":742},"n6",478,{"id":744,"type":727,"label":745,"file":198,"line":742},"n7","→ set_template_data()",{"id":747,"type":693,"label":702,"file":198,"line":748,"wp_function":704},"n8",431,{"id":750,"type":687,"label":732,"file":198,"line":751},"n9",479,{"id":753,"type":727,"label":754,"file":198,"line":751},"n10","→ set_bcc_email_address()",{"id":756,"type":693,"label":702,"file":198,"line":757,"wp_function":704},"n11",452,[759,760,761,762,763,764,765,766],{"from":686,"to":692,"sanitized":397},{"from":692,"to":698,"sanitized":397},{"from":701,"to":735,"sanitized":397},{"from":735,"to":738,"sanitized":397},{"from":741,"to":744,"sanitized":397},{"from":744,"to":747,"sanitized":397},{"from":750,"to":753,"sanitized":397},{"from":753,"to":756,"sanitized":397},6,{"entryPoint":769,"graph":770,"unsanitizedCount":767,"severity":708},"\u003Cclass-eb-email-template> (admin\\class-eb-email-template.php:0)",{"nodes":771,"edges":794},[772,773,774,777,778,779,780,781,782,783,784,785,786,788,790,792],{"id":686,"type":687,"label":714,"file":198,"line":277},{"id":692,"type":693,"label":694,"file":198,"line":716,"wp_function":696},{"id":698,"type":687,"label":775,"file":198,"line":776},"$_POST (x3)",298,{"id":701,"type":693,"label":702,"file":198,"line":739,"wp_function":704},{"id":735,"type":687,"label":724,"file":198,"line":725},{"id":738,"type":727,"label":728,"file":198,"line":725},{"id":741,"type":693,"label":702,"file":198,"line":730,"wp_function":704},{"id":744,"type":687,"label":732,"file":198,"line":733},{"id":747,"type":727,"label":736,"file":198,"line":733},{"id":750,"type":693,"label":702,"file":198,"line":739,"wp_function":704},{"id":753,"type":687,"label":724,"file":198,"line":742},{"id":756,"type":727,"label":745,"file":198,"line":742},{"id":787,"type":693,"label":702,"file":198,"line":748,"wp_function":704},"n12",{"id":789,"type":687,"label":732,"file":198,"line":751},"n13",{"id":791,"type":727,"label":754,"file":198,"line":751},"n14",{"id":793,"type":693,"label":702,"file":198,"line":757,"wp_function":704},"n15",[795,796,797,798,799,800,801,802,803,804],{"from":686,"to":692,"sanitized":398},{"from":698,"to":701,"sanitized":398},{"from":735,"to":738,"sanitized":397},{"from":738,"to":741,"sanitized":397},{"from":744,"to":747,"sanitized":397},{"from":747,"to":750,"sanitized":397},{"from":753,"to":756,"sanitized":397},{"from":756,"to":787,"sanitized":397},{"from":789,"to":791,"sanitized":397},{"from":791,"to":793,"sanitized":397},{"entryPoint":806,"graph":807,"unsanitizedCount":28,"severity":708},"course_synchronization_initiater (admin\\class-eb-settings-ajax-initiater.php:64)",{"nodes":808,"edges":812},[809,811],{"id":686,"type":687,"label":724,"file":494,"line":810},72,{"id":692,"type":693,"label":694,"file":494,"line":495,"wp_function":696},[813],{"from":686,"to":692,"sanitized":398},{"entryPoint":815,"graph":816,"unsanitizedCount":28,"severity":708},"connection_test_initiater (admin\\class-eb-settings-ajax-initiater.php:138)",{"nodes":817,"edges":821},[818,820],{"id":686,"type":687,"label":724,"file":494,"line":819},146,{"id":692,"type":693,"label":694,"file":494,"line":501,"wp_function":696},[822],{"from":686,"to":692,"sanitized":398},{"entryPoint":824,"graph":825,"unsanitizedCount":28,"severity":708},"check_course_options (admin\\class-eb-settings-ajax-initiater.php:508)",{"nodes":826,"edges":833},[827,829],{"id":686,"type":687,"label":724,"file":494,"line":828},517,{"id":692,"type":693,"label":830,"file":494,"line":831,"wp_function":832},"get_var() [SQLi]",530,"get_var",[834],{"from":686,"to":692,"sanitized":398},{"entryPoint":836,"graph":837,"unsanitizedCount":161,"severity":708},"license_form_submission_handler (admin\\licensing\\class-licensing-settings.php:222)",{"nodes":838,"edges":848},[839,841,843,845,847],{"id":686,"type":687,"label":732,"file":232,"line":840},223,{"id":692,"type":693,"label":694,"file":232,"line":842,"wp_function":696},253,{"id":698,"type":687,"label":724,"file":232,"line":844},242,{"id":701,"type":727,"label":846,"file":232,"line":844},"→ wdm_install_plugin()",{"id":735,"type":693,"label":702,"file":232,"line":544,"wp_function":704},[849,850,851],{"from":686,"to":692,"sanitized":398},{"from":698,"to":701,"sanitized":397},{"from":701,"to":735,"sanitized":397},{"entryPoint":853,"graph":854,"unsanitizedCount":161,"severity":708},"\u003Cclass-licensing-settings> (admin\\licensing\\class-licensing-settings.php:0)",{"nodes":855,"edges":863},[856,857,858,859,860,861,862],{"id":686,"type":687,"label":732,"file":232,"line":840},{"id":692,"type":693,"label":694,"file":232,"line":842,"wp_function":696},{"id":698,"type":687,"label":724,"file":232,"line":840},{"id":701,"type":693,"label":702,"file":232,"line":544,"wp_function":704},{"id":735,"type":687,"label":724,"file":232,"line":844},{"id":738,"type":727,"label":846,"file":232,"line":844},{"id":741,"type":693,"label":702,"file":232,"line":544,"wp_function":704},[864,865,866,867],{"from":686,"to":692,"sanitized":398},{"from":698,"to":701,"sanitized":398},{"from":735,"to":738,"sanitized":397},{"from":738,"to":741,"sanitized":397},{"entryPoint":869,"graph":870,"unsanitizedCount":883,"severity":708},"save (admin\\settings\\class-eb-settings-templates.php:99)",{"nodes":871,"edges":880},[872,875,876,878],{"id":686,"type":687,"label":873,"file":283,"line":874},"$_POST['eb_enabled_templates']",107,{"id":692,"type":693,"label":702,"file":283,"line":874,"wp_function":704},{"id":698,"type":687,"label":724,"file":283,"line":877},112,{"id":701,"type":693,"label":702,"file":283,"line":879,"wp_function":704},113,[881,882],{"from":686,"to":692,"sanitized":397},{"from":698,"to":701,"sanitized":397},2,{"entryPoint":885,"graph":886,"unsanitizedCount":28,"severity":708},"\u003Cclass-eb-settings-templates> (admin\\settings\\class-eb-settings-templates.php:0)",{"nodes":887,"edges":892},[888,889,890,891],{"id":686,"type":687,"label":873,"file":283,"line":874},{"id":692,"type":693,"label":702,"file":283,"line":874,"wp_function":704},{"id":698,"type":687,"label":724,"file":283,"line":877},{"id":701,"type":693,"label":702,"file":283,"line":879,"wp_function":704},[893,894],{"from":686,"to":692,"sanitized":398},{"from":698,"to":701,"sanitized":398},{"entryPoint":896,"graph":897,"unsanitizedCount":28,"severity":708},"\u003Cclass-eb-setup-wizard-functions> (admin\\setup-wizard\\class-eb-setup-wizard-functions.php:0)",{"nodes":898,"edges":905},[899,900,901,903],{"id":686,"type":687,"label":775,"file":287,"line":748},{"id":692,"type":693,"label":702,"file":287,"line":503,"wp_function":704},{"id":698,"type":687,"label":724,"file":287,"line":902},281,{"id":701,"type":693,"label":694,"file":287,"line":904,"wp_function":696},844,[906,907],{"from":686,"to":692,"sanitized":398},{"from":698,"to":701,"sanitized":398},{"entryPoint":909,"graph":910,"unsanitizedCount":28,"severity":708},"handle_consent (includes\\analytics\\class-modular-analytics.php:136)",{"nodes":911,"edges":916},[912,914],{"id":686,"type":687,"label":913,"file":313,"line":819},"$_GET",{"id":692,"type":693,"label":702,"file":313,"line":915,"wp_function":704},150,[917],{"from":686,"to":692,"sanitized":398},{"entryPoint":919,"graph":920,"unsanitizedCount":28,"severity":708},"\u003Cclass-modular-analytics> (includes\\analytics\\class-modular-analytics.php:0)",{"nodes":921,"edges":924},[922,923],{"id":686,"type":687,"label":913,"file":313,"line":819},{"id":692,"type":693,"label":702,"file":313,"line":915,"wp_function":704},[925],{"from":686,"to":692,"sanitized":398},{"entryPoint":927,"graph":928,"unsanitizedCount":28,"severity":708},"handle_custom_bulk_action_result_admin_notice (includes\\class-eb-course-manager.php:924)",{"nodes":929,"edges":936},[930,934],{"id":686,"type":687,"label":931,"file":932,"line":933},"$_REQUEST (x2)","includes\\class-eb-course-manager.php",932,{"id":692,"type":693,"label":694,"file":932,"line":935,"wp_function":696},940,[937],{"from":686,"to":692,"sanitized":398},{"entryPoint":939,"graph":940,"unsanitizedCount":28,"severity":708},"\u003Cclass-eb-course-manager> (includes\\class-eb-course-manager.php:0)",{"nodes":941,"edges":944},[942,943],{"id":686,"type":687,"label":931,"file":932,"line":933},{"id":692,"type":693,"label":694,"file":932,"line":935,"wp_function":696},[945],{"from":686,"to":692,"sanitized":398},{"entryPoint":947,"graph":948,"unsanitizedCount":28,"severity":708},"bp_get_table (includes\\class-eb-custom-list-table.php:140)",{"nodes":949,"edges":956},[950,952],{"id":686,"type":687,"label":699,"file":595,"line":951},155,{"id":692,"type":693,"label":953,"file":595,"line":954,"wp_function":955},"get_results() [SQLi]",214,"get_results",[957],{"from":686,"to":692,"sanitized":398},{"entryPoint":959,"graph":960,"unsanitizedCount":28,"severity":708},"extra_tablenav (includes\\class-eb-custom-list-table.php:443)",{"nodes":961,"edges":966},[962,964],{"id":686,"type":687,"label":931,"file":595,"line":963},445,{"id":692,"type":693,"label":694,"file":595,"line":965,"wp_function":696},455,[967],{"from":686,"to":692,"sanitized":398},{"entryPoint":969,"graph":970,"unsanitizedCount":28,"severity":708},"\u003Cclass-eb-custom-list-table> (includes\\class-eb-custom-list-table.php:0)",{"nodes":971,"edges":976},[972,973,974,975],{"id":686,"type":687,"label":931,"file":595,"line":951},{"id":692,"type":693,"label":953,"file":595,"line":954,"wp_function":955},{"id":698,"type":687,"label":931,"file":595,"line":963},{"id":701,"type":693,"label":694,"file":595,"line":965,"wp_function":696},[977,978],{"from":686,"to":692,"sanitized":398},{"from":698,"to":701,"sanitized":398},{"entryPoint":980,"graph":981,"unsanitizedCount":28,"severity":708},"out_put (includes\\class-eb-manage-enrollment.php:111)",{"nodes":982,"edges":992},[983,986,987,988,990],{"id":686,"type":687,"label":984,"file":610,"line":985},"$_REQUEST (x3)",118,{"id":692,"type":693,"label":694,"file":610,"line":472,"wp_function":696},{"id":698,"type":687,"label":699,"file":610,"line":526},{"id":701,"type":727,"label":989,"file":610,"line":526},"→ eb_get_enrollment_total_record()",{"id":735,"type":693,"label":953,"file":595,"line":991,"wp_function":955},271,[993,994,995],{"from":686,"to":692,"sanitized":398},{"from":698,"to":701,"sanitized":397},{"from":701,"to":735,"sanitized":398},{"entryPoint":997,"graph":998,"unsanitizedCount":28,"severity":708},"handle_new_enrollment (includes\\class-eb-manage-enrollment.php:377)",{"nodes":999,"edges":1003},[1000,1002],{"id":686,"type":687,"label":724,"file":610,"line":1001},380,{"id":692,"type":693,"label":694,"file":610,"line":615,"wp_function":696},[1004],{"from":686,"to":692,"sanitized":398},{"entryPoint":1006,"graph":1007,"unsanitizedCount":28,"severity":708},"link_user_bulk_actions_notices (includes\\class-eb-user-manager.php:1384)",{"nodes":1008,"edges":1013},[1009,1011],{"id":686,"type":687,"label":699,"file":481,"line":1010},1402,{"id":692,"type":693,"label":694,"file":481,"line":1012,"wp_function":696},1406,[1014],{"from":686,"to":692,"sanitized":398},{"entryPoint":1016,"graph":1017,"unsanitizedCount":28,"severity":708},"\u003Cclass-eb-user-manager> (includes\\class-eb-user-manager.php:0)",{"nodes":1018,"edges":1021},[1019,1020],{"id":686,"type":687,"label":699,"file":481,"line":1010},{"id":692,"type":693,"label":694,"file":481,"line":1012,"wp_function":696},[1022],{"from":686,"to":692,"sanitized":398},{"entryPoint":1024,"graph":1025,"unsanitizedCount":28,"severity":708},"process_login (public\\class-eb-frontend-form-handler.php:27)",{"nodes":1026,"edges":1032},[1027,1029],{"id":686,"type":687,"label":724,"file":1028,"line":14},"public\\class-eb-frontend-form-handler.php",{"id":692,"type":693,"label":1030,"file":1028,"line":26,"wp_function":1031},"wp_remote_get() [SSRF]","wp_remote_get",[1033],{"from":686,"to":692,"sanitized":398},{"entryPoint":1035,"graph":1036,"unsanitizedCount":28,"severity":708},"process_registration (public\\class-eb-frontend-form-handler.php:150)",{"nodes":1037,"edges":1042},[1038,1040],{"id":686,"type":687,"label":724,"file":1028,"line":1039},207,{"id":692,"type":693,"label":1030,"file":1028,"line":1041,"wp_function":1031},208,[1043],{"from":686,"to":692,"sanitized":398},{"entryPoint":1045,"graph":1046,"unsanitizedCount":28,"severity":708},"\u003Cclass-eb-frontend-form-handler> (public\\class-eb-frontend-form-handler.php:0)",{"nodes":1047,"edges":1050},[1048,1049],{"id":686,"type":687,"label":732,"file":1028,"line":14},{"id":692,"type":693,"label":1030,"file":1028,"line":26,"wp_function":1031},[1051],{"from":686,"to":692,"sanitized":398},{"entryPoint":1053,"graph":1054,"unsanitizedCount":28,"severity":708},"\u003Cclass-eb-shortcode-courses> (public\\shortcodes\\class-eb-shortcode-courses.php:0)",{"nodes":1055,"edges":1062},[1056,1060],{"id":686,"type":687,"label":1057,"file":1058,"line":1059},"$_GET (x2)","public\\shortcodes\\class-eb-shortcode-courses.php",85,{"id":692,"type":693,"label":694,"file":1058,"line":1061,"wp_function":696},292,[1063],{"from":686,"to":692,"sanitized":398},{"entryPoint":1065,"graph":1066,"unsanitizedCount":28,"severity":708},"\u003Cedit-user-profile> (public\\templates\\account\\edit-user-profile.php:0)",{"nodes":1067,"edges":1075},[1068,1071,1072,1074],{"id":686,"type":687,"label":1069,"file":648,"line":1070},"$_GET[?] (x3)",50,{"id":692,"type":693,"label":694,"file":648,"line":1070,"wp_function":696},{"id":698,"type":687,"label":1073,"file":648,"line":380},"$_POST (x7)",{"id":701,"type":693,"label":694,"file":648,"line":656,"wp_function":696},[1076,1077],{"from":686,"to":692,"sanitized":398},{"from":698,"to":701,"sanitized":398},{"entryPoint":1079,"graph":1080,"unsanitizedCount":161,"severity":1094},"user_data_synchronization_initiater (admin\\class-eb-settings-ajax-initiater.php:87)",{"nodes":1081,"edges":1090},[1082,1083,1084,1086,1088],{"id":686,"type":687,"label":724,"file":494,"line":132},{"id":692,"type":693,"label":694,"file":494,"line":497,"wp_function":696},{"id":698,"type":687,"label":724,"file":494,"line":1085},100,{"id":701,"type":727,"label":1087,"file":494,"line":1085},"→ user_course_synchronization_handler()",{"id":735,"type":693,"label":953,"file":481,"line":1089,"wp_function":955},140,[1091,1092,1093],{"from":686,"to":692,"sanitized":398},{"from":698,"to":701,"sanitized":397},{"from":701,"to":735,"sanitized":397},"high",{"entryPoint":1096,"graph":1097,"unsanitizedCount":161,"severity":1094},"users_link_to_moodle_synchronization (admin\\class-eb-settings-ajax-initiater.php:111)",{"nodes":1098,"edges":1106},[1099,1100,1101,1102,1104],{"id":686,"type":687,"label":724,"file":494,"line":526},{"id":692,"type":693,"label":694,"file":494,"line":499,"wp_function":696},{"id":698,"type":687,"label":724,"file":494,"line":477},{"id":701,"type":727,"label":1103,"file":494,"line":477},"→ user_link_to_moodle_handler()",{"id":735,"type":693,"label":953,"file":481,"line":1105,"wp_function":955},290,[1107,1108,1109],{"from":686,"to":692,"sanitized":398},{"from":698,"to":701,"sanitized":397},{"from":701,"to":735,"sanitized":397},{"entryPoint":1111,"graph":1112,"unsanitizedCount":883,"severity":1094},"\u003Cclass-eb-settings-ajax-initiater> (admin\\class-eb-settings-ajax-initiater.php:0)",{"nodes":1113,"edges":1125},[1114,1116,1117,1118,1119,1120,1121,1122,1123,1124],{"id":686,"type":687,"label":1115,"file":494,"line":810},"$_POST (x4)",{"id":692,"type":693,"label":694,"file":494,"line":495,"wp_function":696},{"id":698,"type":687,"label":724,"file":494,"line":828},{"id":701,"type":693,"label":830,"file":494,"line":831,"wp_function":832},{"id":735,"type":687,"label":724,"file":494,"line":1085},{"id":738,"type":727,"label":1087,"file":494,"line":1085},{"id":741,"type":693,"label":953,"file":481,"line":1089,"wp_function":955},{"id":744,"type":687,"label":724,"file":494,"line":477},{"id":747,"type":727,"label":1103,"file":494,"line":477},{"id":750,"type":693,"label":953,"file":481,"line":1105,"wp_function":955},[1126,1127,1128,1129,1130,1131],{"from":686,"to":692,"sanitized":398},{"from":698,"to":701,"sanitized":398},{"from":735,"to":738,"sanitized":397},{"from":738,"to":741,"sanitized":397},{"from":744,"to":747,"sanitized":397},{"from":747,"to":750,"sanitized":397},{"entryPoint":1133,"graph":1134,"unsanitizedCount":161,"severity":1094},"\u003Cclass-eb-enrollment-manager> (includes\\class-eb-enrollment-manager.php:0)",{"nodes":1135,"edges":1142},[1136,1138,1140],{"id":686,"type":687,"label":724,"file":604,"line":1137},941,{"id":692,"type":727,"label":1139,"file":604,"line":1137},"→ user_has_course_access()",{"id":698,"type":693,"label":830,"file":604,"line":1141,"wp_function":832},689,[1143,1144],{"from":686,"to":692,"sanitized":397},{"from":692,"to":698,"sanitized":397},{"entryPoint":1146,"graph":1147,"unsanitizedCount":161,"severity":1094},"handle_bulk_action (includes\\class-eb-manage-enrollment.php:226)",{"nodes":1148,"edges":1155},[1149,1151,1153],{"id":686,"type":687,"label":724,"file":610,"line":1150},234,{"id":692,"type":727,"label":1152,"file":610,"line":1150},"→ multiple_unenroll_by_rec_id()",{"id":698,"type":693,"label":953,"file":610,"line":1154,"wp_function":955},257,[1156,1157],{"from":686,"to":692,"sanitized":397},{"from":692,"to":698,"sanitized":397},{"entryPoint":1159,"graph":1160,"unsanitizedCount":161,"severity":1094},"\u003Cclass-eb-manage-enrollment> (includes\\class-eb-manage-enrollment.php:0)",{"nodes":1161,"edges":1172},[1162,1163,1164,1165,1166,1167,1168,1169,1170,1171],{"id":686,"type":687,"label":984,"file":610,"line":985},{"id":692,"type":693,"label":694,"file":610,"line":472,"wp_function":696},{"id":698,"type":687,"label":724,"file":610,"line":1001},{"id":701,"type":693,"label":694,"file":610,"line":615,"wp_function":696},{"id":735,"type":687,"label":699,"file":610,"line":526},{"id":738,"type":727,"label":989,"file":610,"line":526},{"id":741,"type":693,"label":953,"file":595,"line":991,"wp_function":955},{"id":744,"type":687,"label":724,"file":610,"line":1150},{"id":747,"type":727,"label":1152,"file":610,"line":1150},{"id":750,"type":693,"label":953,"file":610,"line":1154,"wp_function":955},[1173,1174,1175,1176,1177,1178],{"from":686,"to":692,"sanitized":398},{"from":698,"to":701,"sanitized":398},{"from":735,"to":738,"sanitized":397},{"from":738,"to":741,"sanitized":398},{"from":744,"to":747,"sanitized":397},{"from":747,"to":750,"sanitized":397},{"summary":1180,"deductions":1181},"The Edwiser Bridge plugin v4.3.3 exhibits a mixed security posture. While it demonstrates good practices with a high percentage of prepared SQL statements and properly escaped output, several areas raise significant concerns. The presence of unprotected AJAX handlers and REST API routes creates potential attack vectors that could be exploited by unauthenticated users.  The taint analysis revealing six high-severity flows, even without critical ones, indicates potential for serious vulnerabilities if these flows are not properly handled by application logic.  \n\nThe plugin's vulnerability history is also a major red flag. With seven known CVEs, including two critical ones and a history of common vulnerability types like missing authorization, XSS, SSRF, and SQL injection, it suggests a pattern of security weaknesses. The recent critical vulnerabilities point towards ongoing issues that may not have been fully addressed. While there are currently no unpatched vulnerabilities, the historical pattern of serious flaws and the static analysis findings of unprotected entry points warrant a cautious approach.\n\nIn conclusion, while the plugin has strengths in its basic code hygiene for SQL and output handling, the numerous unprotected entry points and the concerning vulnerability history, particularly the critical vulnerabilities, significantly elevate the risk. Users should exercise extreme caution and ensure they have robust security measures in place.",[1182,1184,1187,1189,1191,1193],{"reason":1183,"points":174},"Unprotected AJAX handlers",{"reason":1185,"points":1186},"Unprotected REST API route",8,{"reason":1188,"points":362},"High severity taint flows",{"reason":1190,"points":231},"Two critical historical CVEs",{"reason":1192,"points":174},"Five medium historical CVEs",{"reason":1194,"points":1195},"Frequent historical vulnerability types",5,"2026-03-16T18:10:17.510Z",{"wat":1198,"direct":1238},{"assetPaths":1199,"generatorPatterns":1216,"scriptPaths":1217,"versionParams":1221},[1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211,1212,1213,1214,1215],"\u002Fwp-content\u002Fplugins\u002Fedwiser-bridge\u002Fassets\u002Fcss\u002Fbackend\u002Feb-admin-styles.css","\u002Fwp-content\u002Fplugins\u002Fedwiser-bridge\u002Fassets\u002Fcss\u002Ffrontend\u002Fcourses-grid.css","\u002Fwp-content\u002Fplugins\u002Fedwiser-bridge\u002Fassets\u002Fcss\u002Ffrontend\u002Fcourses-list.css","\u002Fwp-content\u002Fplugins\u002Fedwiser-bridge\u002Fassets\u002Fcss\u002Ffrontend\u002Fedwiser-bridge-frontend.css","\u002Fwp-content\u002Fplugins\u002Fedwiser-bridge\u002Fassets\u002Fcss\u002Ffrontend\u002Fmy-courses.css","\u002Fwp-content\u002Fplugins\u002Fedwiser-bridge\u002Fassets\u002Fcss\u002Ffrontend\u002Fthemes\u002Fedwiser-bridge-theme-a.css","\u002Fwp-content\u002Fplugins\u002Fedwiser-bridge\u002Fassets\u002Fcss\u002Ffrontend\u002Fthemes\u002Fedwiser-bridge-theme-b.css","\u002Fwp-content\u002Fplugins\u002Fedwiser-bridge\u002Fassets\u002Fcss\u002Ffrontend\u002Fthemes\u002Fedwiser-bridge-theme-c.css","\u002Fwp-content\u002Fplugins\u002Fedwiser-bridge\u002Fassets\u002Fjs\u002Fadmin\u002Feb-admin-script.js","\u002Fwp-content\u002Fplugins\u002Fedwiser-bridge\u002Fassets\u002Fjs\u002Fadmin\u002Feb-settings.js","\u002Fwp-content\u002Fplugins\u002Fedwiser-bridge\u002Fassets\u002Fjs\u002Ffrontend\u002Fcourses-carousel.js","\u002Fwp-content\u002Fplugins\u002Fedwiser-bridge\u002Fassets\u002Fjs\u002Ffrontend\u002Fedwiser-bridge-frontend.js","\u002Fwp-content\u002Fplugins\u002Fedwiser-bridge\u002Fassets\u002Fjs\u002Ffrontend\u002Fmy-courses.js","\u002Fwp-content\u002Fplugins\u002Fedwiser-bridge\u002Fassets\u002Fjs\u002Ffrontend\u002Fthemes\u002Fedwiser-bridge-theme-a.js","\u002Fwp-content\u002Fplugins\u002Fedwiser-bridge\u002Fassets\u002Fjs\u002Ffrontend\u002Fthemes\u002Fedwiser-bridge-theme-b.js","\u002Fwp-content\u002Fplugins\u002Fedwiser-bridge\u002Fassets\u002Fjs\u002Ffrontend\u002Fthemes\u002Fedwiser-bridge-theme-c.js",[],[1218,1219,1220],"\u002Fwp-content\u002Fplugins\u002Fedwiser-bridge\u002Fincludes\u002Fapi\u002Fclass-eb-external-api-endpoint.php","\u002Fwp-content\u002Fplugins\u002Fedwiser-bridge\u002Fincludes\u002Fanalytics\u002Fclass-modular-analytics.php","\u002Fwp-content\u002Fplugins\u002Fedwiser-bridge\u002Fincludes\u002Fclass-eb-blocks.php",[1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232,1233,1234,1235,1236,1237],"edwiser-bridge\u002Fassets\u002Fcss\u002Fbackend\u002Feb-admin-styles.css?ver=","edwiser-bridge\u002Fassets\u002Fcss\u002Ffrontend\u002Fcourses-grid.css?ver=","edwiser-bridge\u002Fassets\u002Fcss\u002Ffrontend\u002Fcourses-list.css?ver=","edwiser-bridge\u002Fassets\u002Fcss\u002Ffrontend\u002Fedwiser-bridge-frontend.css?ver=","edwiser-bridge\u002Fassets\u002Fcss\u002Ffrontend\u002Fmy-courses.css?ver=","edwiser-bridge\u002Fassets\u002Fcss\u002Ffrontend\u002Fthemes\u002Fedwiser-bridge-theme-a.css?ver=","edwiser-bridge\u002Fassets\u002Fcss\u002Ffrontend\u002Fthemes\u002Fedwiser-bridge-theme-b.css?ver=","edwiser-bridge\u002Fassets\u002Fcss\u002Ffrontend\u002Fthemes\u002Fedwiser-bridge-theme-c.css?ver=","edwiser-bridge\u002Fassets\u002Fjs\u002Fadmin\u002Feb-admin-script.js?ver=","edwiser-bridge\u002Fassets\u002Fjs\u002Fadmin\u002Feb-settings.js?ver=","edwiser-bridge\u002Fassets\u002Fjs\u002Ffrontend\u002Fcourses-carousel.js?ver=","edwiser-bridge\u002Fassets\u002Fjs\u002Ffrontend\u002Fedwiser-bridge-frontend.js?ver=","edwiser-bridge\u002Fassets\u002Fjs\u002Ffrontend\u002Fmy-courses.js?ver=","edwiser-bridge\u002Fassets\u002Fjs\u002Ffrontend\u002Fthemes\u002Fedwiser-bridge-theme-a.js?ver=","edwiser-bridge\u002Fassets\u002Fjs\u002Ffrontend\u002Fthemes\u002Fedwiser-bridge-theme-b.js?ver=","edwiser-bridge\u002Fassets\u002Fjs\u002Ffrontend\u002Fthemes\u002Fedwiser-bridge-theme-c.js?ver=",{"cssClasses":1239,"htmlComments":1246,"htmlAttributes":1252,"restEndpoints":1259,"jsGlobals":1263,"shortcodeOutput":1268},[1240,1241,1242,1243,1244,1245],"eb-settings-wrapper","eb-page-title","eb-admin-section","eb-course-grid-item","eb-course-list-item","eb-my-courses-list",[1247,1248,1249,1250,1251],"\u003C!-- Edwiser Bridge CSS files-->","\u003C!-- Edwiser Bridge JS files-->","\u003C!-- Edwiser Bridge Course Carousel -->","\u003C!-- Edwiser Bridge Frontend Script -->","\u003C!-- Edwiser Bridge My Courses Script -->",[1253,1254,1255,1256,1257,1258],"data-plugin-name='Edwiser Bridge'","data-plugin-version='4.3.3'","data-course-id","data-user-id","data-moodle-url","data-moodle-course-id",[1260,1261,1262],"\u002Fwp-json\u002Fedwiser-bridge\u002Fv1\u002Fcourses","\u002Fwp-json\u002Fedwiser-bridge\u002Fv1\u002Fcourse\u002F","\u002Fwp-json\u002Fedwiser-bridge\u002Fv1\u002Fuser-courses\u002F",[1264,1265,1266,1267],"EdwiserBridgeFrontend","EB_FRONTEND_PARAMS","EB_ADMIN_PARAMS","eb_settings_params",[1269,1270,1271,1272],"[eb_course_grid]","[eb_course_list]","[eb_my_courses]","[eb_login_form]"]