- Converter

default_fields[$action_name]; echo "

".$f['help']."

"; $do_convert=false; if(isset($_GET['sub_action']) and $_GET['sub_action']=='do_convert'){ echo "

The record has been converted into the following records.

"; $do_convert=true; } else { echo "

The record will be converted into the following records. Do you agree?

"; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo "
"; } $post=get_post($post_id); foreach( $f['field_config']['post_type_targets'] as $target ){ $target_name=$target[0]; foreach( $this->applications as $application ){ if(isset($application['modules'][$target_name])){ $module=$application['modules'][$target_name]; if($do_convert){ echo '

Convert: A new '.$module['singular_name'].' has been created with the following values:

'; $newpost_id = wp_insert_post( array( 'post_title' => __( 'Auto Draft' ), 'post_type' => $target_name, 'post_status' => 'publish' ) ); $newpost = get_post( $newpost_id ); //echo $newpost_id.'-'.$target_name; } else { echo '

Convert: create a new '.$module['singular_name'].' with the following values:

'; } echo "
    "; foreach( $target[1] as $fieldobj){ if(is_array($fieldobj)){ $fieldname=$fieldobj[0]; } else { $fieldname=$fieldobj; } $field=$this->default_fields[$fieldname]; $field_type='textfield'; $field_label=$field['label']; if(is_array($fieldobj)){ $field_label.="
    =>"; if($fieldobj[1]=='post_title'){ $field_label.=" Title "; } else { $subfield=$this->default_fields[$fieldobj[1]]; $field_label.=$subfield['label']; } //$field_label.=" ddd "; } if(isset($field['field_type'])){ $field_type=$field['field_type']; } $val=$this->get_field_value($field_type,$fieldname,$post) ; if($val==''){ $val='-None-'; } if($fieldname=='post_title'){ $field_label='Title'; $val=$post->post_title; if($do_convert){ $newpost->post_title=$val; wp_update_post($newpost); } } $val_meta= get_post_meta($post_id, $fieldname.$meta_marker,true); $newfieldname=$fieldname; if(is_array($fieldobj)){ if($fieldobj[1]=='post_title'){ if($do_convert){ $newpost->post_title=$val; wp_update_post($newpost); } } else {//find_by_name $newfieldname=$fieldobj[1]; if(isset($fieldobj[2]) ){ switch($fieldobj[2]) { case 'find_id': $val_meta= get_post_meta($post_id, $fieldname.$meta_marker,true); break; case 'find_parent_by_name': $val_meta= get_post_meta($post_id, $fieldname.$meta_marker,true); $query = " SELECT * FROM $wpdb->posts WHERE $wpdb->posts.post_title LIKE '$val_meta' AND $wpdb->posts.post_status = 'publish' ORDER BY $wpdb->posts.post_title "; $posts_list= $wpdb->get_results($query); //$post_other=get_posts(array('post_title'=>$val_meta)); //echo " coutn ".count($posts_list); //var_dump($posts_list); $val_meta=$posts_list[0]->ID; /* $val2= get_post_meta($post->ID, $fieldname.$meta_marker); echo $post->ID.'-'.$fieldname."*".var_dump($val2); echo 'need to convert this value from name '.$val2;*/ break; default: $val_meta= get_post_meta($post_id, $fieldname.$meta_marker,true); break; } } else { $val_meta= get_post_meta($post_id, $fieldname.$meta_marker,true); } } } //echo 'meta: '.$val_meta.'/'.$fieldname.'/'.$newfieldname; if($do_convert){ update_post_meta($newpost->ID, $newfieldname.$meta_marker, $val_meta); } echo "
  • "; echo ': '.$val.'
    '; echo "
  • "; } echo "
"; echo '
'; } } } if(isset( $f['field_config']['do_trash_original']) and $do_convert==true and $f['field_config']['do_trash_original']==true){ $post->post_status='trash'; wp_update_post($post);// echo "
The original record has been trashed !
"; } /*foreach( $this->applications as $key => $application ){ if(isset($application['modules'][$post_type])){ echo '22'; } }*/ //var_dump($f['field_config']['post_type_targets']); ?>