function drupal_set_content

You are here

4.7 common.inc drupal_set_content($region = null, $data = null)
5 common.inc drupal_set_content($region = NULL, $data = NULL)
6 common.inc drupal_set_content($region = NULL, $data = NULL)

Set content for a specified region.

Parameters

$region: Page region the content is assigned to.

$data: Content to be set.

4 calls to drupal_set_content()
drupal_get_content in includes/common.inc
Get assigned content.
install_task_list in ./install.php
Add the installation task list to the current page.
template_preprocess_block_admin_display_form in modules/block/block.admin.inc
Process variables for block-admin-display.tpl.php.
update_task_list in ./update.php
Add the update task list to the current page.

File

includes/common.inc, line 47
Common functions that many Drupal modules will need to reference.

Code

function drupal_set_content($region = NULL, $data = NULL) {
  static $content = array();

  if (!is_null($region) && !is_null($data)) {
    $content[$region][] = $data;
  }
  return $content;
}

Comments

What provides this functionality in Drupal 7?

Wondering as well. I'd like to do this in a forward compatible way.

My use care is programmatically inserting blocks into the closure that non-devs have access to edit.

You could use hook_page_alter() to insert any custom data into regions or hook_page_build()

This function has been renamed to drupal_add_region_content in Drupal 7.

Do the two arguments get set to NULL no matter what you pass into the function? Why does a set function return anything?