【问题标题】:ACF Background ImagesACF 背景图片
【发布时间】:2018-10-11 05:35:18
【问题描述】:

我有一个从 ACF 获取数据的 wordpress 网站。该网站的主页有 6 个帖子,其背景图片可以延伸到屏幕的高度。 我想在网站主页中添加另一个帖子/部分。但是当我这样做时,所有图像都会从背景中消失。 谁能帮我这个? 这些是我的代码;

function bannerLoad(){
     var getHeight = $(window).height();
    $(".home-banner").css('height', getHeight);

    $('.home-banner').each(function(){
        var homebannerid = $(this).attr('id');
        var imgsrc = $(this).find('img.slide-img').attr('src');
        $("#"+homebannerid).backstretch(imgsrc, {speed: 300});
    });

首页

            <?php
            /*
            Template Name: Homepage Template
            */

            get_header(); ?>
            <?php
            $args = array('post_type' => 'home_post','order' => 'ASC','posts_per_page' => -1); 
            $custom_posts = get_posts($args);
            $i=0;
            foreach($custom_posts as $post) : setup_postdata($post);
                $title = get_the_title();
                $title = str_replace(" ","",$title);
                $banner_image = get_field('banner_image'); 
                $link_target = get_field('select_pagelink_target');
            ?>
            <div class="pagename" id="home-page"></div>
            <div id="banner-slide<?php echo $i; //strtolower($title);?>" class="home-banner">
                <div class="banner-caption-wrap">
                    <div class="banner-caption">
                        <h3><?php echo get_the_title();?></h3>
                        <p><?php echo worthy_limited_excerpt(get_the_ID(),'30'); //the_content();?></p>
                        <?php
                            if($link_target == '') {
                                $target = '';
                            }else{
                                $target = 'target="_'.$link_target.'"';
                            }
                        ?>  
                        <a  <?php echo $target ?> href="<?php echo $page_link = get_field('page_link');?>"><?php echo $link_title = get_field('link_title'); ?></a>
                        <!-- LINK TEXT -->
                    </div>
                </div>
                <?php //home_post_images
                //echo $banner_image;
                 if( $banner_image ){ ?>
                    <img  src="<?php echo $banner_image; ?>" alt="" class="slide-img" />
                <?php }     
              ?>
</div>
<?php 
$i++;
endforeach;?>
<div class="next_btn_wrap">
    <a href="#" class="next_btn"><?php _e( 'Next', 'alainclub' ); ?></a>
</div>
<script type="text/javascript">
    bannerLoad();

</script>

<?php get_footer(); ?>

主页的 CSS sn-p:

                /* Home Banner 
                ------------------------------------------------*/
                .slide-img{display: none;}
                .backstretch{background: #1d082b;}
                .home-banner{background: #1d082b; height: 1024px;}
                /* Banner Caption */
                .banner-caption-wrap { margin: 0 auto;  max-width: 1200px;  width: 100%; position: relative;}
                .home-banner .banner-caption
                {color: #fff; position: absolute; width:585px; left:0; padding:40px; top:124px;
                background: -moz-linear-gradient(top,  rgba(0,0,0,0.85) 0%, rgba(0,0,0,0) 100%); 
                background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,0,0,0.85)), color-stop(100%,rgba(0,0,0,0)));
                background: -webkit-linear-gradient(top,  rgba(0,0,0,0.85) 0%,rgba(0,0,0,0) 100%);
                background: -o-linear-gradient(top,  rgba(0,0,0,0.85) 0%,rgba(0,0,0,0) 100%); 
                background: -ms-linear-gradient(top,  rgba(0,0,0,0.85) 0%,rgba(0,0,0,0) 100%);
                background: linear-gradient(to bottom,  rgba(0,0,0,0.85) 0%,rgba(0,0,0,0) 100%);
                filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a6000000', endColorstr='#00000000',GradientType=0 );
                }
                .home-banner .banner-caption p { color:#fff; font-weight:normal; font-size:15px; line-height:24px; margin-bottom:0; height: 75px;}
                .home-banner .banner-caption a { background:rgba(90, 38, 124, 0.86) none repeat scroll 0 0; text-decoration:none; font-size:24px; padding:15px 40px; color:#fff; border:2px solid #fff; display:inline-block; margin-top:35px; text-transform:uppercase;}
                .home-banner .banner-caption h3 { margin-top:20px; background:url(../images/brand-icon.png) no-repeat 0 top ; color:#fff; font-size:45px; font-weight:bold; padding-top:50px; text-transform:uppercase; margin-bottom:20px;}

                #banner-slide2 .banner-caption h3 span { font-size:47px; color:#fff;}
                /* Banner Mouse Btn */
                .next_btn_wrap { position:fixed; width:100%; text-align:center; left:0; bottom:0;}
                .next_btn_wrap a.next_btn { display:inline-block; width:16px; height:25px; overflow:hidden; text-indent:-50px; background:url(../images/click_mouse.png) no-repeat 0 0;}

【问题讨论】:

    标签: javascript wordpress image loops advanced-custom-fields


    【解决方案1】:

    只需复制过去此代码并尝试 更新

         <?php
        /*
        Template Name: Homepage Template
        */
     get_header(); ?>
                <?php
                $args = array('post_type' => 'home_post','order' => 'ASC','posts_per_page' => -1); 
                $custom_posts = get_posts($args);
                $i=0;
                foreach($custom_posts as $post) : setup_postdata($post);
                    $title = get_the_title();
                    $title = str_replace(" ","",$title);
                    $banner_image = get_field('banner_image',get_the_ID()); 
                    $link_target = get_field('select_pagelink_target',get_the_ID());
                ?>
                <div class="pagename" id="home-page"></div>
                <div id="banner-slide<?php echo $i; //strtolower($title);?>" class="home-banner">
                    <div class="banner-caption-wrap">
                        <div class="banner-caption">
                            <h3><?php echo get_the_title();?></h3>
                            <p><?php echo worthy_limited_excerpt(get_the_ID(),'30'); //the_content();?></p>
                            <?php
                                if($link_target == '') {
                                    $target = '';
                                }else{
                                    $target = 'target="_'.$link_target.'"';
                                }
                            ?>  
                            <a  <?php echo $target ?> href="<?php echo $page_link = get_field('page_link');?>"><?php echo $link_title = get_field('link_title'); ?></a>
                            <!-- LINK TEXT -->
                        </div>
                    </div>
                    <?php //home_post_images
                    //echo $banner_image;
                     if( $banner_image ){ ?>
                        <img  src="<?php echo $banner_image; ?>" alt="" class="slide-img" />
    
                </div>
                <?php }   
                    endforeach;
                  ?>
    

    【讨论】:

    • 非常感谢您的回复。我已经尝试了代码,但它似乎不适用于我的网站。
    • 我已经更新了代码并使用了您提供给我的代码。它不会从自定义帖子中获取图像。我真的不知道我的网站有什么问题。
    • 请访问alainc.msf.ae 每个部分都应该有背景图片。这是我网站的沙盒环境。
    • 嗨@Nik,我已经复制粘贴了代码,所有部分都从网站上消失了。标题在那里,但自定义帖子不在那里。
    • 您的代码是正确的,但只是发出未关闭
      请验证开始和关闭所有标签,我刚刚更新了新代码试试这个
    猜你喜欢
    • 2020-03-29
    • 1970-01-01
    • 1970-01-01
    • 2016-12-11
    • 2013-08-16
    • 1970-01-01
    • 2019-03-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多