0

themeforest のテンプレートを使用してホームページにスライダーを追加しようとしていますが、サポートがありません。

次のコードをヘッダーに追加しています。

<?php get_template_part ( 'includes/featured/featured-call'); ?>

このコードは featuring-call.php を呼び出し、そこから次のような flexislider.php という別のファイルが呼び出されます。

<section>
<div class="spaced-wrap clearfix">
    <div class="flexslider-container clearfix">
        <div class="flexslider-loader">
            <div class="flexslider">
            <ul class="slides">
                <?php
                $captioncodes="";
                $count=0;
                query_posts( array( 'post_type' => 'mtheme_featured', 'showposts' => -1, 'orderby' => 'menu_order', 'order' => 'ASC') );
                ?>
                <?php if( have_posts() ) : while( have_posts() ) : the_post(); ?>

                <?php
                $image_id = get_post_thumbnail_id(($post->ID), 'full'); 
                $image_url = wp_get_attachment_image_src($image_id,'full');  
                $image_url = $image_url[0];

                $custom = get_post_custom(get_the_ID());
                $featured_description="";
                $featured_link="";

                if ( isset($custom["featured_bigtitle"][0]) ) $featured_bigtitle=$custom["featured_bigtitle"][0];

                if ( isset($custom["featured_description"][0]) ) { $featured_description=$custom["featured_description"][0]; }
                if ( isset($custom["featured_link"][0]) && $custom["featured_link"][0]<>"" ) { 
                    $featured_link=$custom["featured_link"][0];
                    } else {
                    $featured_link = get_post_permalink();
                }

                //$textblock=$featured_description;
                $title=get_the_title(); 
                $text=$featured_description;
                $permalink = $featured_link;
                $count++;
                ?>
                <li>
                <a href="<?php echo $permalink; ?>">
                    <img src="<?php echo $image_url; ?>" alt="<?php the_title(); ?>" />
                </a>
                <?php

                $titlecode ='<div class="flex-title"><a href="'.$permalink. '">' .$title . '</a></div>';
                $captioncodes ='<div class="flex-caption">' . $text . '</div>';
                $bigtitle='<div class="flex-bigtitle"><a href="'.$permalink. '">'.$featured_bigtitle.'</a></div>';

                echo '<div class="flex-caption-wrap">';
                echo $titlecode;
                echo $captioncodes;
                echo $bigtitle;
                echo '</div>';

                ?>
                </li>
                <?php                   
                endwhile; endif; 
                ?>
            </ul>
          </div>
      </div>
    </div>
</div>

私が抱えている問題は、これが機能すると、スライダーがホームページへの投稿として読み込まれ、選択したページ (ホーム) の代わりに読み込まれることです。「get_template_part」を header.php から削除すると、ページは正常に読み込まれます。そうしないと、スライダーが投稿として表示され、wordpress で読み込んで選択したページが表示されません。

私のウェブサイトはhttp://van-london.com/です

4

1 に答える 1

0

やった!

必要なのは、「get_template_part」の後のこのコードだけでした

<?php wp_reset_query(); ?>

終わり!:)

于 2013-09-11T11:15:59.627 に答える