panelizer.api.php in Panelizer 7.3
Same filename and directory in other branches
Documentation for Panelizer's hooks.
File
panelizer.api.phpView source
<?php
/**
* @file
*
* Documentation for Panelizer's hooks.
*/
/**
* Allow panelizer_defaults_override to be customized.
*
* Primarily for use by Features Overrides.
*/
function hook_panelizer_defaults_override_alter(&$items) {
}
/**
* Add operations to Panelizer objects.
*
* Operations can be performed on panelizer defaults as well as entities.
* Panelizer provides the 4 default operations, but modules can add
* additional operations to add additional functionality.
*
* Data can be stored in $panelizer->extra which is a serialized array.
* Modules should be sure to namespace their keys in this extra to avoid
* collisions.
*
* Each operation supports the following keys:
* - 'menu title': The title to use in menu tab entries. This will be
* translated by the menu system, so do not t() it.
* - 'link title': The title to use in links. This will not be translated by
* the menu system, so t() it. In Drupal, the link title is typically in
* lower case when the tab would be in upper case, so this will not quite
* match the menu title.
* - 'entity callback': If not using the normal operation hook on the object,
* put this may be a function callback. It will receive the following args:
* $handler, $js, $input, $entity, $view_mode.
* - 'admin callback': The callback to use when editing a panelizer default.
* It will receive the following arguments: $handler, $bundle, $name,
* $view_mode.
* - 'file path': A 'file path' entry to be used for hook_menu entries.
* - 'file': A 'file' entry to be used for hook_menu entries.
*/
function hook_panelizer_operations_alter(&$operations) {
$operations['example'] = array(
'menu title' => 'Example',
'link title' => t('example'),
'entity callback' => 'mymodule_panelizer_example_entity_page',
'admin callback' => 'mymodule_panelizer_example_admin_page',
);
}
/**
* Allow panelizer_entity_plugin_process to be customized.
*/
function hook_panelizer_entity_plugin_process_alter(&$plugin, $info) {
}
/**
* Allow the links on the Overview page to be customized.
*/
function hook_panelizer_overview_links_alter(&$links_array, $entity_type, $context) {
}
/**
* Act on default objects just before they're deleted.
*
* @param object $panelizer
* The panelizer default object.
*/
function hook_panelizer_delete_default($panelizer) {
db_delete('example_something')
->condition('name', $panelizer->name)
->execute();
}
/**
* Adjust access to the Panelizer administrative interface beyond the standard
* permissions options.
*
* @param string $op
* The operation currently being performed.
* @param string $entity_type
* The type of entity to which the operation is related.
* @param string|object $bundle
* Either the entity's bundle name or the entity object itself, will vary
* depending upon how it is called.
* @param string $view_mode
* The view mode of the entity related to this operation.
* @param object $entity
* The entity that access is being checked for.
*
* @return bool
* Whether or not the user has permission to perform this $op.
*/
function hook_panelizer_access($op, $entity_type, $bundle, $view_mode, $entity) {
}
/**
* Allow modules to alter the defined panelizer access definitions.
*
* @param array $panelizer_access
* An array of panelizer access options. If any are true, this will return
* true. Set $panelizer_access equal to an empty array to return false.
* @param $options
* drupal_alter() can only handle so many parameters. In order to pass the
* same parameters that are passed in hook_panelizer_access, the params are
* placed into an $options array. Expected keys are:
* - op
* - entity_type
* - bundle
* - view_mode
* - entity
*/
function hook_panelizer_access_alter(&$panelizer_access, $options) {
}
/**
* Modify a Panelizer object when it is cloned and before it is saved.
*
* @param object $panelizer
* The Panelizer object being cloned.
*
* @see fieldable_panels_panes_panelizer_clone_panelizer()
*/
function hook_panelizer_clone_panelizer(&$panelizer) {
foreach ($panelizer->display->content as $pid => $pane) {
if ($pane->type == "fieldable_panels_pane") {
}
}
}
Functions
Name | Description |
---|---|
hook_panelizer_access | Adjust access to the Panelizer administrative interface beyond the standard permissions options. |
hook_panelizer_access_alter | Allow modules to alter the defined panelizer access definitions. |
hook_panelizer_clone_panelizer | Modify a Panelizer object when it is cloned and before it is saved. |
hook_panelizer_defaults_override_alter | Allow panelizer_defaults_override to be customized. |
hook_panelizer_delete_default | Act on default objects just before they're deleted. |
hook_panelizer_entity_plugin_process_alter | Allow panelizer_entity_plugin_process to be customized. |
hook_panelizer_operations_alter | Add operations to Panelizer objects. |
hook_panelizer_overview_links_alter | Allow the links on the Overview page to be customized. |