Advertisement
Guest User

Untitled

a guest
Jul 27th, 2016
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.93 KB | None | 0 0
  1. <?php
  2.  
  3. /**
  4. * Defines a theme callback function per registered path.
  5. */
  6. function MODULENAME_menu_alter(&$items) {
  7. $items['node/%node']['theme callback'] = 'MODULENAME_default_node_theme';
  8. $items['node/%node/edit']['theme callback'] = 'MODULENAME_edit_node_theme';
  9. $items['node/%node/edit']['theme arguments'] = array(1);
  10. }
  11.  
  12.  
  13. /**
  14. * Theme name callback: without parameters.
  15. */
  16. function MODULENAME_default_node_theme() {
  17. return 'garland';
  18. }
  19.  
  20.  
  21. /**
  22. * Theme name callback: with parameters.
  23. */
  24. function MODULENAME_edit_node_theme($node) {
  25. return $node->type == 'page' ? 'seven' : MODULENAME_default_node_theme();
  26. }
  27.  
  28.  
  29. /**
  30. * Use hook_custom_theme() if the choice of theme doesn't depend on the path.
  31. */
  32. function MODULENAME_custom_theme() {
  33.  
  34. //Example: Changes the theme name depending if the user has a special role or not.
  35. global $user;
  36. if (in_array(variable_get('MODULENAME_special_role', 0), array_keys($user->roles))) {
  37. return 'bartik';
  38. }
  39. }
  40.  
  41. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement