コード例 #1
0
 /**
  * Process data when submit form add/edit view
  *
  * @return void
  */
 static function view_submit()
 {
     if (empty($_POST)) {
         return;
     }
     PT_CV_Functions::_nonce_check('form_nonce', 'view_submit');
     /**
      * INSERT VIEW
      */
     // View title
     $title = esc_sql($_POST[PT_CV_PREFIX . 'view-title']);
     // Current post id ( 0 if new view )
     $cur_post_id = esc_sql($_POST[PT_CV_PREFIX . 'post-id']);
     // Insert post
     if (!$cur_post_id) {
         $post_id = PT_CV_Functions::post_insert(array('ID' => $cur_post_id, 'title' => $title));
     } else {
         $post_id = $cur_post_id;
     }
     /**
      * ADD/UPDATE CUSTOM FIELDS
      */
     // Get current view id, = 0 if it is new view
     $cur_view_id = esc_sql($_POST[PT_CV_PREFIX . 'view-id']);
     $view_id = empty($cur_view_id) ? PT_CV_Functions::string_random() : $cur_view_id;
     update_post_meta($post_id, PT_CV_META_ID, $view_id);
     update_post_meta($post_id, PT_CV_META_SETTINGS, (array) $_POST);
     // Update post title
     if (strpos($title, '[ID:') === false) {
         PT_CV_Functions::post_insert(array('ID' => $post_id, 'title' => sprintf('%s [ID: %s]', $title, $view_id)));
     }
     /**
      * redirect to edit page
      */
     $edit_link = PT_CV_Functions::view_link($view_id);
     wp_redirect($edit_link);
     exit;
 }
コード例 #2
0
 /**
  * Filter link of Title in All Views page
  */
 public function filter_get_edit_post_link($edit_link, $post_id, $context)
 {
     // Get current post type
     $post_type = PT_CV_Functions::admin_current_post_type();
     if ($post_type != PT_CV_POST_TYPE) {
         return $edit_link;
     }
     // Get View id
     $view_id = get_post_meta($post_id, PT_CV_META_ID, true);
     $edit_link = PT_CV_Functions::view_link($view_id);
     return $edit_link;
 }