Forums / General / Is Ez Publish 4.3 good for community based websites?

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.

eZ debug

Timing: Jan 29 2025 13:49:50
Script start
Timing: Jan 29 2025 13:49:50
Module start 'content'
Timing: Jan 29 2025 13:49:50
Module end 'content'
Timing: Jan 29 2025 13:49:50
Script end

Main resources:

Total runtime0.2381 sec
Peak memory usage2,048.0000 KB
Database Queries141

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0061 588.0703180.8203
Module start 'content' 0.00620.0059 768.890697.9922
Module end 'content' 0.01200.2260 866.8828526.1250
Script end 0.2380  1,393.0078 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.00351.4794200.0002
Check MTime0.00130.5437200.0001
Mysql Total
Database connection0.00060.257010.0006
Mysqli_queries0.194281.55511410.0014
Looping result0.00110.47761390.0000
Template Total0.225794.810.2257
Template load0.00080.321710.0008
Template processing0.224994.467410.2249
Override
Cache load0.00050.223810.0005
Sytem overhead
Fetch class attribute can translate value0.00050.225510.0005
XML
Image XML parsing0.00040.165910.0004
General
dbfile0.00522.1762200.0003
String conversion0.00000.002930.0000
Note: percentages do not add up to 100% because some accumulators overlap

CSS/JS files loaded with "ezjscPacker" during request:

CacheTypePacklevelSourceFiles
CSS0extension/community/design/community/stylesheets/ext/jquery.autocomplete.css
extension/community_design/design/suncana/stylesheets/scrollbars.css
extension/community_design/design/suncana/stylesheets/tabs.css
extension/community_design/design/suncana/stylesheets/roadmap.css
extension/community_design/design/suncana/stylesheets/content.css
extension/community_design/design/suncana/stylesheets/star-rating.css
extension/community_design/design/suncana/stylesheets/syntax_and_custom_tags.css
extension/community_design/design/suncana/stylesheets/buttons.css
extension/community_design/design/suncana/stylesheets/tweetbox.css
extension/community_design/design/suncana/stylesheets/jquery.fancybox-1.3.4.css
extension/bcsmoothgallery/design/standard/stylesheets/magnific-popup.css
extension/sevenx/design/simple/stylesheets/star_rating.css
extension/sevenx/design/simple/stylesheets/libs/fontawesome/css/all.min.css
extension/sevenx/design/simple/stylesheets/main.v02.css
extension/sevenx/design/simple/stylesheets/main.v02.res.css
JS0extension/ezjscore/design/standard/lib/yui/3.17.2/build/yui/yui-min.js
extension/ezjscore/design/standard/javascript/jquery-3.7.0.min.js
extension/community_design/design/suncana/javascript/jquery.ui.core.min.js
extension/community_design/design/suncana/javascript/jquery.ui.widget.min.js
extension/community_design/design/suncana/javascript/jquery.easing.1.3.js
extension/community_design/design/suncana/javascript/jquery.ui.tabs.js
extension/community_design/design/suncana/javascript/jquery.hoverIntent.min.js
extension/community_design/design/suncana/javascript/jquery.popmenu.js
extension/community_design/design/suncana/javascript/jScrollPane.js
extension/community_design/design/suncana/javascript/jquery.mousewheel.js
extension/community_design/design/suncana/javascript/jquery.cycle.all.js
extension/sevenx/design/simple/javascript/jquery.scrollTo.js
extension/community_design/design/suncana/javascript/jquery.cookie.js
extension/community_design/design/suncana/javascript/ezstarrating_jquery.js
extension/community_design/design/suncana/javascript/jquery.initboxes.js
extension/community_design/design/suncana/javascript/app.js
extension/community_design/design/suncana/javascript/twitterwidget.js
extension/community_design/design/suncana/javascript/community.js
extension/community_design/design/suncana/javascript/roadmap.js
extension/community_design/design/suncana/javascript/ez.js
extension/community_design/design/suncana/javascript/ezshareevents.js
extension/sevenx/design/simple/javascript/main.js

Templates used to render the page:

UsageRequested templateTemplateTemplate loadedEditOverride
1pagelayout.tpl<No override>extension/sevenx/design/simple/templates/pagelayout.tplEdit templateOverride template
 Number of times templates used: 1
 Number of unique templates used: 1

Time used to render debug report: 0.0001 secs