Is Ez Publish 4.3 good for community based websites?

Author Message

Stephen Milley

Saturday 21 August 2010 12:32:22 pm

I've recently read some reviews on Ez Publish and one of them mentioned that according to his research, the CMS is missing a community based system, such as one like Drupal. So, I was wondering, do they have any of this currently, or do they even have plans to add more community like features? I know that they have a forum and a blog system, currently. Thanks for any responses. :)

Steven E. Bailey

Sunday 22 August 2010 1:33:49 am

IMHO the off-the-shelf community features aren't really sufficient for a community based site... but, it is possible to make a nice community based site if you put a lot of time into it - take a look at the community site we've developed at:

http://www.labforculture.org/en/labforculture/browse

And of course this site share.ez.no is also a good example - but it took a lot of custom work too.

Certified eZPublish developer
http://ez.no/certification/verify/396111

Available for ezpublish troubleshooting, hosting and custom extension development: http://www.leidentech.com

*- pike

Wednesday 25 August 2010 2:00:58 am

.. but if you're going to give it a shot anyway, here's a few things to consider:

  • a community site usually has a lot more edits then a noninteractive site. ezpublish tries to keep a history of each edit, which a regular webuser wouldnt care about, but they can hog your database quickly. in a site with 5 languages, if a user does 5 edits on a node with 20 attributes, thats 500 records in the attribute table. so turn it down or try to avoid it at all. also reconsider if you want to give users ezp's concept of 'stored drafts' (like the button 'store and continue' below this message).
  • there will also be a lot more moving/renaming stuff than usual. ezpublish keeps a record of all previous locations of all nodes (so it can redirect to the new location if someone looks for the old one). that table (the urlalias table) may get a pain in the b*t - grow to big - get corrupted - slow things down. you may want to (try to) disable it. also consider if you really want to have multilingual urls, as this doubles/triples that table as well.
  • you really want to use caching if the site grows, but caching a community site is not so easy. while setting up the system, outline what can be cached and which updates should trigger what other updates where. you can have caching (blocks) based on classes/locations, and triggers up and down the node tree, so it can be done.
  • you can have nested user groups in ezp. any subgroup inherits permissions from the parent group, so there is a way to set up different levels of user profiles quite neatly.
  • this is probably not so ez specific, but if you have a multilingual community, you cant really be sure what language people are typing on the front end - it might not be one of the x languages of your site. so start of with a base language 'webspeak' or something, and add your sites language on top of that. that way, you'll never accidently show the french flag above user-added romanian content.

$2c,

*-pike

---------------
The class eZContentObjectTreeNode does.

Powered by eZ Publish™ CMS Open Source Web Content Management. Copyright © 1999-2014 eZ Systems AS (except where otherwise noted). All rights reserved.

eZ debug

Timing: Jan 18 2025 04:25:16
Script start
Timing: Jan 18 2025 04:25:16
Module start 'layout'
Timing: Jan 18 2025 04:25:16
Module start 'content'
Timing: Jan 18 2025 04:25:17
Module end 'content'
Timing: Jan 18 2025 04:25:17
Script end

Main resources:

Total runtime0.6894 sec
Peak memory usage4,096.0000 KB
Database Queries59

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0074 588.0391152.6406
Module start 'layout' 0.00740.0035 740.679739.4922
Module start 'content' 0.01090.6768 780.1719576.9375
Module end 'content' 0.68780.0016 1,357.109412.1250
Script end 0.6894  1,369.2344 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.00350.5017160.0002
Check MTime0.00130.1947160.0001
Mysql Total
Database connection0.00090.123710.0009
Mysqli_queries0.642693.2145590.0109
Looping result0.00060.0894570.0000
Template Total0.652894.720.3264
Template load0.00220.322220.0011
Template processing0.650694.367220.3253
Template load and register function0.00010.019910.0001
states
state_id_array0.00220.314210.0022
state_identifier_array0.00080.111020.0004
Override
Cache load0.00180.2583190.0001
Sytem overhead
Fetch class attribute can translate value0.00050.073230.0002
Fetch class attribute name0.00160.237340.0004
XML
Image XML parsing0.00080.122030.0003
class_abstraction
Instantiating content class attribute0.00000.001740.0000
General
dbfile0.00090.1351170.0001
String conversion0.00000.001040.0000
Note: percentages do not add up to 100% because some accumulators overlap

Templates used to render the page:

UsageRequested templateTemplateTemplate loadedEditOverride
1node/view/full.tplfull/forum_topic.tplextension/sevenx/design/simple/override/templates/full/forum_topic.tplEdit templateOverride template
3content/datatype/view/ezxmltext.tpl<No override>extension/community_design/design/suncana/templates/content/datatype/view/ezxmltext.tplEdit templateOverride template
4content/datatype/view/ezxmltags/paragraph.tpl<No override>extension/ezwebin/design/ezwebin/templates/content/datatype/view/ezxmltags/paragraph.tplEdit templateOverride template
1content/datatype/view/ezimage.tpl<No override>extension/sevenx/design/simple/templates/content/datatype/view/ezimage.tplEdit templateOverride template
1content/datatype/view/ezxmltags/li.tpl<No override>design/standard/templates/content/datatype/view/ezxmltags/li.tplEdit templateOverride template
1content/datatype/view/ezxmltags/ul.tpl<No override>design/standard/templates/content/datatype/view/ezxmltags/ul.tplEdit templateOverride template
1print_pagelayout.tpl<No override>extension/community/design/community/templates/print_pagelayout.tplEdit templateOverride template
 Number of times templates used: 12
 Number of unique templates used: 7

Time used to render debug report: 0.0001 secs