function render

Same name and namespace in other branches
  1. 7.x includes/common.inc \render()
  2. 8.9.x core/includes/common.inc \render()

Renders an element.

This function renders an element. The top level element is shown with show() before rendering, so it will always be rendered even if hide() had been previously used on it.

Parameters

$element: The element to be rendered.

Return value

\Drupal\Component\Render\MarkupInterface|null The rendered element.

Deprecated

in drupal:9.3.0 and is removed from drupal:10.0.0. Use \Drupal\Core\Render\RendererInterface::render() instead.

See also

https://www.drupal.org/node/2939099

\Drupal\Core\Render\RendererInterface

show()

hide()

1 call to render()
RenderDeprecationController::buildRenderFunction in core/modules/system/tests/modules/render_deprecation/src/RenderDeprecationController.php
20 string references to 'render'
Attachment::buildOptionsForm in core/modules/views/src/Plugin/views/display/Attachment.php
Provide the default form for setting options.
CacheFactoryTest::testCacheFactoryWithCustomizedDefaultBackend in core/tests/Drupal/Tests/Core/Cache/CacheFactoryTest.php
Tests that the cache factory falls back to customized default service.
CacheFactoryTest::testCacheFactoryWithDefaultBinBackend in core/tests/Drupal/Tests/Core/Cache/CacheFactoryTest.php
Tests that the cache factory uses the correct default bin backend.
CacheFactoryTest::testCacheFactoryWithDefaultSettings in core/tests/Drupal/Tests/Core/Cache/CacheFactoryTest.php
Tests that the cache factory falls back to the built-in default service.
CacheFactoryTest::testCacheFactoryWithSpecifiedPerBinBackend in core/tests/Drupal/Tests/Core/Cache/CacheFactoryTest.php
Tests that the cache factory picks the correct per-bin service.

... See full list

File

core/includes/common.inc, line 397

Code

function render(&$element) {
    @trigger_error('The render() function is deprecated in drupal:9.3.0 and is removed from drupal:10.0.0. Use \\Drupal\\Core\\Render\\RendererInterface::render() instead. See https://www.drupal.org/node/2939099', E_USER_DEPRECATED);
    if (!$element && $element !== 0) {
        return NULL;
    }
    if (is_array($element)) {
        // Early return if this element was pre-rendered (no need to re-render).
        if (isset($element['#printed']) && $element['#printed'] == TRUE && isset($element['#markup']) && strlen($element['#markup']) > 0) {
            return $element['#markup'];
        }
        show($element);
        return \Drupal::service('renderer')->render($element);
    }
    else {
        // Safe-guard for inappropriate use of render() on flat variables: return
        // the variable as-is.
        return $element;
    }
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.