loop_to_id() public static method

public static loop_to_id ( ) : integer
return integer the ID of the post in the loop
Example #1
0
 /**
  * tries to figure out what post you want to get if not explictly defined (or if it is, allows it to be passed through)
  * @internal
  * @param mixed a value to test against
  * @return int the numberic id we should be using for this post object
  */
 protected function determine_id($pid)
 {
     global $wp_query;
     if ($pid === null && isset($wp_query->queried_object_id) && $wp_query->queried_object_id && isset($wp_query->queried_object) && is_object($wp_query->queried_object) && get_class($wp_query->queried_object) == 'WP_Post') {
         if (isset($_GET['preview']) && isset($_GET['preview_nonce']) && wp_verify_nonce($_GET['preview_nonce'], 'post_preview_' . $wp_query->queried_object_id)) {
             $pid = $this->get_post_preview_id($wp_query);
         } else {
             if (!$pid) {
                 $pid = $wp_query->queried_object_id;
             }
         }
     } else {
         if ($pid === null && $wp_query->is_home && isset($wp_query->queried_object_id) && $wp_query->queried_object_id) {
             //hack for static page as home page
             $pid = $wp_query->queried_object_id;
         } else {
             if ($pid === null) {
                 $gtid = false;
                 $maybe_post = get_post();
                 if (isset($maybe_post->ID)) {
                     $gtid = true;
                 }
                 if ($gtid) {
                     $pid = get_the_ID();
                 }
                 if (!$pid) {
                     global $wp_query;
                     if (isset($wp_query->query['p'])) {
                         $pid = $wp_query->query['p'];
                     }
                 }
             }
         }
     }
     if ($pid === null && ($pid_from_loop = PostGetter::loop_to_id())) {
         $pid = $pid_from_loop;
     }
     return $pid;
 }