web-dev-qa-db-ja.com

カスタムループからthe_excerpt()への参照を取得する方法

私は、ループの外側にあるarchive.phpに、現在のカテゴリ(私の "blog"カテゴリ)に属する全ての投稿をリストするために関数get_blog_links()を呼び出すスクリプトを持っています。

私は "get_blog_excerpt()"関数の中で、投稿の抜粋または(抜粋が表示されていない場合は)最初の55単語の内容(the_excerpt)を書き出すために、トレーステストを行うことを試みています。

しかし、関数内でthe_excerptへの参照を取得できません。

任意の助けは大歓迎です。

//Blog Listing
function get_blog_links(){
    $myposts = get_posts();
    echo '<div>'; 
    echo '<ul>'; foreach($myposts as $idx=>$post){ ?>
            <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
  // THE FUNCTION CALL IM WORKING ON...
            <?php echo get_blog_excerpt();?></li>
    <?php } 
    echo '</ul></div>';
}


function get_blog_excerpt(){
    // return get_the_excerpt(); WORKS
    // return the_permalink();  WORKS
    // return the_excerpt(); DOES NOT WORK?
    // return get_the_content(); DOES NOT WORK?
}
1
Scott B

グローバル変数に依存するものを機能させるには、setup_postdata()get_posts()を一緒に使用する必要があると思います。あるいは、関数で明示的に投稿IDを渡します。

1
Milo