it-swarm-ja.com

WP-Eコマース商品ページで機能しない配列

私はWP-eコマースを使って店を作り、左右のサイドバーにランダムな商品ジェネレータを持っています。同じ商品がページに2回表示されないため、左側のサイドバーの各商品から投稿IDを取得し、右側のサイドバーの商品クエリからそれらを除外しました。

私はarray_Pushの配列を使ってこれをやっています:

<?php $leftids = array(); ?>

<?php query_posts('post_type=wpsc-product&showposts=2&orderby=Rand&wpsc_Rand=i-want-this-product-to-be-random'); if (have_posts()) : while (have_posts()) : the_post(); ?>

<div style="display:none"><?php the_title(); ?></div>

<a href="<?php the_permalink();?>"><?php the_post_thumbnail('sidebarimg');?></a>

<h2><?php the_title(); ?></h2>

<?php  array_Push($leftids, $post->ID); ?>
<?php echo $leftids[0]; ?>
<?php endwhile; endif; ?>
<?php wp_reset_query(); ?> 

問題は、製品ページにあるときはこの配列にアクセスできないことです。それは家のような通常のワードプレスのページでうまく機能するか、または私達に連絡してください。

何か案は?

ありがとう

1
JamesG

コードスニペットがどこに配置されているのか、どこからアクセスしようとしているのかわからない。単純な(しかし醜い)解決策は、単にこの配列をグローバルに設定することです。

何かのようなもの

$GLOBALS['leftids'] = $leftids;

そして他のコードからの使用

global $leftids;
echo $leftids[0];
0
Yoav Aner