1

(特定のカテゴリの) Wordpress ループを使用して、注目の画像、リンク、および抜粋を取得し、スライドショー JS の Ultimate Fade に入力しようとしています。コードは正しい形式と構文を出力し、2 つの投稿へのリンクを正しく表示します。ただし、このコードは注目の画像をループしていません。同じ画像間で 2 回フェードするようです。

現在、この特定のカテゴリには 2 つの投稿があり、どちらも画像がおすすめとして設定されています。各投稿には抜粋もあります。

すべてのドキュメント (fadeslideshow.js および jQuery) はヘッダーで正しくリンクされており、Safari の Web インスペクターを使用してコードを確認すると、動的ドライブ スクリプトは透明度の変化を示します。同じ画像間で切り替えているだけなので、何も起こっていないように見えます。

以下のコードは、ヘッダーで呼び出される別の .php ドキュメントにあります。

<script type="text/javascript">
<?php query_posts('cat=7'); ?> //queries posts only from featured category
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>

var mygallery=new fadeSlideShow({ 
wrapperid: "fadeshow", //ID of blank DIV on page to house Slideshow
dimensions: [585, 350], //width/height of gallery in pixels. Should reflect dimensions of largest image
imagearray: [

<?php   $thumbnails = get_posts('posts_per_page=5'); //adding category=7 here breaks code
        $my_excerpt = get_the_excerpt();
        $url = wp_get_attachment_url( get_post_thumbnail_id($post->ID) ); 
        $total = count($thumbnails); //this is to count the number of thumbnails in foreach loop to NOT add a comma to the last one
        $i=1;

        foreach ($thumbnails as $thumbnail) {
        if ( has_post_thumbnail($thumbnail->ID)) {
        $i++;

         echo '["'.$url.'","'.get_permalink( $thumbnail->ID ).'","","'.$my_excerpt.'"]'; //This spits out the exact correct code
         if ($i != $total) { echo', '; }//this is to count the number of thumbnails in foreach loop to NOT add a comma to the last one

 }} ?>
],

displaymode: {type:'auto', pause:3000, cycles:0, wraparound:false},
persist: false, //remember last viewed slide and recall within same session?
fadeduration: 500, //transition duration (milliseconds)
descreveal: "ondemand",
togglerid: ""
})

<?php endwhile; endif; ?> //This ends the wordpress loop
<?php wp_reset_query(); ?>

</script>

Dynamic Drive の Ultimate Fade in Slide ショーの情報はこちら: http://www.dynamicdrive.com/dynamicindex14/fadeinslideshow.htm

私のコードはこのウェブサイトにあります: http://johnharvey.hsjjr.net

wp_get_attachment_image_src も使用しようとしましたが、成功しませんでした。

Google、Dynamic Drive フォーラム、Wordpress Codex を徹底的に検索しましたが、他に試すものは見つかりませんでした。おそらく、他に何を探すべきかを知るには、何がうまくいかないのかについて十分な情報が得られていないと思います. これにはかなり簡単な解決策があると思いますが、何が問題なのかを知る経験がありません。

あなたの助けと知識をありがとうございました!

4

1 に答える 1

0

なぜこれが機能したのか完全にはわかりませんが、問題は解決しました。foreach ループの上で変数を定義する代わりに、ループに移動しました。

<?php   $thumbnails = get_posts('posts_per_page=5'); //adding category=7 here breaks code

        $total = count($thumbnails); //this is to count the number of thumbnails in foreach loop to NOT add a comma to the last one
        $i=1;

        foreach ($thumbnails as $thumbnail) {
        if ( has_post_thumbnail($thumbnail->ID)) {
        $i++;



         echo '["'.wp_get_attachment_url( get_post_thumbnail_id($thumbnail->ID) ).'","'.get_permalink( $thumbnail->ID ).'","","'.get_the_excerpt($thumbnail->ID).'"]'; //This spits out the exact correct code
         if ($i != $total) { echo', '; }//this is to count the number of thumbnails in foreach loop to NOT add a comma to the last one


 }

}
?>

例外はまだ循環しませんが、少なくともサムネイルは循環します。

于 2013-03-25T23:13:30.337 に答える