post in a lightbox?

时间:2013-05-10 作者:SoupOfStars

我安装了“lightbox plus colorbox”插件,我正在尝试从CPT通知中调用最新帖子。这些通知已经过期,所以我希望在主页上显示最新的警报。

迄今为止,ive\'e从谷歌学到了什么:

<?php
    $hotfoodpresent = get_posts( array(\'post_type\' => \'st_notice\', \'posts_per_page\' =>-1) );
    if($hotfoodpresent) echo \'<a class="lbp-inline-link-1 cboxElement" href="#"></a>

 <div style="display: none;">
   <div id="lbp-inline-href-1" style="padding:10px; background: #fff;">

 <?php if (have_posts()): while (have_posts()):the_post();
    wp_redirect(get_permalink());

    endwhile;
 endif; ?>

 </div>
</div>\'; ?>
但我想我走错了方向,因为我在弹出窗口中没有看到任何东西。

我不想使用插件,因为这个wordpress安装将保留在没有internet访问的本地网络上。

如果可以,请提前感谢您的帮助!

修订版2

 <div class="lbp-inline-link-1 cboxElement">

 <div style="display: none;">
 <div id="lbp-inline-href-1" style="padding:10px; background: #fff;">
 <?php if (have_posts()) : while (have_posts()) : the_post(); ?>

<div <?php post_class(); ?> id="post-<?php the_ID(); ?>">
    <h1><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h1>
    <?php the_content(); ?>
</div>
</div>
</div>
</div>

<?php  endwhile; ?>
 <?php  endif; ?>
修订版3

<div class="lbp-inline-link-1 cboxElement">
<div style="display: none;">
<div id="lbp-inline-href-1" style="padding:10px; background: #fff;">

   <?php
        $args = array(
          \'posts_per_page\' => 1,
          \'post_type\' => \'st_notice\'
                     );
       query_posts($args);
            if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
    <h1><?php the_title(); ?></h1>
    <?php the_content(); ?>
    <a href="<?php the_permalink(); ?>"><P>Please click here for further information </a></p>


</div>
   </div>
  </div>
</div>

<?php  endwhile; ?>
 <?php  endif; ?>

1 个回复
最合适的回答,由SO网友:Ralf912 整理而成

您的代码无法工作。首先,您的endwhile;endif 语句位于字符串内。它们将被打印出来,而不是执行。正确的格式化代码如下所示

$hotfoodpresent = get_posts( array(\'post_type\' => \'st_notice\', \'posts_per_page\' =>-1) );

if ( $hotfoodpresent )
    echo \'<a class="lbp-inline-link-1 cboxElement" href="#"></a>
            <div style="display: none;">
                <div id="lbp-inline-href-1" style="padding:10px; background: #fff;">\';

    if ( have_posts() ): while ( have_posts() ): the_post();
        wp_redirect( get_permalink() );
    endwhile;

    echo \'  </div>\';    
    echo \'</div>\';
endif;
但我仍然想知道这个代码块应该做什么

if ( have_posts() ): while ( have_posts() ): the_post();
    wp_redirect( get_permalink() );
endwhile;
之后wp_redirect() 您必须使用退出代码exit()die(). 但在使用之前wp_redirect(), 您不能打印任何内容。这将导致Headers already send 错误wp_redirect()not 在屏幕上打印任何内容。没有其他代码可以输出任何内容。如果灯箱打开了,你想看什么?

也许可以试试printf( \'<a href="%s">Redirect</a>\', get_permalink() ); 而不是wp_redirect()您将获得一个带有文本“重定向”的链接。

结束

相关推荐

自定义发布类型和Query_Posts的页面上的404

我花了很长时间才找到一个很好的解决方案,可以通过两个自定义元键来订购自定义帖子类型。当我最终让它工作时,我发现分页已经不起作用了。我尝试了在线找到的几十个不同的代码片段,但都没有修复我的唯一性。如果我能得到任何帮助,我将不胜感激,或者如果你认为重写可以奏效,请为我提供一个更好的方法来做到这一点的例子。我有一个名为“剧集”的自定义帖子类型。这些都有我想排序的季节和集号。存档剧集。phpif ( get_query_var(\'page\') ) { $paged = get_query_var(\'page