Hopefully this will help. What I’ve done is create a Widget Block with custom fields. I then set it up (thanks to the help of James at ACF) to where the display of the Widget Block can be controlled on certain pages.
FIRST:
Create Field in Field Group called ‘excluded_pages_field’
Field Type: Post Object
Filter by Post Type: Page
Return Format: Post Object
Inside Widget Block, choose pages to prevent display of widget block
SECOND:
Add $excluded variable, global $post, and if $excluded statement prior to posting of custom field data
The ‘1368’ is the actual ID of the Widget Block using the Custom Field.
LASTLY:
end conditional statement with <?php } ?>
(Your code is going to be different than mine when it comes to posting the data, but I think you would get the idea on the use of the variables and Widget Block ID setup):
<?php
$excluded = get_field('excluded_pages_field', 1368, false);
global $post;
if( $excluded && !in_array($post->ID, $excluded) ){
// vars
$eventcontent = get_field('event_content', 1368);
$moredetails = get_field('more_details', 1368);
$eventimage = get_field('event_image', 1368);
if(!empty($eventcontent) ): ?>
<section class="boldSection gutter btBottomVertical btParallax">
<div class="specialevent" style="background: linear-gradient(to right, rgba(255,255,255,1) 0%,rgba(255,255,255,1) 16%,rgba(255,255,255,1) 50%,rgba(255,255,255,0.01) 52%,rgba(255,255,255,0) 55%), url(<?php echo $eventimage; ?>); background-size: cover!important; background-repeat: no-repeat!important; background-position: right center!important;">
<div class="col-sm-6">
<header class="header btDash bottomDash">
<div class="dash">
<h2>
<span class="headline">Special Event</span>
</h2>
</div>
</header>
<?php echo $eventcontent; ?>
<a href="<?php echo $moredetails; ?>" class="btBtn btBtn btnOutlineStyle btnAccentColor btnBig btnHalfWidth btnRightPosition btnNoIcon"><span class="btnInnerText">More Details</span></a><a href="about/season-tickets/" class="btBtn btBtn btnOutlineStyle btnAccentColor btnBig btnHalfWidth btnRightPosition btnNoIcon"><span class="btnInnerText">Get Tickets</span></a>
<div class="btClear btSeparator topSemiSpaced noBorder"><hr></div>
</div>
</div>
</section>
<?php endif; ?>
<?php } ?>
I hope this helps! The guys at ACF have been EXTREMELY patient and helpful.
-
This reply was modified 7 years, 10 months ago by toad78.