WP スラッグの取得 メモ

固定ページのスラッグ名
<?php echo esc_attr($post->post_name);?>
ループの中でスラッグを取得
<?php
  global $post;
  $slug = $post->post_name;
?>

<?php if(have_posts()) : ?>
  <?php while(have_posts()) : the_post(); ?>
   <?php $slug = $post->post_name; ?>
  <?php endwhile; ?>
<?php endif; ?>

get_post() に投稿の ID を渡して取得した投稿オブジェクトから取得
<?php 
  $slug = get_post( get_the_ID() )->post_name;
?>
ループの外で ID を取得
<?php
  global $wp_query;
  $my_post_id = $wp_query->get_queried_object_id();
?>
カテゴリーのスラッグの取得
<?php     
  $category = get_the_category();
  $slug = $category[0]->category_nicename;  
?>

<?php if(have_posts()) : ?>
  <?php while(have_posts()) : the_post(); ?>
    ・・・
    <?php     
      $category = get_the_category();
      $slug = $category[0]->category_nicename;  
    ?>
   ・・・
  <?php endwhile; ?>
<?php endif; ?>

属するカテゴリーを全て取得
<?php     
  global $post;
  $slugs = [];  //スラッグを入れるの配列の初期化
  foreach ( ( get_the_category( $post->ID ) ) as $category ) {
    array_push($slugs, $category->category_nicename);
  }
?>
タグのスラッグの取得
<?php 
  $posttags = get_the_tags(); 
  if($posttags[0]) {
    $slug = $posttags[0]->slug; 
  }
?>

付けられているタグを全て取得
<?php     
  global $post;
  $tags = [];  //タグを入れるの配列の初期化
  if( get_the_tags( $post->ID ) ) {
    foreach ( ( get_the_tags( $post->ID ) ) as $tag ) {
      array_push($tags, $tag->slug);
    }
  }
?>