HI I've installed H5P on the network and have tried both to active the plugin on the sub domain, and activated it as netowrk plugin.  the library appears in the dashboard on the main site but not on the subdomain where at the moment I wish to use it.

Any advice?


much appreciated


icc's picture

Currently, you'll have to install the libraries for each subsite when you've activated the plugin for it. You have to download the attached .h5p file from here and then upload it to the subsite's libraries page. Hopefully, in a not-to-distant future, there will be an easier and better solution for this.

much appreciated

I've got a multisite install as well.  I've installed the plugin in the network dashboard.  Then I can go to a subsite and enable the plugin.  However, when I go to the All H5P Content tab, I get a message saying "Failed to load data."  If I try to add new content I get a message saying "Error, unable to load libraries."

I see the libraries are deployed in the sites upload location.  Do they need to be somewhere else too?


wp:/var/www/wordpress/wp-content/uploads/sites/9/h5p/libraries# ls -l

total 412
drwxr-xr-x 3 www-data www-data 4096 Jul  6 09:11 blob-1.0
drwxr-xr-x 2 www-data www-data 4096 Jul  6 09:11 docxgenJS-1.0
drwxr-xr-x 4 www-data www-data 4096 Mar 31 13:07 downloadify-1.0
drwxr-xr-x 4 www-data www-data 4096 Mar 31 13:07 Drop-1.0

icc's picture

No that should be fine. Could you try opening you browser's console (Ctrl+Shift+J in Chrome) and then reloading the All H5P Content page to check if there are any error messages? If there are none present you might have to go over to the Network tab and check why the request failed. It should be highlighted in red text. You can hit the XHR filter if there are many requests, that should make it easier to find.

Possibly, there might be some error messages in your web server's error_log as well. 

Ah.  My WP instance is behind a load balancer which offloads SSL termination.  The H5P pages are blocked because of mixed content.  They are trying to load http:// rather than https:// URLs.  


Mixed Content: The page at 'https://wordpress/wp-admin/admin.php?page=h5p' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'http://wordpress/wp-admin/admin-ajax.php?action=h5p_contents&offset=0&li...'. This content should also be served over HTTPS.

admin.php?page=h5p:1 XMLHttpRequest cannot load http://wordpress/wp-admin/admin-ajax.php?action=h5p_contents&offset=0&li.... No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'https://wordpress' is therefore not allowed access.

icc's picture

Did you get it working? 

The AJAX function uses a URL generated by admin_url(), so it not working could mean some of the URL variables isn't correct for the sub-site.