在PHP数组字符串中使用变量

时间:2014-07-31 19:20:34

标签: php wordpress woocommerce

我想知道你是否愿意帮助解决以下问题。

我有一个字符串,可以从我的WP woocommerce网站上选择产品,这些产品附带了某些分类。我想要的是在我的数组中包含一个变量。

我现在所拥有的是这个,效果很好:

$args = array(
    'post_type' => 'product',
    'posts_per_page' => 1,
    'tax_query' => array(
        array(
            'taxonomy' => 'pa_garment',
            'field' => 'tag_ID',
            'terms' => '59'
        ),
        array(
            'taxonomy' => 'pa_audience',
            'field' => 'tag_ID',
            'terms' => '39'
        )
    ),
    'orderby' => 'rand'
);


$args = $args;

$loop = new WP_Query( $args );

while ( $loop->have_posts() ) {
    $loop->the_post();
} { 
    $image = print_r(get_the_post_thumbnail($loop->post->ID, 'shop_catalog'));
}

$image = $image[0];     

$image =  apply_filters( 'woocommerce_placeholder_img_src',$image[0] );

但我没有指定类别“39”和“59”,而是要插入变量$ category1和$ category2。

所以我试过这个,但似乎不起作用:

$args = array(
    'post_type' => 'product',
    'posts_per_page' => 1,
    'tax_query' => array(
        array(
            'taxonomy' => 'pa_garment',
            'field' => 'tag_ID',
            'terms' => $category1
        ),
        array(
            'taxonomy' => 'pa_audience',
            'field' => 'tag_ID',
            'terms' => $category2
        )
    ),
    'orderby' => 'rand'
);


$args = $args;

$loop = new WP_Query( $args );

while ( $loop->have_posts() ) {
    $loop->the_post();
} { 

    $image = print_r(get_the_post_thumbnail($loop->post->ID, 'shop_catalog'));
}
$image = $image[0];     

$image =  apply_filters( 'woocommerce_placeholder_img_src',$image[0] );

我尝试在变量($$ category1)的开头添加额外的$,同时添加额外的括号$ {$ category1},但我似乎无法弄明白。

请帮忙!

干杯 克里斯

1 个答案:

答案 0 :(得分:0)

$ category 1和$ category 2必须是一个数组,所以首先你需要获得与分类法相关的术语

$category1 = array('term1', 'term2');

或term id:

$category1 = array(1,2,3);

使用函数get_terms($ taxonomies,$ args)来获取术语数组