lafif-a
3/2/2015 - 8:46 AM

[Wordpress] Function to get all post from category slug with wpdb

[Wordpress] Function to get all post from category slug with wpdb

function _getPostByCategory($post_type, $category_slug){
	global $wpdb;

	$query = "SELECT p.*, terms.term_taxonomy_id, terms.term_id, terms.slug, terms.name from $wpdb->posts p INNER JOIN 
				( SELECT rel.object_id , rel.term_taxonomy_id, term.term_id, term.name, term.slug FROM $wpdb->term_relationships rel 
				INNER JOIN (SELECT ttax.term_taxonomy_id, ttax.term_id, t.name, t.slug FROM $wpdb->term_taxonomy ttax
				INNER JOIN $wpdb->terms t ON t.term_id = ttax.term_id
				) term
				ON rel.term_taxonomy_id = term.term_taxonomy_id ) terms
				ON p.ID = terms.object_id
				WHERE p.post_status = 'publish'
				AND p.post_type = '".$post_type."'
				AND terms.slug = '".$category_slug."'";

	$posts = $wpdb->get_results($query, OBJECT);

	return $posts;
}