Skip to content

emencia/emencia-cmsplugin-xinnia

Repository files navigation

emencia-cmsplugin-xinnia

Note

This is a fork of emencia-cmsplugin-zinnia (which was a fork of original "cmsplugin-zinnia") to include fixes for last Django and DjangoCMS versions with django-blog-xinnia (a fork of django-blog-zinnia).

Code is almost unchanged except for needed fixes and even if package name has been renamed "xinnia", its module is still cmsplugin_zinnia.

Cmsplugin-zinnia is a bridge between django-blog-xinnia and django-cms.

This package provides plugins, menus and apphook to integrate your Zinnia powered Weblog into your django-cms Web site.

Once Zinnia and the CMS are installed, you simply have to register cmsplugin_zinnia, in the INSTALLED_APPS section of your project's settings.

If you want to use the plugin system of django-cms in your entries, an extended Entry with a PlaceholderField is provided in this package.

Just add this line in your project's settings to use it.

ZINNIA_ENTRY_BASE_MODEL = 'cmsplugin_zinnia.placeholder.EntryPlaceholder'

Note

You have to keep in mind that the default migrations bundled with Zinnia do not reflect the addition made by the EntryPlaceholder model.

A solution to initialize correctly the database can be:

$ python manage.py makemigrations
$ python manage.py migrate

If you want to use the apphook to provide the blog functionnalities under a specific URL handled by the CMS, remember this tip:

  • Once the apphook is registered, you can remove the inclusion of 'zinnia.urls' in urls.py and then restart the server to see it in full effect.

Default value: ['zinnia.urls']

The URLsets used for by the Zinnia AppHook.

Default value:

['cmsplugin_zinnia.menu.EntryMenu',
 'cmsplugin_zinnia.menu.CategoryMenu',
 'cmsplugin_zinnia.menu.TagMenu',
 'cmsplugin_zinnia.menu.AuthorMenu']

List of strings representing the path to the Menu class provided by the Zinnia AppHook.

Default value: True

Boolean used for displaying or not the entries in the EntryMenu object.

Default value: [] (Empty list)

List of tuple for extending the plugins rendering templates.

Example:

CMSPLUGIN_ZINNIA_TEMPLATES = [
  ('entry_custom.html', 'Entry custom'),
  ('entry_custom_bis.html', 'Entry custom bis')
  ]

Default value:

[('cmsplugin_zinnia/entry_list.html', _('Entry list (default)')),
 ('cmsplugin_zinnia/entry_detail.html', _('Entry detailed')),
 ('cmsplugin_zinnia/entry_slider.html', _('Entry slider'))]

Available base templates, these are the shipped template from this application. Commonly you will prefer to use CMSPLUGIN_ZINNIA_TEMPLATES to add new templates.

Default value: None

Initial value for template_to_render field. If empty or undefined, initial value will be the first item of available template choices.

Previous release history can be find in original fork.

  • Drop support for Django<2.2 and django-cms<3.7;
  • Fix some package informations
  • Add missing pending migrations for template fields update from ">0.9";
  • Use BooleanField with null=True instead of deprecated NullBooleanField;
  • Remove usage of deprecated python_2_unicode_compatible in models;
  • Use gettext_lazy instead of deprecated ugettext_lazy;