php WordPress中带有目标URL的右侧边栏图像

8gsdolmq  于 2023-02-28  发布在  PHP
关注(0)|答案(1)|浏览(119)

在我们的WordPress主题中,我们为知识库定义了分类文章类别页面。基本上是一个概览页面。概览页面中的元素之一是页面右侧的侧边图像。
你应该能够插入一个图像和插入一个目标URL,点击它就可以打开页面。但是,它并没有完全按照它应该的方式工作。
有两件事不太顺利:
1.如果您在后端输入URL但不上传图像,它会自动抓取默认横幅。

  1. URL未正确放置在图像之后。图像不可单击。
    见php的右部分元素如下
<div class="rightPart">
            <?php
            $sidebar_image = get_field('sidebar_image');
            if($sidebar_image){
                $sidebar_image_url     = $sidebar_image['url'];
                $sidebar_image_title   = $sidebar_image['title'];
                $sidebar_image_alt     = $sidebar_image['alt'];
                $sidebar_image_caption = $sidebar_image['caption'];
            }
            $sidebar_image_link = get_field('sidebar_image_link');
            if( $sidebar_image_link ){
                $promo_link_url   = $sidebar_image_link['url'];
                $promo_link_title = $sidebar_image_link['title'];
                $promo_link_target= $sidebar_image_link['target'] ? $sidebar_image_link['target'] : '_self';
                ?>
                <a target="<?php echo $promo_link_target; ?>" href="<?php echo esc_url( $promo_link_url ); ?>" title="<?php echo $promo_link_title; ?>" >
                    <?php
                    if($sidebar_image){
                        ?>
                        <img src="<?php echo $sidebar_image['url']; ?>" width="<?php echo $sidebar_image['width']; ?>" height="<?php echo $sidebar_image['height']; ?>" title="<?php echo $sidebar_image['title']; ?>" alt="<?php echo $sidebar_image['title']; ?>">
                        <?php
                    } ?>
                </a>
                <?php
            }
            else
            {
                ?>
                <?php
                if($sidebar_image){
                    ?>
                    <img src="<?php echo $sidebar_image['url']; ?>" width="<?php echo $sidebar_image['width']; ?>" height="<?php echo $sidebar_image['height']; ?>" title="<?php echo $sidebar_image['title']; ?>" alt="<?php echo $sidebar_image['title']; ?>">
                    <?php
                }?>
                <?php
            } ?>
        </div>

我快速地看了一下。Sidebar_Image_Link返回了一个空字符串。然后我在WordPress中查看了这些字段的定义位置。
我们显然使用高级自定义字段插件。在那里,我们为这个部分创建了两个字段组:
1.母条目
1.子条目
这两个字段组都有一个名为:边栏_图像_链接
接下来会发生什么呢?当我在这个字段中填入一个父条目和一个子条目的链接时,它会为这两篇文章返回sidebar_image_link;但是当我从子条目中删除链接时,它会为父条目返回一个空字符串。
应该是这样的,我们可以分别为父代和子代输入这个值,有些地方不对劲,但我不能指出哪里出了问题。

rt4zxlrg

rt4zxlrg1#

$sidebar_image_link = get_field('sidebar_image_link');

此值将导致布尔值为false。请调试此语句以进行检查。

相关问题