public static function get_permalink($id = 0) { if (self::$single_link !== null) { return self::$single_link; } $permalink = get_permalink($id); if ($permalink) { $query_args['preview'] = 'true'; $permalink = add_query_arg($query_args, $permalink); self::$single_link = $permalink; return $permalink; } if (isset($_GET['post']) && $id != $_GET['post']) { return self::get_permalink($_GET['post']); } // cpt edit page if (isset($_GET['wpcf-post-type']) && $id == 0) { $query = new WP_Query('post_type=' . $_GET['wpcf-post-type'] . '&posts_per_page=1'); if ($query->have_posts()) { return self::get_permalink($query->posts[0]->ID); } } // fields edit page if (is_object(self::$post_type) && $id == 0) { $query = new WP_Query('post_type=' . self::$post_type->name . '&posts_per_page=1'); if ($query->have_posts()) { return self::get_permalink($query->posts[0]->ID); } } self::$single_link = false; return self::$single_link; }