• Tutorials
    • Installing django CMS
      • Requirements
      • Your working environment
        • Create and activate a virtual env
        • Update pip
        • Use the django CMS installer
        • Start up the runserver
    • Templates & Placeholders
      • Templates
      • Placeholders
      • Static Placeholders
      • Rendering Menus
    • Integrating applications
      • Install the polls application
        • Improve the templates for Polls
      • Set up a new polls_cms_integration application
        • Create the application
        • Add it to INSTALLED_APPS
    • Plugins
      • Install the polls application
      • Set up a base template for the application
      • Create a new polls_cms_integration application
        • The Plugin Model
        • The Plugin Class
        • The template
      • Integrate the polls_cms_integration application
    • Apphooks
      • Create an apphook
        • What this all means
      • Apply the apphook to a page
    • Extending the Toolbar
      • Create the toolbar
        • What this all means
      • See it at work
    • Extending the navigation menu
      • Create the navigation menu
    • Content creation wizards
    • Integrating a third-party application
      • Basic installation
      • Django settings
        • INSTALLED_APPS
        • THUMBNAIL_PROCESSORS
        • ALDRYN_BOILERPLATE_NAME
        • STATICFILES_FINDERS
        • TEMPLATES
      • Migrate the database
      • Create a new apphooked page
      • Add new News & Blog articles
  • How-to guides
    • Install django CMS by hand
      • Install the django CMS package
      • Create a new project
      • Minimally-required applications and settings
        • INSTALLED_APPS
        • Language settings
      • Database
        • Database tables
        • Admin user
      • Using cms check for configuration
        • Sekizai
        • Middleware
        • Context processors
      • Further required configuration
        • URLs
        • Templates
        • Media and static file handling
      • Adding content-handling functionality
        • Django Filer
        • Django CMS CKEditor
        • Miscellaneous plugins
      • Launch the project
      • Next steps
    • Create custom plugins
      • Why would you need to write a plugin?
      • Overview
        • A note about cms.plugin_base.CMSPluginBase
        • An aside on models and configuration
      • The simplest plugin
      • Troubleshooting
      • Storing configuration
        • Handling Relations
      • Advanced
        • Inline Admin
        • Plugin form
        • Handling media
        • Plugin Context
        • Plugin Context Processors
        • Plugin Processors
        • Nested Plugins
        • Extending context menus of placeholders or plugins
        • Plugin data migrations
    • Customise menus
      • Menus
        • Customise menus at runtime
      • Attach Menus
      • Navigation Modifiers
        • Example use-cases
        • How it works
        • Performance issues in menu modifiers
    • Create apphooks
      • The basics of apphook creation
        • Apphooks for namespaced applications
        • Loading new and re-configured apphooks
      • Using an apphook
        • Sub-pages of an apphooked page
      • Apphook management
        • Uninstalling an apphook with applied instances
        • Management commands
      • Apphook menus
      • Apphook permissions
      • Automatically restart server on apphook changes
      • Apphooks and placeholder template tags
    • Manage complex apphook configuration
      • Attaching an application multiple times
        • Define a namespace at class-level
        • Set a namespace at instance-level
      • Apphook configurations
        • Basic concepts
      • An example apphook configuration
        • Using helper applications
        • Create the new FAQ application
        • Put it all together
    • Serve multiple languages
      • Multilingual URLs
        • Monolingual URLs
      • Store the user’s language preference
      • Working in templates
        • Display a language chooser in the page
        • Get the URL of the current page for a different language
      • Configuring language-handling behaviour
    • Work with templates
      • static_placeholder
      • CMS_TEMPLATE
      • render_model
    • Extend Page & Title models
      • Title vs Page extensions
      • Implement a basic extension
        • Page model extension example
        • Title model extension example
      • Using extensions
        • In templates
        • With menus
        • Handling relations
      • Complete toolbar API
        • Simplified Toolbar API
    • Extend the Toolbar
      • Registering
      • Adding items
      • Modifying an existing toolbar
        • Adding Items Alphabetically
        • Adding items through views
      • Frontend
    • Test your extensions
      • Testing Apps
        • Resolving View Names
        • CMSTestCase
      • Testing Plugins
    • Use placeholders outside the CMS
      • Get started
        • Admin Integration
        • I18N Placeholders
        • Templates
      • Adding content to a placeholder
        • Options
        • Permissions
    • Manage caching
      • Set-up
        • Plugins
        • Content Cache Duration
        • Settings
    • Enable frontend editing for Page and Django models
      • Template tags
      • Page titles edit
      • Page menu edit
      • Editing ‘ordinary’ Django models
        • Configure the model’s admin class
        • Selected fields edit
        • Special attributes
        • Custom views
        • Model changelist
      • Filters
      • Context variable
    • Create sitemaps
      • Sitemap
      • Configuration
      • django.contrib.sitemaps
    • Manage Page Types
      • Creating Page Types
      • Managing Page Types
      • Selecting a Page Type
    • Implement content creation wizards
      • Create a content-creation wizard
    • Contribute a patch
      • The basics
        • Target branches
      • How to write a test
      • Submitting your code
        • Acceptance criteria
  • Key topics
    • Application hooks (“apphooks”)
      • Multiple apphooks per application
      • Apphook configurations
    • Publishing
      • Code and Pages
    • Serving content in multiple languages
      • Basic concepts
        • How django CMS determines the user’s preferred language
        • How django CMS determines what language to serve
        • What django CMS shows in your menus
    • Internationalisation
      • URLs
      • How django CMS determines which language to serve
    • Permissions
      • CMS_PERMISSION mode
        • CMS_PERMISSION mode off
        • CMS_PERMISSION mode on
        • Page permissions
      • Permission strategies
        • Two dimensions of permissions
        • Use permissions on Groups, not on Users
        • Use Groups to build up permissions
        • Global or specific page permissions?
    • Using touch-screen devices with django CMS
      • General
      • Device support
      • Your site’s frontend
      • Known issues
        • General issues
        • CKEditor issues
        • Django Admin issues
    • How the menu system works
      • Basic concepts
        • Soft Roots
        • Registration
        • Generators and Modifiers
        • Nodes
      • Menu system logic
    • Some commonly-used plugins
      • django CMS Core Addons
      • Other addons of note
      • Deprecated addons
    • Search and django CMS
    • Frontend integration
  • Reference
    • API References
      • cms.api
        • Functions and constants
        • Example workflows
      • cms.constants
      • cms.app_base
    • Command Line Interface
      • Informational commands
        • cms list
        • cms check
      • Plugin and apphook management commands
        • cms delete-orphaned-plugins
        • cms uninstall
        • cms copy
        • cms copy lang
        • cms copy site
      • Moderation commands
        • cms moderator
        • cms publisher-publish
      • Maintenance and repair
        • fix-tree
        • fix-mptt
    • Configuration
      • The INSTALLED_APPS setting
      • The MIDDLEWARE_CLASSES setting
        • cms.middleware.utils.ApphookReloadMiddleware
      • Custom User Requirements
      • Required Settings
        • CMS_TEMPLATES
      • Basic Customisation
        • CMS_TEMPLATE_INHERITANCE
        • CMS_TEMPLATES_DIR
        • CMS_PLACEHOLDER_CONF
        • CMS_PLUGIN_CONTEXT_PROCESSORS
        • CMS_PLUGIN_PROCESSORS
        • CMS_APPHOOKS
      • Internationalisation and localisation (I18N and L10N)
        • CMS_LANGUAGES
        • Unicode support for automated slugs
      • Media Settings
        • CMS_MEDIA_PATH
        • CMS_MEDIA_ROOT
        • CMS_MEDIA_URL
        • CMS_PAGE_MEDIA_PATH
      • Advanced Settings
        • CMS_INTERNAL_IPS
        • CMS_REQUEST_IP_RESOLVER
        • CMS_PERMISSION
        • CMS_RAW_ID_USERS
        • CMS_PUBLIC_FOR
        • CMS_CACHE_DURATIONS
        • CMS_CACHE_PREFIX
        • CMS_PAGE_CACHE
        • CMS_PLACEHOLDER_CACHE
        • CMS_PLUGIN_CACHE
        • CMS_TOOLBARS
        • CMS_TOOLBAR_ANONYMOUS_ON
        • CMS_TOOLBAR_HIDE
        • CMS_DEFAULT_X_FRAME_OPTIONS
        • CMS_TOOLBAR_SIMPLE_STRUCTURE_MODE
        • CMS_PAGE_WIZARD_DEFAULT_TEMPLATE
        • CMS_PAGE_WIZARD_CONTENT_PLACEHOLDER
        • CMS_PAGE_WIZARD_CONTENT_PLUGIN
        • CMS_PAGE_WIZARD_CONTENT_PLUGIN_BODY
    • Form and model fields
      • Model fields
      • Form fields
    • Menus and navigation
      • show_menu
        • Some Examples
      • show_menu_below_id
      • show_sub_menu
      • show_breadcrumb
      • Properties of Navigation Nodes in templates
      • Modifying & Extending the menu
      • Menu system classes and function
        • menu application
        • cms application
    • Models
    • Permissions
    • Placeholders
    • Plugins
      • CMSPluginBase Attributes and Methods Reference
      • CMSPlugin Attributes and Methods Reference
    • Sitemaps
    • Template Tags
      • CMS template tags
        • Placeholders
        • render_placeholder
        • render_uncached_placeholder
        • show_placeholder
        • show_uncached_placeholder
        • page_lookup
        • page_url
        • page_attribute
        • render_plugin
        • render_plugin_block
        • render_model
        • render_model_block
        • render_model_icon
        • render_model_add
        • render_model_add_block
        • page_language_url
        • language_chooser
      • Toolbar template tags
    • Titles
    • The Toolbar
      • cms.toolbar.toolbar
      • cms.toolbar.items
    • Content creation wizards
      • Base Wizard
      • Base Wizard methods
        • get_description
        • get_title
        • get_success_url
        • get_weight
        • user_has_add_permission
      • wizard_pool
      • Wizard pool methods
        • is_registered
        • register
        • unregister
        • get_entry
        • get_entries
  • Development & community
    • django CMS’s development community
      • Divio AG
      • Core developers
        • Current core developers
        • Retired core developers
        • Becoming a core developer
      • Technical board
        • Role
        • Composition of the board
    • Development policies
      • Reporting security issues
      • Review
        • Formal approval
      • Proposal and discussion of significant changes
      • Release schedule
      • Branches
      • Commits
        • Commit messages
        • Squashing commits
      • Changelog
    • Contributing code
      • In a nutshell
      • Basic requirements and standards
        • Syntax and conventions
        • Process
      • Frontend
        • Styles
        • Icons
        • JS Bundling
    • Contributing documentation
      • Building the documentation
      • Spelling
        • Install the spelling software
        • Check spelling
      • Making a pull request
      • Documentation structure
      • Documentation markup
        • Sections
        • Inline markup
        • Rules for using technical words
        • References
    • Contributing translations
    • Code and project management
      • Issues
        • Raising an issue
        • Getting your issue accepted
      • How we process tickets
        • django CMS ticket processing system rules
        • Status
        • Needs
        • Kinds and components
        • Other labels
        • Comments
      • Label reference
        • Statuses
        • Needs
        • Other
    • Running and writing tests
      • Running tests
        • Problems running the tests
        • Advanced testing options
      • Running Frontend Tests
        • Unit tests
        • Integration tests
      • Writing tests
        • What we need
    • Code of Conduct
      • Raising a concern
  • Release notes & upgrade information
    • 3.5.4 release notes
      • What’s new in 3.5.4
        • Bug Fixes
    • 3.5.3 release notes
      • What’s new in 3.5.3
        • Bug Fixes
    • 3.5.2 release notes
      • What’s new in 3.5.2
        • Bug Fixes
    • 3.5.1 release notes
      • What’s new in 3.5.1
        • Bug Fixes
    • 3.5.0 release notes
      • What’s new in 3.5.0
        • Improvements and new features
        • Bug Fixes
        • Removal of deprecated functionality
        • Backward-incompatible changes
      • How to upgrade to 3.5
      • Create a new django CMS 3.5 project
        • On the Divio Cloud
        • Using the django CMS Installer
      • Contributors to this release
    • 3.4.4 release notes
      • What’s new in 3.4.4
        • Bug Fixes
        • Improvements and new features
        • Deprecations
      • Backward incompatible changes
        • Page methods
        • Placeholder utilities
    • 3.4.3 release notes
      • What’s new in 3.4.3
        • Security Fixes
        • Thanks
    • 3.4.2 release notes
      • What’s new in 3.4.2
        • Bug Fixes
        • Improvements and new features
        • Deprecations
        • Other changes
    • 3.4.1 release notes
      • What’s new in 3.4.1
        • Bug Fixes
    • 3.4 release notes
      • What’s new in 3.4
      • Upgrading to 3.4
      • Backward incompatible changes
        • Apphooks & Toolbars
        • Permissions
        • Manual plugin rendering
    • 3.3 release notes
      • What’s new in 3.3
      • Upgrading to 3.3
        • Deprecation of Old-Style Page Wizard Settings
      • Backward incompatible changes
        • Management commands
        • Signature changes
    • 3.2.5 release notes
      • What’s new in 3.2.5
        • Bug Fixes
        • DjangoCMS Text CKEditor
    • 3.2.4 release notes
      • What’s new in 3.2.4
        • Bug Fixes
        • DjangoCMS Text CKEditor
    • 3.2.3 release notes
      • What’s new in 3.2.3
        • Bug Fixes
    • 3.2.2 release notes
      • What’s new in 3.2.2
        • Improvements
        • Bug Fixes
        • Model Relationship Back-References and Django 1.9
        • Notice of Upcoming Change in 3.3
        • Treebeard corruption
        • DjangoCMS Text CKEditor
    • 3.2.1 release notes
      • What’s new in 3.2.1
        • Improvements
        • Bug Fixes
        • Treebeard corruption
        • DjangoCMS Text CKEditor
    • 3.2 release notes
      • What’s new in 3.2
      • Changes that require attention
        • Touch interface support
        • Bug-fixes
        • Content wizards
        • Renaming cms_app, cms_toolbar, menu modules
        • New ApphookReloadMiddleware
        • For developers
        • New structure board
        • Replaced the sideframe with an overlay
        • New startup page
      • Known issues
      • Backward-incompatible changes
      • Upgrading django CMS 3.1 to 3.2
      • Pending deprecations
    • 3.1.5 release notes
      • What’s new in 3.1.5
        • Bug Fixes
        • Treebeard corruption
        • DjangoCMS Text CKEditor
    • 3.1.4 release notes
      • What’s new in 3.1.4
        • Bug Fixes
        • Treebeard corruption
    • 3.1.3 release notes
      • What’s new in 3.1.3
        • Bug Fixes
        • Thanks
    • 3.1.2 release notes
      • What’s new in 3.1.2
        • Bug Fixes
    • 3.1.1 release notes
      • What’s new in 3.1.1
        • Bug Fixes
        • Potentially backward incompatible changes
        • Thanks
    • 3.1 release notes
      • What’s new in 3.1
        • Switch from MPTT to MP
        • Dropped support for Django 1.4 and 1.5
        • South is now an optional dependency
        • Changes to PlaceholderAdmin.add_plugin
        • Migrations moved
        • Plugins migrations moving process
        • Structure mode permission
        • Simplified loading of view restrictions in the menu
        • Toolbar API extension
        • Per-namespace apphook configuration
        • Improvements to the toolbar user interface
        • Placeholder language fallback default to True
        • New template tags
        • Plugin table naming
        • cms.context_processors.media replaced by cms.context_processors.cms_settings
      • Upgrading django CMS 3.0 to 3.1
        • Preliminary steps
        • Settings update
        • Update the database
    • 3.0.16 release notes
      • Bug-fixes
    • 3.0.15 release notes
      • What’s new in 3.0.15
        • Bug Fixes
        • Thanks
    • 3.0.14 release notes
      • What’s new in 3.0.14
        • Bug Fixes
        • Potentially backward incompatible changes
        • Thanks
    • 3.0.13 release notes
      • What’s new in 3.0.13
        • Bug Fixes
    • 3.0.12 release notes
      • What’s new in 3.0.12
        • Bug Fixes
    • 3.0.11 release notes
      • What’s new in 3.0.11
        • Bug Fixes
        • Other
    • 3.0.10 release notes
      • What’s new in 3.0.10
        • Bug Fixes
    • 3.0.9 release notes
      • What’s new in 3.0.9
        • Bug Fixes
    • 3.0.8 release notes
      • What’s new in 3.0.8
        • Bug Fixes
    • 3.0.7 release notes
      • What’s new in 3.0.7
        • Bug Fixes
        • Project & Community Governance
    • 3.0.6 release notes
      • What’s new in 3.0.6
        • Django 1.7 support
        • Extended Custom User Support
        • CMSPlugin.get_render_template
        • Simplified toolbar API for page extensions
    • 3.0.3 release notes
      • What’s new in 3.0.3
        • New Alias Plugin
        • New Context Menu API
        • Apphook Permissions
    • 3.0 release notes
      • What’s new in 3.0
        • New Frontend Editing
        • New Toolbar
        • New Page Types
        • Experimental Python 3.3 support
        • Better multilingual editing
        • CMS_SEO_FIELDS
        • CMS_MENU_TITLE_OVERWRITE
        • Plugin fallback languages
        • language_chooser
        • Undo and Redo
        • Plugins removed
        • Plugin Context Processors take a new argument
        • Apphooks
        • PlaceholderAdmin
        • Placeholder object permissions
        • Placeholders are pre-fillable with default plugins
        • Custom modules and plugin labels in the toolbar UI
        • New copy-lang subcommand
        • Frontend editor for Django models
        • New Page related_name to Site
        • Moved all template tags to cms_tags
        • getter and setter for translatable plugin content
        • No more DB table-name magic for plugins
        • Added support for custom user models
        • Page caching
        • Placeholder caching
        • Plugin caching
        • Per-page Clickjacking protection
        • CMS_TEMPLATE context variable
      • Upgrading from 2.4
      • Pending deprecations
        • placeholder_tags
        • cms.context_processors.media
    • 2.4 release notes
      • What’s new in 2.4
        • Introducing Django 1.5 support, dropped support for Django 1.3 and Python 2.5
        • Migrations overhaul
        • Added delete orphaned plugins command
        • Added a check command
        • CMS_MODERATOR
        • Added Fix MPTT Management command
        • Removed the MultilingualMiddleware
        • Added LanguageCookieMiddleware
        • CMS_LANGUAGES
        • CMS_FLAT_URLS
        • Plugins in Plugins
        • New way to handle django CMS settings
        • Added cms.constants module
        • django-reversion integration changes
        • Changes to the show_sub_menu template tag
        • PlaceholderAdmin support i18n
        • Added CMS_RAW_ID_USERS
      • Backwards incompatible changes
        • New minimum requirements for dependencies
      • Pending deprecations
    • 2.3.4 release notes
      • What’s new in 2.3.4
        • WymEditor fixed
        • Moved Norwegian translations
        • Added support for time zones
        • Fixed slug clashing
        • Prevent unnamed related names for PlaceholderField
        • Two fixes to page change form
    • 2.3.3 release notes
      • What’s new in 2.3.3
        • Restored Python 2.5 support
      • Pending deprecations
    • 2.3.2 release notes
      • What’s new in 2.3.2
        • Google map plugin
    • 2.3 release notes
      • What’s new in 2.3
        • Introducing Django 1.4 support, dropped support for Django 1.2
        • Lazy page tree loading in admin
        • Toolbar isolation
        • Plugin cancel button fixed
        • Tests refactor
        • Moving text plugins to different placeholders no longer loses inline plugins
        • Minor improvements
      • Backwards incompatible changes
        • New minimum requirements for dependencies
        • Registering a list of plugins in the plugin pool
      • Pending deprecations
    • 2.2 release notes
      • What’s new in 2.2
        • django-mptt now a proper dependency
        • Django 1.3 support
        • View permissions
      • Backwards incompatible changes
        • django-sekizai instead of PluginMedia
        • Toolbar must be enabled explicitly in templates
        • Static files moved to /static/
      • Features deprecated in 2.2
        • django-dbgettext support
    • Upgrading from 2.1.x and Django 1.2.x
      • Upgrading dependencies
      • Updates to settings.py
      • Template Updates
      • Database Updates
      • Static Media
  • Using django CMS
    • Tutorial
      • Log in
      • Create a page
        • Create your first page
        • Publish a page
        • Create a second page
      • Changing page settings
      • Structure and content modes
        • Add a second plugin
    • Reference for content editors
      • Page admin
        • The interface
        • Admin views & forms
      • Working with admin in the frontend
        • Redirection
GET STARTED FASTER

Divio is built for django CMS

  • Powerful FREE instance
  • Local development environment
  • Preconfigured django CMS
Get your free account
django cms
Divio
  • Docs  » 
  • Reference

Reference¶

Technical reference material.

  • API References
  • Command Line Interface
  • Configuration
  • Form and model fields
  • Menus and navigation
  • Models
  • Permissions
  • Placeholders
  • Plugins
  • Sitemaps
  • Template Tags
  • Titles
  • The Toolbar
  • Content creation wizards
Next Previous

© Copyright 2009-2020, Divio AG and contributors. Revision 932da2eb.

Edit on GitHub