Hi.
i have 3 sidebars (siebar-1, sidebar-2, sidebar-3)
on page.php i have the following code: (here the sidebar should load)
...
<div class="col-lg-3 col-lg-offset-1">
<?php
$sidebar = get_field('sidebar');
dynamic_sidebar($sidebar);
?>
</div>
...
for pages i have the following acf: (return value)
Checkbox field with this options:
sidebar-1 : Sidebar Strom
sidebar-2 : Sidebar Gas
sidebar-3 : Sidebar Wärme
And i got the following error (frontend):
Warning: preg_match() expects parameter 2 to be string, array given in /wp-includes/formatting.php on line 1515
Warning: strip_tags() expects parameter 1 to be string, array given in /wp-includes/formatting.php on line 1967
Can not find my fault.
Looking at this I would guess that you’re returning “Both (Array)”. You need to either set the field to only return the value or use
$sidebar = get_field('sidebar');
dynamic_sidebar($sidebar['value']);
`
the checkbox field returned “value” but it doesnt work either…
Maybe because the snippet on page.php is outside the loop?
<div class="row">
<div class="col-lg-8 content-area">
<main id="main" class="site-main">
<?php
while ( have_posts() ) : the_post();
get_template_part( 'template-parts/content', 'page' );
endwhile; // End of the loop.
?>
</main><!-- #main -->
</div>
<div class="col-lg-3 col-lg-offset-1">
<?php
$sidebar = get_field('sidebar');
dynamic_sidebar($sidebar);
?>
test
</div>
</div>
More than likely, yes, you will need to get the post id and supply that in the ACF function. If this is on a single post template then it’s not too hard
// get the current post id
$queried_object = get_queried_object();
$post_id = $queried_object->ID;
then when you get the field
$sidebar = get_field('sidebar', $post_id);
The Answer:
I have put the Code inside the page loop and i have to change the code a little bit because the field type is checkbox…
<?php
$sidebars = get_field('sidebar');
if( $sidebars ):
?>
<?php foreach( $sidebars as $sidebar ): ?>
<?php dynamic_sidebar($sidebar); ?>
<?php endforeach; ?>
<?php endif; ?>
The topic ‘Choose sidebar for page with checkbox field’ is closed to new replies.
Welcome to the Advanced Custom Fields community forum.
Browse through ideas, snippets of code, questions and answers between fellow ACF users
Helping others is a great way to earn karma, gain badges and help ACF development!
We use cookies to offer you a better browsing experience, analyze site traffic and personalize content. Read about how we use cookies and how you can control them in our Privacy Policy. If you continue to use this site, you consent to our use of cookies.