Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Export modules #385

greatislander opened this issue Apr 20, 2016 · 0 comments


Copy link

commented Apr 20, 2016



Right now there are nine export formats included in Pressbooks core:

  1. PDF (Prince)
  2. PDF (mPDF)
  3. EPUB 2
  4. EPUB 3
  5. MOBI (Kindle)
  6. XHTML
  7. ICML (deprecated)
  8. Pressbooks XML
  9. WordPress XML
  10. ODT

We hide some of these on Pressbooks production networks, and mPDF only appears when Prince is not installed, but otherwise there is no way for a network administrator to customize which export formats are available. Furthermore, some of these (specifically: mPDF and ICML) are beyond the capabilities of the Pressbooks core development team to support as we (read: I) have my hands full maintaining and enhancing the Big Three that our paying customers rely on: PDF via Prince, EPUB, and MOBI.

In order to make Pressbooks more flexible and to better allow custom exporters to be supported and maintained by our open source contributor community, I am proposing that we make export formats modular, so that:

  1. Network administrators can disable formats that they don't want/need to simplify the user experience.
  2. Formats like mPDF and ICML can be maintained as independent modules outside of Pressbooks, and loaded dynamically when they are installed.

An important consideration: formats that are not part of Pressbooks Core will not be supported by bundled themes. This will mean that, for example, users who want to use the mPDF exporter will have to install an mPDF-capable theme for export capability. We need to consider how this works within the context of our current mechanism, where all themes are essentially child themes.

Steps to Reproduce

Not applicable.


Root Theme: Pressbooks Publisher
Book Theme: Luther


Pressbooks: 3.4-dev
WordPress: 4.5
PHP: 5.6

@greatislander greatislander self-assigned this Apr 20, 2016

@greatislander greatislander added this to the v4.0 milestone Apr 20, 2016

@greatislander greatislander referenced this issue May 10, 2016
4 of 4 tasks complete

@greatislander greatislander modified the milestones: v3.9.8, v4.0 Feb 2, 2017

greatislander added a commit that referenced this issue Feb 27, 2017
Add export module hooks (fixes #385).
Migrate mPDF out of core.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
None yet
1 participant
You can’t perform that action at this time.