Rules http://drupal.org/ project/rules
Ruleshttp://drupal.org/project/rules
Data selection
Loops
Examples
Mark as spam• Flag (Mark as spam)• Rules:oUnpublish spam commentoBlock spammeroNotify moderator about bad user
• Messages in spam log
Moderators' workflow• Fields:oModeration status fieldoUnpublish date field
• Fields permission • Rules for publishing and notification.• VBO and Rules for bulk operations• Message module for logging changes
Demo
Useful modules:
Rules Bonus Packhttp://drupal.org/project/rb
Aditional triggers, actions and conditions.
Views Bulk Operationshttp://drupal.org/project/views_bulk_operations
Run Your rules on the views-result.
Flaghttp://drupal.org/project/flag
Trigger rules on flag/unflag any item.
Rules Linkhttp://drupal.org/project/rules_link
Create links which trigger rules.
Page Managerhttp://drupal.org/project/ctools
User rules conditions to check access for page.
Content Accesshttp://drupal.org/project/content_access
Give role-based access to nodes with rules.
Relationhttp://drupal.org/project/relation
Work with related entities and create relations.
Difference in performance
Rules Custom module
Update user's name after account was updated. ~177,57 ms ~174,35 ms
Update user's name after node was viewed.
~230,5 ms ~193,06 ms
*Measurement was made on page load
Difference in performance
What does it mean?• ~40 ms additional page execution time• ~3 ms additional queries execution time• ~17 additional exuquted queries• ~3,5 mb additional RAM usage.
Development• Provide your own ations and conditions using :
o hook_rules_action_info() o hook_rules_condition_info()
• Define entity properties using hook_entity_property_info of the entity API
Use Rules because:• Rules is flexible• Rules is more clear for a customer• Rules intagrates with other modules• You can easily move needed functionality using
Features• Clicking is faster that writing a code
Useful Links• Code exampels: http://drupal.org/project/rules_example• Documentation: http://drupal.org/node/878720• Screencasts:
o http://nodeone.se/node/984o http://london2011.drupal.org/conference/sessions/rules-wa
y-lifeo http://www.youtube.com/watch?v=1itm3t0YMfw
• Moderations' workflow feature: https://github.com/yarroha/Workflow-feature
Questions?
Yaroslav Doroshukemail: [email protected]: yarrohatwitter: https://twitter.com/#!/yarrohablog: http://yarroha.name/