示例#1
0
 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;
 }