0

これは私のコードです(以下)。カテゴリID 4からのみ投稿を取得しようとしていますが、機能していますが、投稿コンテンツを取得していません。他のすべてを表示しています。

誰でもこれで私を助けることができますか?

<?php  get_header(); ?> 
<div id="content" class="fixed">
<?php
    echo '<div class="row fixed">';
        echo '<div class="col580 no-print">';

        global $post;
        $myposts = get_posts('category=4');
foreach($myposts as $post) :
?>
  <div class="post-item">
  <?php

    $src = null;
    $count = 0;

    $readmorelabel = get_option(EWF_SETUP_THNAME."_blog_read_more", __('&#8212; Read More', EWF_SETUP_THEME_DOMAIN));                   

        $count++;

        //## Get post classes
        //##
        $post_class = get_post_class();
        $post_class_fin = null;

        foreach($post_class as $key=> $ctclass){
            $post_class_fin.= ' '.$ctclass;
        }


        //## Get post categories
        //##
         get_the_category( $post->ID );

         $post_categories = null;
         foreach((get_the_category( $post->ID )) as $category) { 
            if ($post_categories == null){
                $post_categories.= '<a href="'.get_category_link( $category->term_id ).'" >'.$category->cat_name.'</a>';
            }else{
                $post_categories.= ', <a href="'.get_category_link( $category->term_id ).'" >'.$category->cat_name.'</a>';
            }
         }


        //## Get post featured image
        //##
        $image_id = get_post_thumbnail_id($post->ID);  
        $image_url = wp_get_attachment_image_src($image_id,'blog-featured-image');  


        $src .= '<div class="blog-post '.$post_class_fin.'">';

            $src .= '<div class="blog-post-date">'.get_the_time('d').' <span>'.get_the_time('M Y').'</span></div>' ;
            $src .= '<h3 class="blog-post-title"><a href="' . get_permalink() . '">'.get_the_title($post->ID).'</a></h3>' ;


            $src .= '<ul class="blog-post-info fixed">
                        <li class="categories">'.$post_categories.'</li>

                        <li class="comments"><a href="'.get_permalink().'#comments">'.get_comments_number().' '.__('Comments', EWF_SETUP_THEME_DOMAIN).'</a></li>
                     </ul>';

            if ($image_id){
                $src .= '<div><a href="'.get_permalink().'"><img class="blog-post-thumb" src="'.$image_url[0].'" width="480" height="200" alt="" /></a></div>';
            }

            global $more;
            $more = false;          
            $src .= '<p>'.do_shortcode(get_the_content('&nbsp;')).'</p>';   

            $more = true;

            $src .= '<div class="fixed"><p class="blog-post-readmore"><a href="'.get_permalink().'">'.$readmorelabel.'</a></p></div>';

            if ($wp_query_blog->post_count != $count ){
                $src .= '<div class="hr"></div>'; 
            } 

        $src .= '</div>';  




    if ($wp_query->found_posts > $wp_query->query_vars['posts_per_page']){
        $src .= ewf_sc_blog_navigation_steps($wp_query->query_vars['posts_per_page'], $wp_query);
        }

    echo $src;

?>



  </div>

<?php comments_template(); ?>
<?php endforeach; wp_reset_postdata(); 



        echo '</div>';

        echo '<div class="col280 last">';
            if ( !function_exists('dynamic_sidebar')  || !dynamic_sidebar('sidebar-page') );
        echo '</div>';


    echo '</div>'; 

?>

</div>

<?php   get_footer();  ?>
4

1 に答える 1

0

get_posts() を使用しているため、post_content を使用して投稿コンテンツを簡単に取得できます。

私はあなたがこれを使っているのを見ます

global $post;
$myposts = get_posts('category=4');
foreach($myposts as $post) :

グローバル変数をローカル変数として使用しないでください。そうすると、値が変更され、後で問題に直面する可能性があります。以下のようにしてください。

global $post;
$myposts = get_posts('category=4');
foreach($myposts as $mypost) :

この後、たとえばfor eachループ内の各投稿の詳細を簡単に取得できます

global $post;
$myposts = get_posts('category=4');
foreach($myposts as $mypost) :
  echo $mypost->post_title; // This gives you the post title
  echo $mypost->post_content; // This gives you the post content
endforeach;

上記から参照を試して、コードを試すことができます。

ベースライン: get_posts() を使用している場合、$variable->post_content; から投稿のコンテンツを取得できます。

それが役に立てば幸い!!!

于 2013-09-11T11:20:08.613 に答える