Skip to main content

1 Django CMS Export Page

Version:

0.2.4

Source:

https://bitbucket.org/maykinmedia/djangocms-export-page

Keywords:

django cms export docx

PythonVersion:

3.11

Build status Code quality checks black Coverage status

python-versions django-versions pypi-version

Export a Django CMS page or a model view to a DOCX document

2 Features

  • Adds a menu entry in the CMS toolbar to export the current page

  • Ability to export a custom model, including placeholder fields

img/page-export-menu.png

3 Installation

3.1 Requirements

  • Python 3.11 or above

  • Django 3.2 or above

  • Django CMS 4.1 or above

3.2 Install

pip install djangocms-export-page

4 Usage

In your Django settings:

INSTALLED_APPS = [
    ...
    'djangocms_export_page',
    ...
]

4.1 CMS Page

CMS Page don’t need any extra configuration to work.

If a Plugin has a reverse ForeignKey that would behave like children, add the following to the CMSPlugin model class:

_export_page = {
    'children': 'items'
}

@property
def items(self):
    return self.frequentlyaskedquestion_set.all()

where items is a iterable attribute of the model class.

And for on the ForeignKey Django model class:

_export_page = {
    'fields': ['name', ... ]
}

If you want to export the contents of a ForeignKey or OneToOneField inside the regular model you can use _export_page_field_names. Now these fields will be put in the some level as the plugin fields.

_export_page_field_names = ['number', 'title', 'lead', 'display_date', 'date', 'location']

4.2 Django Model

If you need to export a Django model included in a AppHook, add the following to the model class:

_export_page = {
    'sections': [{
        'name': 'Meta',
        'fields': ['title', ... ]
    }, {
        'name': 'Body',
        'fields': ['content']
    }],
}

It’s better to put the PlaceholderField (here content) in a separate section.

4.3 Static Aliases

If you also want to export the static aliases of a page, some extra configuration is required. There is a setting called EXPORT_STATIC_ALIASES.

EXPORT_STATIC_ALIASES = {
    'template_name': ['static_alias_code']
}

So with the cms settings it will look like this:

# test.html
<div>
    {% static_alias 'test-placeholder' %}
</div>

# settings.py
CMS_TEMPLATES = [
    ('test.html', _('Test page')),
]

EXPORT_STATIC_ALIASES = {
    'test.html': ['test-placeholder']
}

Metadata

Release files for djangocms-export-page 0.2.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for djangocms-export-page 0.2.4
File Size Uploaded Provenance Actions
djangocms_export_page-0.2.4.tar.gz 17.2 kB With provenance Details for djangocms_export_page-0.2.4.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for djangocms-export-page 0.2.4
File Interpreter ABI Platform Actions
djangocms_export_page-0.2.4-py3-none-any.whl Python 3 none any Details for djangocms_export_page-0.2.4-py3-none-any.whl

Total release size: 31.6 kB

Release files / djangocms_export_page-0.2.4.tar.gz

Download URL djangocms_export_page-0.2.4.tar.gz
Size 17.2 kB
Tags Source
SHA-256 checksum
How to use checksums
8279856288ccd4dd40ad2868606e282dc2464e6133db4d5dce29d371a7f99709
BLAKE2b-256 checksum
How to use checksums
d967fab09033e0158ca4acd38d64aa6fd945e798699f6a1105af719632f27bd6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 17, 2025.

Transparency log

Release files / djangocms_export_page-0.2.4-py3-none-any.whl

Download URL djangocms_export_page-0.2.4-py3-none-any.whl
Size 14.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
512b65b4130c8badd0cd019b1c14c2c14913444576c9d527578092416f99e115
BLAKE2b-256 checksum
How to use checksums
d556be2cb9f3f5d868f9e00acf0ec062d96fd9db2bc9d75d9dfb93bada1fd4b3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 17, 2025.

Transparency log

Security for djangocms-export-page 0.2.4

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for djangocms_export_page-0.2.4.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 17, 2025.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page