Skip to main content

The Plone Content Management System (core)

Project description

About Plone

Plone is a mature, secure and user-friendly Content Management System (CMS).

Plone - and it’s OpenSource community behind - aggregates more than 15 years experience in content-management. It offers all major features expected by a modern CMS out-of-the-box.

Lots of customizations can be made trough-the-web, such as creating content-types, themes, workflows and much more. Pushed one step further Plone can be used as a framework to build custom CMS-like solutions on.

Plone works as a

  • full-featured classical backend renderend CMS,

  • headless CMS offering all features as a RESTapi.

Installing Plone

Plone is available on Microsoft Windows, Linux, OSX and BSD platforms.

Plone runs as container in the cloud with Docker.

Install Plone by choosing an option from plone.org

Documentation

Consult the official Plone documentation with information for different audiences.

For trainings comprehensive Plone training material is offered.

What is Plone?

Plone is a ready-to-run content management system, offering a complete set of features needed by a wide variety of organizations.

Plone is secure by architecture and offers fine grained permission control over content and actions.

Plone is easy to set up, extremely flexible, and provides you with a system for managing web content that is ideal for project groups, communities, web sites, extranets and intranets.

  • Plone is easy to install. You can install Plone with a a click and run installer, and have a content management system running on your computer in just a few minutes.

  • Plone is easy to use. The Plone Team includes usability experts who have made Plone easy and attractive for content managers to add, update, and maintain content.

  • Plone is international. The Plone interface has more than 35 translations, and tools exist for managing multilingual content.

  • Plone is standard. Plone carefully follows standards for usability and accessibility. Plone pages are compliant with US Section 508, and the W3C’s AAA rating for accessibility.

  • Plone is Open Source. Plone is licensed under the GNU General Public License, the same license used by Linux. This gives you the right to use Plone without a license fee, and to improve upon the product.

  • Plone is supported. There are over three hundred developers in the Plone Development Team around the world, and a multitude of companies that specialize in Plone development and support.

  • Plone is extensible. There is a multitude of add-on products for Plone to add new features and content types. In addition, Plone can be scripted using web standard solutions and Open Source languages.

  • Plone is technology neutral. Plone can interoperate with most relational database systems, open source and commercial, and runs on a vast array of platforms, including Linux, Windows, Mac OS X, Solaris and BSD.

Technical overview

Plone is a content management platform written in Python. It builds up on Zope, an Open Source web application server and development system and so on the pluggable Zope Component Architecture (ZCA).

Python is the easy-to-learn, widely-used and supported Open Source programming language. Python can be used to add new features to Plone, and used to understand or make changes to the way that Plone work.

Plone stores its contents in Zope’s built in transactional hierachical object database, the ZODB. The ZODB can be connected to simple file-storages, scalable ZEO-Servers or Postgres, MySQL and Oracle. There are addon and techniques, however, to share information with other sources, such as relational databases, LDAP, filesystem files, etc.

Changelog

5.2a1 (2018-11-08)

Breaking changes:

  • Removed generateUniqueId.py skins script (after it was added to Products.Archetypes). This script is no longer available outside Archetypes world. #1801 [jensens]

  • Remove all dependencies on plone.app.controlpanel. Third party code need either to depend on plone.app.controlpanel 4.0, which is a backward compatibility package only, or also update to not depend on it anymore. [jensens]

  • Removed check_id.py skin script. Replaced with utils.check_id function. #1801 and #2582. [maurits]

  • Removed my_worklist.py skin script. #1801 [reinhardt]

  • Removed getObjectsFromPathList.py skin script. #1801 [reinhardt]

  • Removed isExpired.py skin script. #1801 [reinhardt]

  • Removed redirectToReferrer.py skin script. #1801 [tlotze]

  • Removed enableHTTPCompression.py skin script. #1801 [tlotze]

  • Removed setAuthCookie.py skin script. #1801 [tlotze]

  • Stop configuring ‘View History’ permission which was removed from Zope. [davisagli]

  • Remove legacy resource registries portal_css and portal_javascripts [ksuess]

New features:

  • Factored out human_readable_size method for replacing getObjSize.py; removed getObjSize.py. #1801 [reinhardt]

  • Update TinyMCE to 4.7.13 [erral]

  • New browser view based login code - merged from plone.login (credits to esteele, pbauer, agitator, jensens, et al). portal_skins/plone_login is now gone, see PLIP #2092. Also, password reset view moved to login subfolder to keep things together. Some testbrowser based tests needed changes because of z3c.form based login form . The Plone specific, rarely used cross site __ac cookie SSO feature/hack was removed. In case somebody needs this, please make it an addon package. Better use a field proven, more secure way, like OAuth2, Shibboleth or someting similar. [jensens, et al]

  • Upgrade grunt + plugins to same versions as in mockup https://github.com/plone/mockup/pull/870 [sunew]

  • Upgrade less in bower.json to the same version as already used in the generated package.json in compile_resources.py. [sunew]

  • Add utility-method safe_nativestring. [pbauer]

  • Rename safe_unicode to safe_text and safe_encode to safe_bytes. Keep old aliases. [pbauer]

  • Add a bin/instance verifydb command which can be used to check that all records in the database can be successfully loaded. This is intended to help with verifying a database conversion from Python 2 to Python 3. [davisagli]

Bug fixes:

  • Modernize robot keywords that use “Get Element Attribute” [ale-rt]

  • remove plone.app.folder dependency [petschki]

  • move GopipIndex Class to plone.folder [petschki]

  • Fixed getObjSize indexer for Python 3. #2526 [reinhardt]

  • Fix toolbar menu on mobile #2333.

  • make groups_modify_roles test more robust. [tschorr]

– Fix wrong CSS property to allow correct word-break.

[tmassman]

Fix toolbar menu on mobile #2333.

[tmassman]

  • Removed the raiseUnauthorized skin script. If you use this, please do permission checking in your own Python code instead (likely in a browser view). Refs issue 1801. [maurits]

  • Remove the devdependencies from bower.json - they are just used for running tests in mockup, not here. [sunew]

  • Adapt tests to Products.GenericSetup >= 2.0 thus requiring at least that version. [icemac]

  • Some tools from CMFCore are now utilities [pbauer]

  • Fix failing thememapper robot test after rebuild of thememapper bundle in p.a.theming PR 148 [sunew]

  • Remove five.pt for Zope 4 [jensens]

  • Changes for Zope 4 compatibility in maintenance controlpanel. [thet]

  • Render exceptions using an exception view instead of standard_error_message. [davisagli]

  • Remove old PlacelessTranslationService. [jensens, ksuess]

  • Fix controlpanel quickinstaller view: A not yet installed product must not return any upgrade info. [jensens]

  • Fix to make plone/plone.session#11 work: Make test for installation of plone.session more explicit. [jensens]

  • Advanced Catalog Clear And Rebuild feature showed wrong processing time due to new queue processing. This was fixed bei calling processQueue() after indexing. [jensens]

  • Some nested section id=”edit-bar” tag in folder_contents page #2322 [terapyon]

  • Remove plone-generate-gruntfile (it is all available through plone-compile-resources). [jensens]

New Features:

  • Update to latest mockup [frapell]

  • Provide an utility dump_json_to_text that works both on Python 2.7 an Python 3. [ale-rt]

  • Prepare for Python 2 / 3 compatibility. [pbauer]

  • Fix imports to work with Python 3. [pbauer]

  • Mockup update. [thet]

  • add link to Plone.org VPAT accessibility statement [tkimnguyen]

Bug Fixes:

  • Remove last legacy Javascript highlight-searchterms.js. Removes also the skins folder plone_ecmascript. It was broken for all (Google, other search engines, own live search); JS worked only when coming from Plone detailed search. [jensens]

  • Fix an undefined variable in a test helper function [ale-rt]

  • Let the combine-bundles import step also work when the IBundleRegistry keyword is not in registry.xml, but in a registry directory. Issue 2520. [maurits]

  • Get rid of obsolete X-UA-Compatible header. [hvelarde]

  • Fix registration of robots.txt browser view to avoid AttributeError on Zope’s root (fixes #2052). [hvelarde]

  • Get rid of obsolete X-UA-Compatible header. [hvelarde]

  • Add test for issue #2469. [jensens]

  • Fixed tests when IRichText behavior is used. IRichText -> IRichTextBehavior This is a follow up to issue 476. [iham]

  • Remove unused mail_password.py from skins/plone_scripts [agitator]

  • Hide plone.app.querystring from add-ons control panel. Fixes issue 2426. [maurits]

  • Fix tests after changes in disallowed object ids in Zope. [pbauer]

  • Do not include too new upgrades when upgrading Plone Site. Otherwise the Plone Site ends up at a newer version that the filesystem code supports, giving an error when upgrading, and resulting in possibly missed upgrades later. Fixes issue 2377. [maurits]

  • After site creation, do not render the add-site template: we redirect anyway. [maurits]

  • Unflakied a unit test. [Rotonen]

  • Do not show TinyMCE menu items with no subitems, Fixes #2245. [mrsaicharan1]

  • Fix Exception-View when main_template can’t be rendered. Fixes #2325. [pbauer]

  • Render exceptions as text, not html to fix format of infos after traceback. Display as <pre> for basic and normal error templates. [pbauer]

  • Removed extra methods and tests for CMFQuickInstallerTool. Moved those to the Products.CMFQuickInstallerTool package. [maurits]

  • Added tests for add-ons control panel. Add a link to the Site Setup. Let get_product_version work when you call it with CMFPlacefulWorkflow too. [maurits]

  • Fix bad domain for translating password reset mails. [allusa]

  • Ignore invalid sort_on parameters in catalog searchResults. Otherwise you get a CatalogError. I get crazy sort_ons like ‘194’ or ‘null’. [maurits]

  • Register the ExceptionView for the unspecific zope.interface.Interface for easier overloading. Fixes a problem, where plone.rest couldn’t overload the ExceptionView with an adapter bound to plone.rest.interfaces.IAPIRequest. [thet]

  • Fixed linkintegrity robot tests. [maurits]

  • Fixed flaky actions controlpanel tests by waiting longer. [maurits]

  • Require AccessControl 4.0b1 so guarded_getitem is used. Part of PloneHotfix20171128. [maurits]

  • Improved isURLInPortal according to PloneHotfix20171128. Accept only http/https, and doubly check escaped urls. [maurits]

  • Fix exception view when called on Zope-root. Fixes #2203. [pbauer]

  • added CSS hyphenation support for toolbar for avoiding ugly text wrapping Fixes issue 723. [ajung]

  • Increase compatibility with Python3. [ale-rt]

  • Show example for expression in actions control panel. [maurits]

  • Fix test where you cannot instanciate a PythonScript with the id script. [pbauer]

  • Set the status of an exception view according to the exception type. Fixes issue 2187. [maurits]

  • Use absolute imports for Python3 compatibility [ale-rt]

  • Fallback for missing date in DefaultDublinCoreImpl no longer relies on bobobase_modification_time. [pbauer]

  • Display real version of Zope, not of the empty meta-package Zope2. [pbauer]

  • Add zcml-condition plone-52 for conditional configuration. [pbauer]

  • Use getSite in set_own_login_name to get the portals acl_users. [pbauer]

  • Fix test issue with rarely used multi-site SSO feature. came_from on @register link would point to wrong site. Completly removed came_from on @@register link. It does not make much sense anyway and we test nowhere if there is a came_from on that link. [jensens]

  • Remove depricated type attribute from script and link tags. [newbazz]

  • Render tinymce attributes correctly in Python3. [sallner]

  • Remove unresolved dependencies of plone-final to cssregistry and jsregistry. [pbauer]

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

Products.CMFPlone-5.2a1.tar.gz (18.1 MB view hashes)

Uploaded Source

Built Distribution

Products.CMFPlone-5.2a1-py2-none-any.whl (19.0 MB view hashes)

Uploaded Python 2

Supported by

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