The Plone Content Management System (core)
Project description
About Plone
Plone is a user friendly Content Management System running on top of Python, Zope and the CMF.
It benefits from all features of Zope/CMF such as: RDBMS integration, Python extensions, Object Oriented Database, Web configurable workflow, pluggable membership and authentication, Undos, Form validation, amongst many many other features. Available protocols: FTP, XMLRPC, HTTP and WEBDAV Turn it into a distributed application system by installing ZEO.
Plone shares some of the qualities of Livelink, Interwoven and Documentum. It aims to be the open source out-of-the-box publishing system.
What is Plone?
Plone is a ready-to-run content management system that is built on the powerful and free Zope application server. 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 framework that works hand-in-hand and sits on top of Zope, a widely-used Open Source web application server and development system. To use Plone, you don’t need to learn anything about Zope; to develop new Plone content types, a small amount of Zope knowledge is helpful, and it is covered in the documentation.
Zope itself is written in Python, an 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 Zope and Plone work.
By default, Plone stores its contents in Zope’s built in transactional object database, the ZODB. There are products and techniques, however, to share information with other sources, such as relational databases, LDAP, filesystem files, etc.
Plone runs on Windows, Linux, BSD, Mac OS X, and many other platforms; double-click installers are available for Windows and Mac OS X, and RPM packages are available for Linux. For full information, see the plone.org product page.
Changelog
4.1.1 (2011-09-21)
Fixed folder_listing template so that listing macro can be used outside of folder_listing. [thomasdesvenain]
AuthenticatedUsers group is used for local roles etc, and is not the same as Authenticated role. Thus, it can not be optimized away in catalog queries. [tesdal]
getFolderContents only sets b_size if batching is true. [do3cc]
4.1 - 2011-07-12
Make the plone-final import step dependend on rolemap to prevent some hard-to-debug add-on product related issues. Closes http://dev.plone.org/plone/ticket/11997; [MatthewWilkes]
Use transaction.savepoint instead of transaction.begin in isLinked; closes http://dev.plone.org/plone/ticket/7784; does not reopen http://dev.plone.org/plone/ticket/6666 probably because we use fixed version of ZEO [gotcha]
Fix: content status history form entries are not batched because there is no batch navigation management on this page, so that all selected elements from folder contents are displayed. [thomasdesvenain]
Optimized: Huge optimization of calendar_formfield.js under ie8 and lower. Gain of 50% on js execution on a large page. [thomasdesvenain]
4.1rc3 - 2011-06-02
Apply patches to prevent exploitation of CVE-2011-1948 (Hotfix 20110531.) [elro]
In actions.xml, use object_url for the object_buttons. Fixes http://dev.plone.org/plone/ticket/11733. [WouterVH]
Set Language to ‘all’ to list content in all languages when listing a worklist’s contents (workflow) to support LinguaPlone better. [mj]
Set appropriate cache headers on createObject redirects to prevent caching by proxy servers. [elro]
Added “X-Theme-Disabled” response header to failsafe_login_form to disable Diazo/plone.app.theming. [elro]
Fixed PloneBatch to work for non-lazy sequences. [hannosch]
Explicitly load the configure.zcml from plone.app.upgrade, so the upgrade steps are loaded in plone.app.testing based test layers. [hannosch]
Define a ZCML feature called plone-41 in addition to the existing plone-4 to be used in conditional ZCML registrations. [hannosch]
Avoid registering CMFDefault’s upgrade steps, as they are not useful in Plone. [hannosch]
4.1rc2 - 2011-05-21
Fixed PloneBatch class to handle limited result sets correctly. This closes http://dev.plone.org/plone/ticket/11733. [hannosch]
Hide datepicker icon for date widget if plone.jscalendar is not loaded. Fixes #11831. [smcmahon]
4.1rc1 - 2011-05-20
Make folder_listing filter on @@portal_state/friendly_types when applied to a container. (Add portal_types to site_properties types_not_to_list to exclude them from friendly_types.) [elro]
Error handling for folder_full_view_item so items using a BrowserView render a link instead of causing an error. [elro]
Refactor dragdropreorder.js and folder_moveitem to detect client/server ordering mismatches and be more robust in event of mousing out of the table rows. [elro]
Add forward compatibility with DateTime 3. [hannosch]
Added a new interface blacklist to the CatalogTool module. Items in this list won’t be indexed in the object_provides index. This saves about 1kb of mostly useless data to be stored per object. If you need to query on one of the blacklisted interfaces, consider using other indexes to get a small result set and then checking the actual objects or add a specialized index for the data you are interested in. Also changed the stored value to a tuple to safe some memory overhead of the list type. [hannosch]
Optimize images and icon file sizes. [hannosch]
Fix the event_view to refer to the icon_export_* images relative to the portal and not the current context. [hannosch]
Text on login success page uses navigation root title instead of portal title. Refs http://dev.plone.org/plone/ticket/9175. [thomasdesvenain]
Let the content import step (importing the site structure) not depend on plone-final but on typeinfo. Solves circular dependency. Refs http://dev.plone.org/plone/ticket/8350 [maurits]
Set Content-Language header to default language when content language is an empty string. [elro]
Change csrf patch to apply to MemberAdapter instead of MemberData when using CMF 2.3. [elro]
CMFCore registers a memberdata export/import handler in 2.3, so make our registration conditional. [elro]
Remove previous sub-collection from default content, as sub-collections are not enabled by default since Plone 4.0 and having one in the default content is confusing. Closes http://dev.plone.org/plone/ticket/10705. [hannosch]
Fix zope.sendmail patch to raise errors for immediate sending failures. Relates to http://dev.plone.org/plone/ticket/10675. [elro]
Sort on content title ignores accents. So, d < é < f. [thomasdesvenain]
Expose the query report and plan on the catalog tool. [hannosch]
Optimize the data indexed by the allowedRolesAndUsers index and the query performed against it. [hannosch]
Fix cicular dependency in import steps. This partially fixes http://dev.plone.org/plone/ticket/8350 [kiorky]
4.1b2 - 2011-04-06
Fix bug in formUnload.js where changes to select option lists without a default were incorrectly detected (javascript indexes from 0, not 1.) [elro]
Added “rss” alias to “RSS”. This fixes https://dev.plone.org/plone/ticket/11638. [gotcha]
Fixed: “showing field with error is broken in edit view” This fixes https://dev.plone.org/plone/ticket/11686. [gotcha]
Fixed: “missing required icon in tabs in edit view” This fixes https://dev.plone.org/plone/ticket/11685. [gotcha]
Make wicked an optional dependency. (It is still pulled in by the Plone distribution.) [davisagli]
Fix import of RoleManager to avoid deprecation warning. [davisagli]
Update MigrationTool.getSoftwareVersion to return Products.CMFPlone version. [elro]
4.1b1 - 2011-03-06
Remove useless trailing slash in 404. This fixes http://dev.plone.org/plone/ticket/11550 [gotcha]
Remove invocation of do_search_collapse from advanced search form. It caused the function to run twice, making collapsibles wink rather than open. Fixes http://dev.plone.org/plone/ticket/11565 [smcmahon]
Use correct argument order in utranslate.py script. This fixes http://dev.plone.org/plone/ticket/10395 [fRiSi]
Add missing security declarations on PropertiesTool. [davisagli]
4.1a3 - 2011-02-14
Discontinue tagging plone_3rd party as a separate external. [esteele]
4.1a2 - 2011-02-10
On search form don’t show list of users when anonymous unless explicitly allowed in @@security-controlpanel. Fixes http://dev.plone.org/plone/ticket/11346 [msmith64]
Add fallback icon for control panels with no icon, in the portlet_prefs portlet. This fixes http://dev.plone.org/plone/tickets/11112. [topherh, davisagli]
Use the new optimized BooleanIndex for the is_default_page and is_folderish indexes and the new UUIDIndex for the UID index. [hannosch]
Remove js-generated inline style from searchbox. Same CSS is in public.css. Fixes http://dev.plone.org/plone/tickets/11186. [msmith64]
Use nocall: when getting the @@sitemap_view in sitemap.pt. [elro]
Hide plone.app.registry, z3c.form as an add-on options from the @@plone-addsite view, quickinstaller. [esteele]
Merge in PLIP #9288: Improved commenting infrastructure. Refs http://dev.plone.org/plone/ticket/9288 [timo]
Fixed handling of relative links used as default pages http://dev.plone.org/plone/ticket/11340 [fRiSi]
4.1a1 - 2011-01-18
Removing unused import from testCatalogTool. [thet]
Alphabetical ordering of metadata.xml dependencies. [thet]
Using tom gross’ improved and tested safeToInt version. [tom_gross, thet]
Move PlacefulWorkflow, kupu, iterate and openid to Plone egg dependencies. [elro]
Depend on plone.app.uuid for indexing content UUIDs. [toutpt, davisagli]
Added ++resource++blank.html, a building block for cross-domain iframe communication (e.g. with Disqus.) [elro]
Added iframe option for single sign on login templates. [elro]
Removed duplicate code in login templates. [elro]
Added ajax_include_head request parameter for use with cross domain iframe. [elro]
Single Sign On support in login forms. [elro]
Refactored URLTool.isURLInPortal, adding allow_external_login_sites property to site_properties for external sites considered to be internal for the purposes of logging in. [elro]
Improve table sort of ‘listing’ class tables. We can use a sortabledata-xxxx class in a cell (td) where xxxx is a sortable data value, then, sort uses xxxx value to compare cell values, instead of td text content. Refs http://dev.plone.org/plone/ticket10809 [thomasdesvenain]
Merge in PLIP #10901: Set and enforce base coding standards for our own JavaScript. Refs http://dev.plone.org/plone/ticket/10901 [esteele]
Removed IOrderedContainer-implementation from PloneFolder in favour of implementation in OFS.OrderSupport [tom_gross]
Renamed package to Products.CMFPlone. [elro]
Deprecated the following scripts that are only used by deprecated templates. These will be removed in Plone 5: prefs_group_edit.py, prefs_valid_search_restriction.py, prefs_user_group_search.py, prefs_portrait_delete.py. [davisagli]
Replaced the prefs_group_details.pt template with a browser view in plone.app.controlpanel. Ss a side effect this means group creation is now protected by the Plone Users and Groups control panel permission, rather than the CMF Manage Groups permission. [davisagli]
Turn plone_control_panel.pt into a deprecated alias for the @@overview-controlpanel view from plone.app.controlpanel. [davisagli]
Protect most control panels with specific permissions instead of the generic “Manage portal”. [davisagli]
Configure the Site Administrator role in the default rolemap and workflows. This role is intended for people who should have full content editing privileges but not Manager access (i.e. to the ZMI). [davisagli]
Updated to use Zope 2.13. [hannosch]
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.