Custom Field Template - Version 1.8.5

Version Description

  • Bugfix: template loading.
Download this release

Release Info

Developer Hiroaki Miyashita
Plugin Icon 128x128 Custom Field Template
Version 1.8.5
Comparing to
See all releases

Code changes from version 1.8.4 to 1.8.5

Files changed (2) hide show
  1. custom-field-template.php +55 -71
  2. readme.txt +4 -1
custom-field-template.php CHANGED
@@ -4,7 +4,7 @@ Plugin Name: Custom Field Template
4
  Plugin URI: http://wpgogo.com/development/custom-field-template.html
5
  Description: This plugin adds the default custom fields on the Write Post/Page.
6
  Author: Hiroaki Miyashita
7
- Version: 1.8.4
8
  Author URI: http://wpgogo.com/
9
  */
10
 
@@ -92,12 +92,18 @@ class custom_field_template {
92
  }
93
 
94
  if ( is_user_logged_in() && isset($_REQUEST['page']) && $_REQUEST['page'] == 'custom-field-template/custom-field-template.php' && $_REQUEST['cft_mode'] == 'ajaxload') {
95
- if ( isset($_REQUEST['id']) )
96
  $id = $_REQUEST['id'];
97
- elseif ( isset($options['posts'][$_REQUEST['post']]) )
98
  $id = $options['posts'][$_REQUEST['post']];
99
- else
100
- $id = 0;
 
 
 
 
 
 
101
  list($body, $init_id) = $this->load_custom_field( $id );
102
  echo $body;
103
  exit();
@@ -2043,38 +2049,9 @@ new_id = original_id.replace(/([0-9]+)$/, parseInt(matchval)+1);}if ( tinyMCE.ge
2043
  $level = $userdata->user_level;
2044
 
2045
  $options = $this->get_custom_field_template_data();
2046
-
2047
  if ( isset($_REQUEST['post']) ) $post = get_post($_REQUEST['post']);
2048
 
2049
- if ( count($options['custom_fields']) > 0 && !isset($_REQUEST['id']) && isset($_REQUEST['post']) && !isset($options['posts'][$_REQUEST['post']]) ) :
2050
- foreach ( $options['custom_fields'] as $key => $val ) :
2051
- if ( !empty($val['template_files']) && !empty($_REQUEST['page_template']) ) :
2052
- $template_files = explode(',', $val['template_files']);
2053
- $template_files = array_filter( $template_files );
2054
- $template_files = array_unique(array_filter(array_map('trim', $template_files)));
2055
- if ( in_array($_REQUEST['page_template'], $template_files) ) :
2056
- $id = $key;
2057
- break;
2058
- endif;
2059
- endif;
2060
- if ( !empty($val['post_type']) ) :
2061
- if ( $post->post_type == $val['post_type'] ) :
2062
- $id = $key;
2063
- break;
2064
- endif;
2065
- endif;
2066
- if ( !empty($val['custom_post_type']) ) :
2067
- $tmp_custom_post_type = explode(',', $val['custom_post_type']);
2068
- $tmp_custom_post_type = array_filter( $tmp_custom_post_type );
2069
- array_walk( $tmp_custom_post_type, create_function('&$v', '$v = trim($v);') );
2070
- if ( in_array($post->post_type, $tmp_custom_post_type) ) :
2071
- $id = $key;
2072
- break;
2073
- endif;
2074
- endif;
2075
- endforeach;
2076
- endif;
2077
-
2078
  if ( !empty($options['custom_fields'][$id]['disable']) )
2079
  return;
2080
 
@@ -2344,8 +2321,16 @@ tmp.find('."'input[type=text],input[type=hidden],input[type=file]'".').val('."''
2344
  }';
2345
  if ( isset($_REQUEST['post']) ) $request_post = $_REQUEST['post'];
2346
  else $request_post = '';
2347
- if( isset($options['posts'][$request_post]) && count($options['custom_fields'])>$options['posts'][$request_post] ) $init_id = $options['posts'][$request_post];
2348
- else $init_id = 0;
 
 
 
 
 
 
 
 
2349
 
2350
  $out .= 'jQuery(document).ready(function() {' . "\n";
2351
 
@@ -2369,6 +2354,9 @@ jQuery("#edButtonPreview").trigger("click"); }' . "\n";*/
2369
  endif;
2370
 
2371
  if ( $options['custom_fields'] ) :
 
 
 
2372
  foreach ( $options['custom_fields'] as $key => $val ) :
2373
  if ( !empty($val['category']) ) :
2374
  $val['category'] = preg_replace('/\s/', '', $val['category']);
@@ -2377,7 +2365,7 @@ jQuery("#edButtonPreview").trigger("click"); }' . "\n";*/
2377
  array_walk( $categories, create_function('&$v', '$v = trim($v);') );
2378
  foreach($categories as $cat_id) :
2379
  if ( is_numeric($cat_id) ) :
2380
- $out .= 'jQuery(\'#in-category-' . $cat_id . '\').click(function(){if(jQuery(\'#in-category-' . $cat_id . '\').attr(\'checked\') == true) { if(tinyMCEID.length) { for(i=0;i<tinyMCEID.length;i++) {tinyMCE.execCommand(\'mceRemoveControl\', false, tinyMCEID[i]);} tinyMCEID.length=0;}; jQuery.get(\'?page=custom-field-template/custom-field-template.php&cft_mode=selectbox&post=\'+jQuery(\'#post_ID\').val()+\'&\'+jQuery(\'#categories-all :input\').fieldSerialize(), function(html) { jQuery(\'#cft_selectbox\').html(html);';
2381
  if ( !empty($options['custom_field_template_use_autosave']) ) :
2382
  $out .= ' var fields = jQuery(\'#cft :input\').fieldSerialize();';
2383
  $out .= 'jQuery.ajax({type: \'POST\', url: \'?page=custom-field-template/custom-field-template.php&cft_mode=ajaxsave&post=\'+jQuery(\'#post_ID\').val()+\'&custom-field-template-verify-key=\'+jQuery(\'#custom-field-template-verify-key\').val()+\'&\'+fields, success: function(){jQuery(\'#custom_field_template_select\').val(\'' . $key . '\');jQuery.ajax({type: \'GET\', url: \'?page=custom-field-template/custom-field-template.php&cft_mode=ajaxload&id=' . $key . '&post=\'+jQuery(\'#post_ID\').val(), success: function(html) {';
@@ -2386,7 +2374,7 @@ jQuery("#edButtonPreview").trigger("click"); }' . "\n";*/
2386
  endif;
2387
  $out .= 'jQuery(\'#cft\').html(html);}});}});';
2388
  else :
2389
- $out .= ' jQuery(\'#custom_field_template_select\').val(\'' . $key . '\');jQuery.ajax({type: \'GET\', url: \'?page=custom-field-template/custom-field-template.php&cft_mode=ajaxload&id=' . $key . '&post=\'+jQuery(\'#post_ID\').val()+\'&\'+jQuery(\'#categories-all :input\').fieldSerialize(), success: function(html) {';
2390
  if ( !empty($options['custom_field_template_replace_the_title']) ) :
2391
  $out .= 'jQuery(\'#cftdiv h3 span\').text(\'' . $options['custom_fields'][$key]['title'] . '\');';
2392
  endif;
@@ -2394,7 +2382,7 @@ jQuery("#edButtonPreview").trigger("click"); }' . "\n";*/
2394
  endif;
2395
  $out .= ' });';
2396
 
2397
- $out .= ' }else{ jQuery(\'#cft\').html(\'\');jQuery.get(\'?page=custom-field-template/custom-field-template.php&cft_mode=selectbox&post=\'+jQuery(\'#post_ID\').val()+\'&\'+jQuery(\'#categories-all :input\').fieldSerialize(), function(html) { jQuery(\'#cft_selectbox\').html(html); jQuery.ajax({type: \'GET\', url: \'?page=custom-field-template/custom-field-template.php&cft_mode=ajaxload&post=\'+jQuery(\'#post_ID\').val()+\'&\'+jQuery(\'#categories-all :input\').fieldSerialize(), success: function(html) { jQuery(\'#cft\').html(html);}}); });';
2398
  if ( !empty($options['custom_field_template_replace_the_title']) ) :
2399
  $out .= 'jQuery(\'#cftdiv h3 span\').text(\'' . __('Custom Field Template', 'custom-field-template') . '\');';
2400
  endif;
@@ -2436,7 +2424,7 @@ jQuery("#edButtonPreview").trigger("click"); }' . "\n";*/
2436
  $out .= '-->' . "\n" .
2437
  '</style>';
2438
  list($body, $init_id) = $this->load_custom_field($init_id);
2439
-
2440
  $out .= '<div id="cft_selectbox" style="height:25px;">';
2441
  $out .= $this->custom_field_template_selectbox();
2442
  $out .= '</div>';
@@ -2485,10 +2473,6 @@ jQuery("#edButtonPreview").trigger("click"); }' . "\n";*/
2485
  echo $out;
2486
  }
2487
 
2488
- // Next collect all the custom fields templates that meet the following criteria
2489
- // a) The post in the right category (if filtered by categories)
2490
- // b) The post/page using the right Page Template (if filtered by page Template)
2491
- // Return the result of the filter
2492
  function custom_field_template_filter(){
2493
  global $post, $wp_version;
2494
 
@@ -2496,15 +2480,15 @@ jQuery("#edButtonPreview").trigger("click"); }' . "\n";*/
2496
  $filtered_cfts = array();
2497
 
2498
  $post_id = isset($_REQUEST['post']) ? $_REQUEST['post'] : '';
 
2499
 
2500
- // Page Categories
2501
  $categories = get_the_category($post_id);
2502
  $cats = array();
2503
  if ( is_array($categories) ) foreach($categories as $category) $cats[] = $category->cat_ID;
2504
  if ( !empty($_REQUEST['post_category']) ) $cats = array_merge($cats, $_REQUEST['post_category']);
2505
-
2506
  for ( $i=0; $i < count($options['custom_fields']); $i++ ) :
2507
- // If only shows up on pages or posts if set
2508
  if ( !empty($options['custom_fields'][$i]['post_type']) ) :
2509
  if ( substr($wp_version, 0, 3) < '3.0' ) :
2510
  if ( $options['custom_fields'][$i]['post_type'] == 'post' && (strstr($_SERVER['REQUEST_URI'], 'wp-admin/page-new.php') || strstr($_SERVER['REQUEST_URI'], 'wp-admin/page.php') || strstr($_SERVER['REQUEST_URI'], 'wp-admin/edit-pages.php')) ) :
@@ -2538,47 +2522,47 @@ jQuery("#edButtonPreview").trigger("click"); }' . "\n";*/
2538
  $template_files = array_unique(array_filter(array_map('trim', $template_files)));
2539
  $post_ids = array_unique(array_filter(array_map('trim', $post_ids)));
2540
 
2541
- if ( (strstr($_SERVER['REQUEST_URI'], 'wp-admin/page-new.php') || strstr($_SERVER['REQUEST_URI'], 'wp-admin/page.php') || strstr($_SERVER['REQUEST_URI'], 'wp-admin/edit-pages.php') || strstr($_SERVER['REQUEST_URI'], 'post_type=page') || $post->post_type=='page') ) :
2542
- // Check if there are page template files to filter by and there is a page template
2543
- if ( count($template_files) && (isset($post->page_template) || isset($_REQUEST['page_template'])) ) :
2544
- // If the page_template is not in the template_files filter remove this custom field
2545
- if( !in_array($post->page_template, $template_files) && (!isset($_REQUEST['page_template']) || (isset($_REQUEST['page_template']) && !in_array($_REQUEST['page_template'], $template_files))) ) :
 
 
2546
  continue;
2547
  endif;
2548
- elseif ( $options['custom_fields'][$i]['category'] ) :
2549
  continue;
2550
  endif;
2551
  endif;
2552
 
2553
- // If there is post_ids and this post id doesn't match them skip
2554
  if ( count($post_ids) && (!isset($_REQUEST['post']) || (isset($_REQUEST['post']) &&!in_array($_REQUEST['post'], $post_ids))) ) :
2555
  continue;
2556
  endif;
2557
 
2558
- if ( (strstr($_SERVER['REQUEST_URI'], 'wp-admin/post-new.php') || strstr($_SERVER['REQUEST_URI'], 'wp-admin/post.php') || strstr($_SERVER['REQUEST_URI'], 'wp-admin/edit.php')) ) :
2559
- // If there is post_ids and this post id doesn't match them skip
2560
- if ( is_array($cat_ids) && count($cat_ids) ) :
2561
- // If there are no categories for this post skip
2562
- if( !count($cats) ) continue;
2563
- // Check each cat_ids filter to see if it matches the posts cats
2564
- $cat_match = 0;
2565
- foreach ( $cat_ids as $cat_id ) :
2566
- if (in_array($cat_id, $cats) ) :
2567
- $cat_match = 1;
 
2568
  endif;
2569
- endforeach;
2570
- // No matches found skip
2571
- if($cat_match == 0) :
2572
  continue;
2573
  endif;
 
 
2574
  endif;
2575
  endif;
2576
 
2577
  $options['custom_fields'][$i]['id'] = $i;
2578
  $filtered_cfts[] = $options['custom_fields'][$i];
2579
-
2580
  endfor;
2581
-
2582
  return $filtered_cfts;
2583
  }
2584
 
@@ -2588,7 +2572,7 @@ jQuery("#edButtonPreview").trigger("click"); }' . "\n";*/
2588
  if( count($options['custom_fields']) < 2 ) :
2589
  return '&nbsp;';
2590
  endif;
2591
-
2592
  $filtered_cfts = $this->custom_field_template_filter();
2593
 
2594
  if( count($filtered_cfts) < 1 ) :
4
  Plugin URI: http://wpgogo.com/development/custom-field-template.html
5
  Description: This plugin adds the default custom fields on the Write Post/Page.
6
  Author: Hiroaki Miyashita
7
+ Version: 1.8.5
8
  Author URI: http://wpgogo.com/
9
  */
10
 
92
  }
93
 
94
  if ( is_user_logged_in() && isset($_REQUEST['page']) && $_REQUEST['page'] == 'custom-field-template/custom-field-template.php' && $_REQUEST['cft_mode'] == 'ajaxload') {
95
+ if ( isset($_REQUEST['id']) ) :
96
  $id = $_REQUEST['id'];
97
+ elseif ( isset($options['posts'][$_REQUEST['post']]) ) :
98
  $id = $options['posts'][$_REQUEST['post']];
99
+ else :
100
+ $filtered_cfts = $this->custom_field_template_filter();
101
+ if ( count($filtered_cfts)>0 ) :
102
+ $id = $filtered_cfts[0]['id'];
103
+ else :
104
+ $id = 0;
105
+ endif;
106
+ endif;
107
  list($body, $init_id) = $this->load_custom_field( $id );
108
  echo $body;
109
  exit();
2049
  $level = $userdata->user_level;
2050
 
2051
  $options = $this->get_custom_field_template_data();
2052
+
2053
  if ( isset($_REQUEST['post']) ) $post = get_post($_REQUEST['post']);
2054
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2055
  if ( !empty($options['custom_fields'][$id]['disable']) )
2056
  return;
2057
 
2321
  }';
2322
  if ( isset($_REQUEST['post']) ) $request_post = $_REQUEST['post'];
2323
  else $request_post = '';
2324
+ if( isset($options['posts'][$request_post]) && count($options['custom_fields'])>$options['posts'][$request_post] ) :
2325
+ $init_id = $options['posts'][$request_post];
2326
+ else :
2327
+ $filtered_cfts = $this->custom_field_template_filter();
2328
+ if ( count($filtered_cfts)>0 ) :
2329
+ $init_id = $filtered_cfts[0]['id'];
2330
+ else :
2331
+ $init_id = 0;
2332
+ endif;
2333
+ endif;
2334
 
2335
  $out .= 'jQuery(document).ready(function() {' . "\n";
2336
 
2354
  endif;
2355
 
2356
  if ( $options['custom_fields'] ) :
2357
+ if ( substr($wp_version, 0, 3) < '3.0' ) $taxonomy = 'categories';
2358
+ else $taxonomy = 'category';
2359
+
2360
  foreach ( $options['custom_fields'] as $key => $val ) :
2361
  if ( !empty($val['category']) ) :
2362
  $val['category'] = preg_replace('/\s/', '', $val['category']);
2365
  array_walk( $categories, create_function('&$v', '$v = trim($v);') );
2366
  foreach($categories as $cat_id) :
2367
  if ( is_numeric($cat_id) ) :
2368
+ $out .= 'jQuery(\'#in-category-' . $cat_id . '\').click(function(){if(jQuery(\'#in-category-' . $cat_id . '\').attr(\'checked\') == true) { if(tinyMCEID.length) { for(i=0;i<tinyMCEID.length;i++) {tinyMCE.execCommand(\'mceRemoveControl\', false, tinyMCEID[i]);} tinyMCEID.length=0;}; jQuery.get(\'?page=custom-field-template/custom-field-template.php&cft_mode=selectbox&post=\'+jQuery(\'#post_ID\').val()+\'&\'+jQuery(\'#'.$taxonomy.'-all :input\').fieldSerialize(), function(html) { jQuery(\'#cft_selectbox\').html(html);';
2369
  if ( !empty($options['custom_field_template_use_autosave']) ) :
2370
  $out .= ' var fields = jQuery(\'#cft :input\').fieldSerialize();';
2371
  $out .= 'jQuery.ajax({type: \'POST\', url: \'?page=custom-field-template/custom-field-template.php&cft_mode=ajaxsave&post=\'+jQuery(\'#post_ID\').val()+\'&custom-field-template-verify-key=\'+jQuery(\'#custom-field-template-verify-key\').val()+\'&\'+fields, success: function(){jQuery(\'#custom_field_template_select\').val(\'' . $key . '\');jQuery.ajax({type: \'GET\', url: \'?page=custom-field-template/custom-field-template.php&cft_mode=ajaxload&id=' . $key . '&post=\'+jQuery(\'#post_ID\').val(), success: function(html) {';
2374
  endif;
2375
  $out .= 'jQuery(\'#cft\').html(html);}});}});';
2376
  else :
2377
+ $out .= ' jQuery(\'#custom_field_template_select\').val(\'' . $key . '\');jQuery.ajax({type: \'GET\', url: \'?page=custom-field-template/custom-field-template.php&cft_mode=ajaxload&id=' . $key . '&post=\'+jQuery(\'#post_ID\').val()+\'&\'+jQuery(\'#'.$taxonomy.'-all :input\').fieldSerialize(), success: function(html) {';
2378
  if ( !empty($options['custom_field_template_replace_the_title']) ) :
2379
  $out .= 'jQuery(\'#cftdiv h3 span\').text(\'' . $options['custom_fields'][$key]['title'] . '\');';
2380
  endif;
2382
  endif;
2383
  $out .= ' });';
2384
 
2385
+ $out .= ' }else{ jQuery(\'#cft\').html(\'\');jQuery.get(\'?page=custom-field-template/custom-field-template.php&cft_mode=selectbox&post=\'+jQuery(\'#post_ID\').val()+\'&\'+jQuery(\'#'.$taxonomy.'-all :input\').fieldSerialize(), function(html) { jQuery(\'#cft_selectbox\').html(html); jQuery.ajax({type: \'GET\', url: \'?page=custom-field-template/custom-field-template.php&cft_mode=ajaxload&post=\'+jQuery(\'#post_ID\').val()+\'&\'+jQuery(\'#'.$taxonomy.'-all :input\').fieldSerialize(), success: function(html) { jQuery(\'#cft\').html(html);}}); });';
2386
  if ( !empty($options['custom_field_template_replace_the_title']) ) :
2387
  $out .= 'jQuery(\'#cftdiv h3 span\').text(\'' . __('Custom Field Template', 'custom-field-template') . '\');';
2388
  endif;
2424
  $out .= '-->' . "\n" .
2425
  '</style>';
2426
  list($body, $init_id) = $this->load_custom_field($init_id);
2427
+
2428
  $out .= '<div id="cft_selectbox" style="height:25px;">';
2429
  $out .= $this->custom_field_template_selectbox();
2430
  $out .= '</div>';
2473
  echo $out;
2474
  }
2475
 
 
 
 
 
2476
  function custom_field_template_filter(){
2477
  global $post, $wp_version;
2478
 
2480
  $filtered_cfts = array();
2481
 
2482
  $post_id = isset($_REQUEST['post']) ? $_REQUEST['post'] : '';
2483
+ if ( empty($post) ) $post = get_post($post_id);
2484
 
 
2485
  $categories = get_the_category($post_id);
2486
  $cats = array();
2487
  if ( is_array($categories) ) foreach($categories as $category) $cats[] = $category->cat_ID;
2488
  if ( !empty($_REQUEST['post_category']) ) $cats = array_merge($cats, $_REQUEST['post_category']);
2489
+
2490
  for ( $i=0; $i < count($options['custom_fields']); $i++ ) :
2491
+ unset($cat_ids, $template_files, $post_ids);
2492
  if ( !empty($options['custom_fields'][$i]['post_type']) ) :
2493
  if ( substr($wp_version, 0, 3) < '3.0' ) :
2494
  if ( $options['custom_fields'][$i]['post_type'] == 'post' && (strstr($_SERVER['REQUEST_URI'], 'wp-admin/page-new.php') || strstr($_SERVER['REQUEST_URI'], 'wp-admin/page.php') || strstr($_SERVER['REQUEST_URI'], 'wp-admin/edit-pages.php')) ) :
2522
  $template_files = array_unique(array_filter(array_map('trim', $template_files)));
2523
  $post_ids = array_unique(array_filter(array_map('trim', $post_ids)));
2524
 
2525
+ if ( !empty($template_files) ) :
2526
+ if ( (strstr($_SERVER['REQUEST_URI'], 'wp-admin/page-new.php') || strstr($_SERVER['REQUEST_URI'], 'wp-admin/page.php') || strstr($_SERVER['REQUEST_URI'], 'wp-admin/edit-pages.php') || strstr($_SERVER['REQUEST_URI'], 'post_type=page') || $post->post_type=='page') ) :
2527
+ if ( count($template_files) && (isset($post->page_template) || isset($_REQUEST['page_template'])) ) :
2528
+ if( !in_array($post->page_template, $template_files) && (!isset($_REQUEST['page_template']) || (isset($_REQUEST['page_template']) && !in_array($_REQUEST['page_template'], $template_files))) ) :
2529
+ continue;
2530
+ endif;
2531
+ else :
2532
  continue;
2533
  endif;
2534
+ else :
2535
  continue;
2536
  endif;
2537
  endif;
2538
 
 
2539
  if ( count($post_ids) && (!isset($_REQUEST['post']) || (isset($_REQUEST['post']) &&!in_array($_REQUEST['post'], $post_ids))) ) :
2540
  continue;
2541
  endif;
2542
 
2543
+ if ( !empty($cat_ids) ) :
2544
+ if ( (strstr($_SERVER['REQUEST_URI'], 'wp-admin/post-new.php') || strstr($_SERVER['REQUEST_URI'], 'wp-admin/post.php') || strstr($_SERVER['REQUEST_URI'], 'wp-admin/edit.php')) ) :
2545
+ if ( is_array($cat_ids) && count($cat_ids) && count($cats)>0 ) :
2546
+ $cat_match = 0;
2547
+ foreach ( $cat_ids as $cat_id ) :
2548
+ if (in_array($cat_id, $cats) ) :
2549
+ $cat_match = 1;
2550
+ endif;
2551
+ endforeach;
2552
+ if($cat_match == 0) :
2553
+ continue;
2554
  endif;
2555
+ else :
 
 
2556
  continue;
2557
  endif;
2558
+ else :
2559
+ continue;
2560
  endif;
2561
  endif;
2562
 
2563
  $options['custom_fields'][$i]['id'] = $i;
2564
  $filtered_cfts[] = $options['custom_fields'][$i];
 
2565
  endfor;
 
2566
  return $filtered_cfts;
2567
  }
2568
 
2572
  if( count($options['custom_fields']) < 2 ) :
2573
  return '&nbsp;';
2574
  endif;
2575
+
2576
  $filtered_cfts = $this->custom_field_template_filter();
2577
 
2578
  if( count($filtered_cfts) < 1 ) :
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: http://wpgogo.com/development/custom-field-template.html
4
  Tags: custom, fields, field, template, meta, custom field, custom fields, custom field template
5
  Requires at least: 2.1
6
  Tested up to: 3.1.1
7
- Stable tag: 1.8.4
8
 
9
  This plugin adds the default custom fields on the Write Post/Page.
10
 
@@ -104,6 +104,9 @@ See the default template and modify it.
104
 
105
  == Changelog ==
106
 
 
 
 
107
  = 1.8.4 =
108
  * Form validation with the jQuery validatation plugin. You need to check `Use the jQuery validation` in the global settings. ex) class = required, class = email, class = url, etc.
109
  * Support of the multiple option of the textarea type with TinyMCE.
4
  Tags: custom, fields, field, template, meta, custom field, custom fields, custom field template
5
  Requires at least: 2.1
6
  Tested up to: 3.1.1
7
+ Stable tag: 1.8.5
8
 
9
  This plugin adds the default custom fields on the Write Post/Page.
10
 
104
 
105
  == Changelog ==
106
 
107
+ = 1.8.5 =
108
+ * Bugfix: template loading.
109
+
110
  = 1.8.4 =
111
  * Form validation with the jQuery validatation plugin. You need to check `Use the jQuery validation` in the global settings. ex) class = required, class = email, class = url, etc.
112
  * Support of the multiple option of the textarea type with TinyMCE.