访问自定义侧栏中的the_post()内容

时间:2015-01-03 16:42:22

标签: php wordpress wordpress-plugin

我在single-legislacion.php页面中有这段代码:

<?php if ( have_posts() ) : ?>
    <?php while ( have_posts() ) : the_post(); ?>
        <h4><?php the_title(); ?></h4>
    <?php endwhile; ?>
<?php endif; ?>
<?php
$args = array(
    'order'       => 'ASC',
    'post_type'   => 'attachment',
    'post_parent' => $thePostID,
    'post_status' => 'inherit',
    'numberposts' => 1
);

$attachments = get_posts( $args );
if ( $attachments ) :
    foreach ( $attachments as $attachment ) : ?>
        <div class="BaseIco">
            <a class="IcoDescargas" href="<?php echo wp_get_attachment_url( $attachment->ID, true ); ?>">
                <img src="<?php echo get_template_directory_uri(); ?>/images/ico_descargas.png"><br>
                Descargar PDF
            </a>
        </div>
    <?php endforeach;
endif;
?>

因为我使用的是Table of Content Plus插件,并且找不到在the_content()本身之外显示生成的TOC的方法,所以我唯一的解决方案是通过侧边栏上的小部件显示它。现在,我的问题是:我是否可以在自定义侧边栏中访问the_post()内容,例如附件?怎么样?

如果有人知道任何变体在内容之外显示TOC,我可以优雅地分享它。

1 个答案:

答案 0 :(得分:1)

不,我不这么认为。 the_post()仅在循环内部工作,侧边栏通常在其外部呈现。

但是,您可以将get_post与全局$post一起使用,即:

global $post;

$p = get_post($post->ID);