Fine tune node permissions
The default CRUD + view operations on nodes can be fine tuned by using
/** * Implements hook_menu_alter(). */ function mymodule_menu_alter(&$items) { $items['node/%node/edit']['access callback'] = '_mymodule_node_edit_form_access'; } function _mymodule_node_edit_form_access($node) { if ($type == 'webform') { // Do some additional checks. return FALSE; } } // Otherwise use the default access rules. }
Note that this can be achieved in some cases by simply using hook_node_access() ...
Display errors - WSOD
The bootstrap override the values you could set to display error ad the reporting level. To be 100% sure everything is printed out when something fails in a blank screen (wsod), make index.php like this:
Properly render a field
Drupal offers a few (sometimes complicated...) solutions to output a field. Lets take an example with a date field.
To display the full rendered field: field_view_field()
Using once()
ensure ajax reload don't apply the behaviours for items already processed
Change the theme
Programmatically change the theme on runtime by implementing hook_custom_theme()
Manually clear caches
for views and panels
Add a Jquery ui library
get the library names to use in /misc/ui folder
Embed a custom page
Get the rendered output of a custom page created with page manager (ctools) module
Embed a mini panel
Get the html output of a mini-panel
alter / automatize the install process
in the .profile file of the install profile (here "mysnippet" profile)
Aegir: perform custom tasks after a new site is installed
in a custom module, in a file called mysnippet.drush.inc (keep in mind that the install process is handled by drush...)
- ‹ previous
- 4 of 5
- next ›