Skip to main content

Developer framework for integrating custom content models with django CMS.

Project description

Latest PyPI version Python versions Django versions django CMS versions Coverage

Developer framework for integrating custom content models with django CMS.

Description

djangocms-custom-content provides a developer-friendly framework to quickly build and integrate your own custom content models with django CMS.

It helps you define CMS-enabled custom models with minimal boilerplate. Depending on your project needs, it can optionally add:

  • apphooks for dedicated content sections/URLs

  • frontend editable placeholders

  • versioning support

  • relationships to other content types or existing domain models

The package also includes ready-to-use CMS plugins for displaying custom content items (e.g. detail/teaser views), as well as patterns for related and featured content.

Features

  • Fast setup for custom content models and CMS integration

  • CMS plugins for rendering content, related content, and featured content

  • Optional apphooks, versioning, and model relationships

  • Compatible with django CMS 5.0 and later

  • Support for Django 5.2 through 6.0

  • Easy integration into existing django CMS projects

Installation

Install the package using pip:

pip install djangocms-custom-content

Add it to your INSTALLED_APPS:

INSTALLED_APPS = [
    ...
    'djangocms_custom_content',
    ...
]

Run migrations:

python manage.py migrate djangocms_custom_content

Usage

This package is intended to be extended in your project:

  • Define one or more custom content models.

  • Register and configure the provided CMS integration (admin + plugins).

  • Use the included plugins to place and render your content in placeholders.

  • Optionally enable apphooks/versioning/relationships for richer content

    architectures.

The exact configuration depends on your project and the content types you build.

To learn how to build your own model-based content types with this framework, see the documentation section “Creating custom models”:

https://not-yet-there.readthedocs.io/

Contrib examples

This package ships optional, small example apps under djangocms_custom_content.contrib. They are intended as quick starting points (models + admin + django CMS plugins) and can be enabled in a project as-is or copied and adapted.

Available example modules:

  • djangocms_custom_content.contrib.people: Simple Person model + “Person” teaser plugin

  • djangocms_custom_content.contrib.services: Simple Service model + teaser + “featured services” plugin

  • djangocms_custom_content.contrib.categories: Simple taxonomy + category list plugin

  • djangocms_custom_content.contrib.blog: Simple blog posts with category relationship + teaser + latest posts plugin

To enable one (or more) of them, add the module(s) to INSTALLED_APPS and run migrations:

INSTALLED_APPS = [
    ...,
    'djangocms_custom_content',
    'djangocms_custom_content.contrib.people',  # contrib are optional
    'djangocms_custom_content.contrib.services',
    'djangocms_custom_content.contrib.categories',
    'djangocms_custom_content.contrib.blog',
    ...,
]

python manage.py migrate

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the BSD-3-Clause License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

djangocms_custom_content-0.5.0.tar.gz (92.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

djangocms_custom_content-0.5.0-py3-none-any.whl (62.6 kB view details)

Uploaded Python 3

File details

Details for the file djangocms_custom_content-0.5.0.tar.gz.

File metadata

  • Download URL: djangocms_custom_content-0.5.0.tar.gz
  • Upload date:
  • Size: 92.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for djangocms_custom_content-0.5.0.tar.gz
Algorithm Hash digest
SHA256 4ff6871c9ef0adccc86e036bb208594f353ca5f31c1301460aab5a1b42679f85
MD5 0c03fb26e29089e880d35a069a6d16ee
BLAKE2b-256 02aaae1a8621cdb1b7de4e2aa66c82b45dbe08c896e15e1c4e4f94de8752e4da

See more details on using hashes here.

Provenance

The following attestation bundles were made for djangocms_custom_content-0.5.0.tar.gz:

Publisher: publish-to-live-pypi.yml on fsbraun/djangocms-custom-content

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file djangocms_custom_content-0.5.0-py3-none-any.whl.

File metadata

File hashes

Hashes for djangocms_custom_content-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c6f52cbaed545b2594defb3f75822ec2692843ccbcd711672d491193c7358a63
MD5 526b6c9ad04462bc7ce8947832e095f0
BLAKE2b-256 b76d2f4dfe82c2a362c8f7f4c0dce3c9c66c3663f47f5716cbf6562a29e6d461

See more details on using hashes here.

Provenance

The following attestation bundles were made for djangocms_custom_content-0.5.0-py3-none-any.whl:

Publisher: publish-to-live-pypi.yml on fsbraun/djangocms-custom-content

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page