Filter: bricks/frontend/render_data
The filter allows you to modify the rendered content for different areas like header, content, and footer before it’s displayed on the frontend.
add_filter( 'bricks/frontend/render_data', function( $content, $post, $area ) { // Do something
return $content;}, 10, 3 );The filter callback receives three parameters:
$content: The HTML content that’s about to be returned. It’s a string type.$post: The post object for which the content is being generated. It’s an instance of the WP_Post class.$area: A string defining the area of the page currently being rendered (e.g., ‘header’, ‘content’, ‘footer’). Available since version 1.5.4.
Example: Add a unique ID to each heading
Section titled “Example: Add a unique ID to each heading”The following example demonstrates how to add a unique ID attribute to each heading in the generated content.
add_filter('bricks/frontend/render_data', function($content, $post, $area) { // Iterate over each heading tag $content = preg_replace_callback( '/(<h[1-6](.*?))>(.*?)(<\/h[1-6]>)/i', function($matches) { // Add 'id' attribute if it doesn't exist if (strpos($matches[2], 'id=') === false) { // Use heading's content as the ID $matches[0] = $matches[1] . ' id="' . sanitize_title($matches[3]) . '">' . $matches[3] . $matches[4]; }
// Return the (potentially) modified heading tag return $matches[0]; }, $content // Content to modify );
// Return modified content return $content;}, 10, 3);In this example, a callback function is defined within the add_filter function call targeting the bricks/frontend/render_data filter. This callback function modifies every heading tag present in the content to include a unique ID attribute. This can be useful for navigation purposes, such as creating a table of contents.
Was this helpful?
A quick vote and short notes help us improve these docs faster.
Leave a note for us
Please do not include passwords, license keys, or personal data. We store submitted notes to improve the docs.
Thanks for sharing feedback. We're using it to improve these docs.