1

I am digging up posts with a specific slug:

Where

$postSlug = 'abc'

$args = array(
          'post_name' => $postSlug,
          'post_type' => 'post',
          'post_status' => 'publish'
        );
    $slugPosts = get_posts($args);

Output of $slugPosts[0]->post_name:

$slugPosts[0]->post_name = 'xyz'

What am I doing wrong here? How can I get a post from a slug?

3

Aha, despite there being a postmeta field of post_name->'slug', the correct syntax (which mirrors that of WP_Query, is

$args = array(
      'name' => $postSlug,
      'post_type' => 'post',
      'post_status' => 'publish'
    );
$slugPosts = get_posts($args);

Where 'name' is the key in the query (for posts, 'postname' for page).

Doesn't make much sense but might as well stick it as an answer.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.