【问题标题】:prettyPhoto on a Wordpress featured imageWordPress 特色图片上的 prettyPhoto
【发布时间】:2018-01-14 22:49:32
【问题描述】:

我对此很陌生,并试图搜索很多关于此的内容,由于错误的 PHP 代码,我的网站多次崩溃,所以这就是交易。

我有一个包含作品集帖子的 Wordpress 页面。在这些帖子中,唯一显示的图像是特色图像。因此,当我点击那张精选照片时,我的 prettyPhoto 插件不会显示灯箱。

首先我有这段代码...

<?php
if ( has_post_thumbnail() ) {
the_post_thumbnail();
}
?>

...它显示了特色图片但没有显示灯箱,因此无法点击。然后我玩弄并创建了这个:

<?php if ( has_post_thumbnail()) : ?>
<a class="lightbox_single_portfolio" title="<?php echo esc_attr($title); ?>" 
href="<?php echo esc_url($image_src); ?>" data-
rel="prettyPhoto[single_pretty_photo]">
<?php the_post_thumbnail(); ?>
</a>
<?php endif; ?>

所以特色图片可以点击,灯箱开始打开,但出现“无法加载图片。确保路径正确且图片存在”的错误。因此,我对自己说,问题可能是灯箱没有加载正确的图像源。

我尝试多玩一点,并尝试这样做...

<?php 
if ( has_post_thumbnail()) {
$featured_img_url = get_the_post_thumbnail_url(get_the_ID(),'full');
echo '<a class="lightbox_single_portfolio" href="'.esc_url($image_src).'" data-rel="prettyPhoto[single_pretty_photo]">'; 
the_post_thumbnail('thumbnail');
echo '</a>';
endif;?>

... aaaand 它破坏了我的网站。 可能是什么问题?

【问题讨论】:

    标签: php wordpress


    【解决方案1】:

    你没有关闭 If 语句,

    endif; 更改为}

    【讨论】:

    • 这使我的代码工作,但它仍然显示路径错误。但这个问题就在我身边。还是谢谢!
    【解决方案2】:

    好吧,我将发布一个答案,因为我在互联网上发现了一些东西,它使我的代码工作。虽然上面的答案(将 endif; 更改为 })确实使我的代码工作,但它仍然显示找不到路径的相同错误。

    我又玩了一会儿,结果成功了:

     <?php 
     if ( has_post_thumbnail()) {
       $large_image_url = wp_get_attachment_image_src( get_post_thumbnail_id(), 'full');
       echo '<a rel="prettyPhoto" href="' . $large_image_url[0] . '" title="' . the_title_attribute('echo=0') . '" >';
       the_post_thumbnail();
       echo '</a>';
     }
     ?> 
    

    因此 PHP 调用 $large_image_url 而不是帖子缩略图 url。 这成功了,而且有效!它在灯箱中显示了我的特色图片:)

    【讨论】:

      猜你喜欢
      • 2014-11-22
      • 2019-07-31
      • 2016-08-14
      • 2015-04-28
      • 2014-09-28
      • 2014-10-22
      • 1970-01-01
      • 2015-07-17
      • 2014-05-13
      相关资源
      最近更新 更多