获取帖子ID并显示图片

时间:2020-07-21 作者:pual

所以我正在制作一个分为两部分的网站,一部分是文本,另一部分是图像。我想做的是显示每个帖子的特定图片。我还使用了高级自定义字段来简化操作。所以我知道可以使用以下方式发布我的身份证:

global $post; echo $post->ID;

我不知道的是,如何显示对应的图像。

这是我的代码:

<?php 

$images = get_field(\'gallery\');
if( $images ): ?>
    <ul>    <div class="slide-photos" id="<?php $post->ID;?>" data-id="<?php $post->ID;?>"> 
        <?php foreach( $images as $image ): ?>
            <li>    
                <div class="photos-ind"><img id="<?php $post->ID;?>" class="slide-photos" src="<?php echo esc_url($image[\'sizes\'][\'thumbnail\']); ?>" data-id="<?php $post->ID;?>"/></div>
            </li>
        <?php endforeach; ?></div>
    </ul>
<?php endif; ?>
我也有javascript

    $(document).ready(function(){
  $(".exposition").on(\'click\',function(){

   var hello = $(this).attr(\'data-id\');
   $(\'.slide-photos\').hide();
   $(\'[id=\'+ hello + \']\').show();
   $(\'[id=\'+ hello + \']\').flickity({
 wrapAround: true, lazyLoad: 2, selectedAttraction: 0.1,
friction: 0.5, cellAlign: \'left\', adaptiveHeight: false, imagesLoaded: true, 
   });
   console.log(\'[id=\'+ hello + \']\');
 });

});

1 个回复
SO网友:Roel Magdaleno

据我所知get_field() 函数将根据当前帖子返回响应(无需指定帖子ID)。但如果要指定post ID,则必须在第二个参数中键入它,如:

get_field( $selector, $post_id );
因此,您的代码如下所示:

<?php

global $post;

$post_id = 0 !== $post->ID ? $post->ID : false;
$images  = get_field( \'gallery\', $post_id );

if ( $images ): ?>
// Your content.
<?php endif; ?>
不使用$post->ID 直接在第二个参数中,因为值可能是0 有时,如果WP\\U查询失败。如果发生这种情况,请使用false 以当前帖子为目标。

检查资源:

https://www.advancedcustomfields.com/resources/get_field/

相关推荐

主题中的unctions.php是否适用于所有模板?

我已经读了一段时间主题开发人员手册,也许最后我遇到了太多关于wordpress主题开发的问题。我已经很长时间没有在C#/Java背景下进行任何主题/php开发了。我想我只是想在开始使用wordpress之前有一个清晰的认识,这就是我想做的:为主站点创建一个页面,并将其设置为main,只查询一个类别。我想一个主题的功能就像前/后过滤器/挂钩的控制器创建另一个页面,但只允许某些自定义帖子类型,这一切都会通过函数完成。主题的php</如果这不是我想更好地了解的地方,我很抱歉。如果您需要在评论中进一步澄清,