Wordpress: trying to get posts by tag Wordpress: trying to get posts by tag wordpress wordpress

Wordpress: trying to get posts by tag


Answer was found here - https://codex.wordpress.org/Template_Tags/get_posts

Following example displays posts tagged with 'jazz', under 'genre' custom taxonomy, using 'tax_query'

$args = array(    'tax_query' => array(        array(            'taxonomy' => 'genre',            'field' => 'slug',            'terms' => 'jazz'        )    ));$postslist = get_posts( $args );

So for you it will be

$args = array(         'posts_per_page' => 5,        'tax_query'      => array(            array(                'taxonomy'  => 'post_tag',                'field'     => 'slug',                'terms'     => sanitize_title( $brand_name )            )        )    );$postslist = get_posts( $args );


Try this

$original_query = $wp_query;$wp_query = null;$args = array('posts_per_page' => 5, 'tag' => $brand_name);$wp_query = new WP_Query($args);if (have_posts()) :    while (have_posts()) : the_post();        echo '<li>';        the_title();        echo '</li>';    endwhile;endif;$wp_query = null;$wp_query = $original_query;wp_reset_postdata();


In your code, try:

$query=new WP_Query(array('posts_per_page=5', 'tag' => $brand_name));

instead of:

$query=new WP_Query(array('posts_per_page=5', array('tag' => array($brand_name))));

For further details, see https://codex.wordpress.org/Class_Reference/WP_Query#Tag_Parameters(and as mentioned on a recent duplicate post).

Note: $brand_name could be an array of strings, or comma separated values, etc., and the above code should work.

Alternatively, try:

$myPosts = get_posts(array('tag' => $brand_name));

See https://codex.wordpress.org/Template_Tags/get_posts