Merge branch 'release/5.5.2' into develop
This commit is contained in:
commit
5d057a2869
26
acf.php
26
acf.php
|
|
@ -3,7 +3,7 @@
|
||||||
Plugin Name: Advanced Custom Fields PRO
|
Plugin Name: Advanced Custom Fields PRO
|
||||||
Plugin URI: https://www.advancedcustomfields.com/
|
Plugin URI: https://www.advancedcustomfields.com/
|
||||||
Description: Customise WordPress with powerful, professional and intuitive fields
|
Description: Customise WordPress with powerful, professional and intuitive fields
|
||||||
Version: 5.4.8
|
Version: 5.5.2
|
||||||
Author: Elliot Condon
|
Author: Elliot Condon
|
||||||
Author URI: http://www.elliotcondon.com/
|
Author URI: http://www.elliotcondon.com/
|
||||||
Copyright: Elliot Condon
|
Copyright: Elliot Condon
|
||||||
|
|
@ -58,7 +58,7 @@ class acf {
|
||||||
|
|
||||||
// basic
|
// basic
|
||||||
'name' => __('Advanced Custom Fields', 'acf'),
|
'name' => __('Advanced Custom Fields', 'acf'),
|
||||||
'version' => '5.4.8',
|
'version' => '5.5.2',
|
||||||
|
|
||||||
// urls
|
// urls
|
||||||
'basename' => plugin_basename( __FILE__ ),
|
'basename' => plugin_basename( __FILE__ ),
|
||||||
|
|
@ -83,7 +83,10 @@ class acf {
|
||||||
'google_api_key' => '',
|
'google_api_key' => '',
|
||||||
'google_api_client' => '',
|
'google_api_client' => '',
|
||||||
'enqueue_google_maps' => true,
|
'enqueue_google_maps' => true,
|
||||||
'enqueue_select2' => true,
|
'enqueue_select2' => true,
|
||||||
|
'enqueue_datepicker' => true,
|
||||||
|
'enqueue_datetimepicker' => true,
|
||||||
|
'select2_version' => 3
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -131,11 +134,17 @@ class acf {
|
||||||
acf_include('admin/admin.php');
|
acf_include('admin/admin.php');
|
||||||
acf_include('admin/field-group.php');
|
acf_include('admin/field-group.php');
|
||||||
acf_include('admin/field-groups.php');
|
acf_include('admin/field-groups.php');
|
||||||
acf_include('admin/update.php');
|
acf_include('admin/install.php');
|
||||||
acf_include('admin/update-network.php');
|
|
||||||
acf_include('admin/settings-tools.php');
|
acf_include('admin/settings-tools.php');
|
||||||
//acf_include('admin/settings-addons.php');
|
|
||||||
acf_include('admin/settings-info.php');
|
acf_include('admin/settings-info.php');
|
||||||
|
|
||||||
|
|
||||||
|
// network
|
||||||
|
if( is_network_admin() ) {
|
||||||
|
|
||||||
|
acf_include('admin/install-network.php');
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -214,6 +223,7 @@ class acf {
|
||||||
acf_include('fields/password.php');
|
acf_include('fields/password.php');
|
||||||
acf_include('fields/wysiwyg.php');
|
acf_include('fields/wysiwyg.php');
|
||||||
acf_include('fields/oembed.php');
|
acf_include('fields/oembed.php');
|
||||||
|
//acf_include('fields/output.php');
|
||||||
acf_include('fields/image.php');
|
acf_include('fields/image.php');
|
||||||
acf_include('fields/file.php');
|
acf_include('fields/file.php');
|
||||||
acf_include('fields/select.php');
|
acf_include('fields/select.php');
|
||||||
|
|
@ -350,12 +360,12 @@ class acf {
|
||||||
|
|
||||||
// acf-disabled
|
// acf-disabled
|
||||||
register_post_status('acf-disabled', array(
|
register_post_status('acf-disabled', array(
|
||||||
'label' => __( 'Disabled', 'acf' ),
|
'label' => __( 'Inactive', 'acf' ),
|
||||||
'public' => true,
|
'public' => true,
|
||||||
'exclude_from_search' => false,
|
'exclude_from_search' => false,
|
||||||
'show_in_admin_all_list' => true,
|
'show_in_admin_all_list' => true,
|
||||||
'show_in_admin_status_list' => true,
|
'show_in_admin_status_list' => true,
|
||||||
'label_count' => _n_noop( 'Disabled <span class="count">(%s)</span>', 'Disabled <span class="count">(%s)</span>', 'acf' ),
|
'label_count' => _n_noop( 'Inactive <span class="count">(%s)</span>', 'Inactive <span class="count">(%s)</span>', 'acf' ),
|
||||||
));
|
));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
123
admin/admin.php
123
admin/admin.php
|
|
@ -1,7 +1,15 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
if( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
||||||
|
|
||||||
|
if( ! class_exists('acf_admin') ) :
|
||||||
|
|
||||||
class acf_admin {
|
class acf_admin {
|
||||||
|
|
||||||
|
// vars
|
||||||
|
var $notices = array();
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* __construct
|
* __construct
|
||||||
*
|
*
|
||||||
|
|
@ -25,6 +33,58 @@ class acf_admin {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* add_notice
|
||||||
|
*
|
||||||
|
* This function will add the notice data to a setting in the acf object for the admin_notices action to use
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 17/10/13
|
||||||
|
* @since 5.0.0
|
||||||
|
*
|
||||||
|
* @param $text (string)
|
||||||
|
* @param $class (string)
|
||||||
|
* @param wrap (string)
|
||||||
|
* @return n/a
|
||||||
|
*/
|
||||||
|
|
||||||
|
function add_notice( $text = '', $class = '', $wrap = 'p' ) {
|
||||||
|
|
||||||
|
// append
|
||||||
|
$this->notices[] = array(
|
||||||
|
'text' => $text,
|
||||||
|
'class' => 'updated ' . $class,
|
||||||
|
'wrap' => $wrap
|
||||||
|
);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* get_notices
|
||||||
|
*
|
||||||
|
* This function will return an array of admin notices
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 17/10/13
|
||||||
|
* @since 5.0.0
|
||||||
|
*
|
||||||
|
* @param n/a
|
||||||
|
* @return (array)
|
||||||
|
*/
|
||||||
|
|
||||||
|
function get_notices() {
|
||||||
|
|
||||||
|
// bail early if no notices
|
||||||
|
if( empty($this->notices) ) return false;
|
||||||
|
|
||||||
|
|
||||||
|
// return
|
||||||
|
return $this->notices;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* admin_menu
|
* admin_menu
|
||||||
*
|
*
|
||||||
|
|
@ -41,11 +101,7 @@ class acf_admin {
|
||||||
function admin_menu() {
|
function admin_menu() {
|
||||||
|
|
||||||
// bail early if no show_admin
|
// bail early if no show_admin
|
||||||
if( !acf_get_setting('show_admin') ) {
|
if( !acf_get_setting('show_admin') ) return;
|
||||||
|
|
||||||
return;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// vars
|
// vars
|
||||||
|
|
@ -100,18 +156,15 @@ class acf_admin {
|
||||||
function admin_notices() {
|
function admin_notices() {
|
||||||
|
|
||||||
// vars
|
// vars
|
||||||
$admin_notices = acf_get_admin_notices();
|
$notices = $this->get_notices();
|
||||||
|
|
||||||
|
|
||||||
// bail early if no notices
|
// bail early if no notices
|
||||||
if( empty($admin_notices) ) {
|
if( !$notices ) return;
|
||||||
|
|
||||||
return;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
foreach( $admin_notices as $notice ) {
|
// loop
|
||||||
|
foreach( $notices as $notice ) {
|
||||||
|
|
||||||
$open = '';
|
$open = '';
|
||||||
$close = '';
|
$close = '';
|
||||||
|
|
@ -133,8 +186,50 @@ class acf_admin {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// initialize
|
// initialize
|
||||||
new acf_admin();
|
acf()->admin = new acf_admin();
|
||||||
|
|
||||||
|
endif; // class_exists check
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* acf_add_admin_notice
|
||||||
|
*
|
||||||
|
* This function will add the notice data to a setting in the acf object for the admin_notices action to use
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 17/10/13
|
||||||
|
* @since 5.0.0
|
||||||
|
*
|
||||||
|
* @param $text (string)
|
||||||
|
* @param $class (string)
|
||||||
|
* @return (int) message ID (array position)
|
||||||
|
*/
|
||||||
|
|
||||||
|
function acf_add_admin_notice( $text, $class = '', $wrap = 'p' ) {
|
||||||
|
|
||||||
|
return acf()->admin->add_notice($text, $class, $wrap);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* acf_get_admin_notices
|
||||||
|
*
|
||||||
|
* This function will return an array containing any admin notices
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 17/10/13
|
||||||
|
* @since 5.0.0
|
||||||
|
*
|
||||||
|
* @param n/a
|
||||||
|
* @return (array)
|
||||||
|
*/
|
||||||
|
|
||||||
|
function acf_get_admin_notices() {
|
||||||
|
|
||||||
|
return acf()->admin->get_notices();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
|
||||||
|
|
@ -392,7 +392,7 @@ class acf_admin_field_group {
|
||||||
|
|
||||||
|
|
||||||
// vars
|
// vars
|
||||||
$status = $field_group['active'] ? __("Active",'acf') : __("Disabled",'acf');
|
$status = $field_group['active'] ? __("Active",'acf') : __("Inactive",'acf');
|
||||||
|
|
||||||
?>
|
?>
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
|
|
@ -697,11 +697,14 @@ class acf_admin_field_group {
|
||||||
case "post_type" :
|
case "post_type" :
|
||||||
|
|
||||||
// get post types
|
// get post types
|
||||||
$choices = acf_get_pretty_post_types();
|
$post_types = acf_get_post_types(array(
|
||||||
|
'show_ui' => 1,
|
||||||
|
'exclude' => array('attachment')
|
||||||
|
));
|
||||||
|
|
||||||
|
|
||||||
// remove attachments
|
// get choices
|
||||||
unset( $choices['attachment'] );
|
$choices = acf_get_pretty_post_types( $post_types );
|
||||||
|
|
||||||
|
|
||||||
// end
|
// end
|
||||||
|
|
@ -711,10 +714,11 @@ class acf_admin_field_group {
|
||||||
case "post" :
|
case "post" :
|
||||||
|
|
||||||
// get post types
|
// get post types
|
||||||
$exclude = array('page', 'attachment');
|
$post_types = acf_get_post_types(array(
|
||||||
$post_types = acf_get_post_types( $exclude );
|
'exclude' => array('page', 'attachment')
|
||||||
|
));
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// get posts grouped by post type
|
// get posts grouped by post type
|
||||||
$groups = acf_get_grouped_posts(array(
|
$groups = acf_get_grouped_posts(array(
|
||||||
'post_type' => $post_types
|
'post_type' => $post_types
|
||||||
|
|
@ -747,7 +751,32 @@ class acf_admin_field_group {
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case "post_template" :
|
||||||
|
|
||||||
|
// vars
|
||||||
|
$templates = wp_get_theme()->get_post_templates();
|
||||||
|
$default = apply_filters( 'default_page_template_title', __('Default Template', 'acf') );
|
||||||
|
|
||||||
|
|
||||||
|
// choices
|
||||||
|
$choices = array('default' => $default);
|
||||||
|
|
||||||
|
|
||||||
|
// templates
|
||||||
|
if( !empty($templates) ) {
|
||||||
|
|
||||||
|
foreach( $templates as $post_type => $post_type_templates ) {
|
||||||
|
|
||||||
|
$choices = array_merge($choices, $post_type_templates);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// break
|
||||||
|
break;
|
||||||
|
|
||||||
case "post_category" :
|
case "post_category" :
|
||||||
|
|
||||||
$terms = acf_get_taxonomy_terms( 'category' );
|
$terms = acf_get_taxonomy_terms( 'category' );
|
||||||
|
|
@ -862,18 +891,13 @@ class acf_admin_field_group {
|
||||||
|
|
||||||
case "page_template" :
|
case "page_template" :
|
||||||
|
|
||||||
$choices = array(
|
// vars
|
||||||
'default' => apply_filters( 'default_page_template_title', __('Default Template', 'acf') ),
|
$templates = wp_get_theme()->get_page_templates();
|
||||||
);
|
$default = apply_filters( 'default_page_template_title', __('Default Template', 'acf') );
|
||||||
|
|
||||||
|
|
||||||
$templates = get_page_templates();
|
// merge
|
||||||
|
$choices = array_merge(array('default' => $default), $templates);
|
||||||
foreach( $templates as $k => $v ) {
|
|
||||||
|
|
||||||
$choices[ $v ] = $k;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -564,7 +564,7 @@ class acf_admin_field_groups {
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
echo '<i class="acf-icon -minus yellow small acf-js-tooltip" title="' . __('Disabled', 'acf') . '"></i> ';
|
echo '<i class="acf-icon -minus yellow small acf-js-tooltip" title="' . __('Inactive', 'acf') . '"></i> ';
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -594,9 +594,13 @@ class acf_admin_field_groups {
|
||||||
function admin_footer() {
|
function admin_footer() {
|
||||||
|
|
||||||
// vars
|
// vars
|
||||||
$www = 'https://www.advancedcustomfields.com/resources/';
|
$url_home = 'https://www.advancedcustomfields.com';
|
||||||
|
$url_support = 'https://support.advancedcustomfields.com';
|
||||||
|
$url_docs = $url_home . '/resources/';
|
||||||
|
|
||||||
?><script type="text/html" id="tmpl-acf-column-2">
|
|
||||||
|
?>
|
||||||
|
<script type="text/html" id="tmpl-acf-column-2">
|
||||||
<div class="acf-column-2">
|
<div class="acf-column-2">
|
||||||
<div class="acf-box">
|
<div class="acf-box">
|
||||||
<div class="inner">
|
<div class="inner">
|
||||||
|
|
@ -607,21 +611,22 @@ class acf_admin_field_groups {
|
||||||
|
|
||||||
<h3><?php _e("Resources",'acf'); ?></h3>
|
<h3><?php _e("Resources",'acf'); ?></h3>
|
||||||
<ul>
|
<ul>
|
||||||
<li><a href="<?php echo $www; ?>#getting-started" target="_blank"><?php _e("Getting Started",'acf'); ?></a></li>
|
<li><a href="<?php echo $url_docs; ?>" target="_blank"><?php _e("Documentation",'acf'); ?></a></li>
|
||||||
<li><a href="<?php echo $www; ?>#updates" target="_blank"><?php _e("Updates",'acf'); ?></a></li>
|
|
||||||
<li><a href="<?php echo $www; ?>#field-types" target="_blank"><?php _e("Field Types",'acf'); ?></a></li>
|
<li><a href="<?php echo $url_docs; ?>#getting-started" target="_blank"><?php _e("Getting Started",'acf'); ?></a></li>
|
||||||
<li><a href="<?php echo $www; ?>#functions" target="_blank"><?php _e("Functions",'acf'); ?></a></li>
|
<li><a href="<?php echo $url_docs; ?>#field-types" target="_blank"><?php _e("Field Types",'acf'); ?></a></li>
|
||||||
<li><a href="<?php echo $www; ?>#actions" target="_blank"><?php _e("Actions",'acf'); ?></a></li>
|
<li><a href="<?php echo $url_docs; ?>#functions" target="_blank"><?php _e("Functions",'acf'); ?></a></li>
|
||||||
<li><a href="<?php echo $www; ?>#filters" target="_blank"><?php _e("Filters",'acf'); ?></a></li>
|
<li><a href="<?php echo $url_docs; ?>#actions" target="_blank"><?php _e("Actions",'acf'); ?></a></li>
|
||||||
<li><a href="<?php echo $www; ?>#how-to" target="_blank"><?php _e("'How to' guides",'acf'); ?></a></li>
|
<li><a href="<?php echo $url_docs; ?>#filters" target="_blank"><?php _e("Filters",'acf'); ?></a></li>
|
||||||
<li><a href="<?php echo $www; ?>#tutorials" target="_blank"><?php _e("Tutorials",'acf'); ?></a></li>
|
<li><a href="<?php echo $url_docs; ?>#features" target="_blank"><?php _e("Features",'acf'); ?></a></li>
|
||||||
<li><a href="<?php echo $www; ?>#faq" target="_blank"><?php _e("FAQ",'acf'); ?></a></li>
|
<li><a href="<?php echo $url_docs; ?>#how-to" target="_blank"><?php _e("How to",'acf'); ?></a></li>
|
||||||
|
<li><a href="<?php echo $url_docs; ?>#tutorials" target="_blank"><?php _e("Tutorials",'acf'); ?></a></li>
|
||||||
|
<li><a href="<?php echo $url_docs; ?>#faq" target="_blank"><?php _e("FAQ",'acf'); ?></a></li>
|
||||||
|
<li><a href="<?php echo $url_support; ?>" target="_blank"><?php _e("Support",'acf'); ?></a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<div class="footer footer-blue">
|
<div class="footer -blue">
|
||||||
<ul class="acf-hl">
|
<p><?php echo sprintf( __('Thank you for creating with <a href="%s">ACF</a>.','acf'), $url_home ); ?></p>
|
||||||
<li><?php _e("Created by",'acf'); ?> Elliot Condon</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -1,18 +1,10 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
/*
|
if( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
||||||
* ACF Admin Update Network Class
|
|
||||||
*
|
|
||||||
* All the logic for updates
|
|
||||||
*
|
|
||||||
* @class acf_admin_update
|
|
||||||
* @package ACF
|
|
||||||
* @subpackage Admin
|
|
||||||
*/
|
|
||||||
|
|
||||||
if( ! class_exists('acf_admin_update_network') ) :
|
if( ! class_exists('acf_admin_install_network') ) :
|
||||||
|
|
||||||
class acf_admin_update_network {
|
class acf_admin_install_network {
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* __construct
|
* __construct
|
||||||
|
|
@ -65,7 +57,7 @@ class acf_admin_update_network {
|
||||||
|
|
||||||
|
|
||||||
// get site updates
|
// get site updates
|
||||||
$updates = acf_get_updates();
|
$updates = acf_get_db_updates();
|
||||||
|
|
||||||
|
|
||||||
// restore
|
// restore
|
||||||
|
|
@ -93,7 +85,7 @@ class acf_admin_update_network {
|
||||||
|
|
||||||
|
|
||||||
// add page
|
// add page
|
||||||
$page = add_submenu_page('index.php', __('Upgrade Database','acf'), __('Upgrade Database','acf'), acf_get_setting('capability'), 'acf-upgrade', array($this,'network_html'));
|
$page = add_submenu_page('index.php', __('Upgrade Database','acf'), __('Upgrade Database','acf'), acf_get_setting('capability'), 'acf-upgrade-network', array($this,'network_html'));
|
||||||
|
|
||||||
|
|
||||||
// actions
|
// actions
|
||||||
|
|
@ -146,13 +138,13 @@ class acf_admin_update_network {
|
||||||
// view
|
// view
|
||||||
$view = array(
|
$view = array(
|
||||||
'button_text' => __("Review sites & upgrade", 'acf'),
|
'button_text' => __("Review sites & upgrade", 'acf'),
|
||||||
'button_url' => network_admin_url('index.php?page=acf-upgrade'),
|
'button_url' => network_admin_url('index.php?page=acf-upgrade-network'),
|
||||||
'confirm' => false
|
'confirm' => false
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
// load view
|
// load view
|
||||||
acf_get_view('update-notice', $view);
|
acf_get_view('install-notice', $view);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -193,7 +185,7 @@ class acf_admin_update_network {
|
||||||
|
|
||||||
|
|
||||||
// get site updates
|
// get site updates
|
||||||
$site['updates'] = acf_get_updates();
|
$site['updates'] = acf_get_db_updates();
|
||||||
|
|
||||||
|
|
||||||
// get site version
|
// get site version
|
||||||
|
|
@ -228,16 +220,16 @@ class acf_admin_update_network {
|
||||||
|
|
||||||
|
|
||||||
// load view
|
// load view
|
||||||
acf_get_view('update-network', $view);
|
acf_get_view('install-network', $view);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// initialize
|
// initialize
|
||||||
new acf_admin_update_network();
|
new acf_admin_install_network();
|
||||||
|
|
||||||
endif;
|
endif; // class_exists check
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
@ -0,0 +1,553 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
if( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* acf_update_500
|
||||||
|
*
|
||||||
|
* These functions will update the DB for ACF v5.0.0
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 10/09/2016
|
||||||
|
* @since 5.4.0
|
||||||
|
*
|
||||||
|
* @param n/a
|
||||||
|
* @return n/a
|
||||||
|
*/
|
||||||
|
|
||||||
|
function acf_update_500() {
|
||||||
|
|
||||||
|
// action for 3rd party
|
||||||
|
do_action('acf/update_500');
|
||||||
|
|
||||||
|
|
||||||
|
// field groups
|
||||||
|
acf_update_500_field_groups();
|
||||||
|
|
||||||
|
|
||||||
|
// version
|
||||||
|
acf_update_db_version('5.0.0');
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function acf_update_500_field_groups() {
|
||||||
|
|
||||||
|
// vars
|
||||||
|
$ofgs = get_posts(array(
|
||||||
|
'numberposts' => -1,
|
||||||
|
'post_type' => 'acf',
|
||||||
|
'orderby' => 'menu_order title',
|
||||||
|
'order' => 'asc',
|
||||||
|
'suppress_filters' => true,
|
||||||
|
));
|
||||||
|
|
||||||
|
|
||||||
|
// check
|
||||||
|
if( !$ofgs ) return;
|
||||||
|
|
||||||
|
|
||||||
|
// loop
|
||||||
|
foreach( $ofgs as $ofg ){
|
||||||
|
|
||||||
|
$nfg = acf_update_500_field_group( $ofg );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function acf_update_500_field_group( $ofg ) {
|
||||||
|
|
||||||
|
// global
|
||||||
|
global $wpdb;
|
||||||
|
|
||||||
|
|
||||||
|
// create new field group
|
||||||
|
$nfg = array(
|
||||||
|
'ID' => 0,
|
||||||
|
'title' => $ofg->post_title,
|
||||||
|
'menu_order' => $ofg->menu_order,
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// location rules
|
||||||
|
$groups = array();
|
||||||
|
|
||||||
|
|
||||||
|
// get all rules
|
||||||
|
$rules = get_post_meta($ofg->ID, 'rule', false);
|
||||||
|
|
||||||
|
if( is_array($rules) ) {
|
||||||
|
|
||||||
|
$group_no = 0;
|
||||||
|
|
||||||
|
foreach( $rules as $rule ) {
|
||||||
|
|
||||||
|
// if field group was duplicated, it may now be a serialized string!
|
||||||
|
$rule = maybe_unserialize($rule);
|
||||||
|
|
||||||
|
|
||||||
|
// does this rule have a group?
|
||||||
|
// + groups were added in 4.0.4
|
||||||
|
if( !isset($rule['group_no']) ) {
|
||||||
|
|
||||||
|
$rule['group_no'] = $group_no;
|
||||||
|
|
||||||
|
// sperate groups?
|
||||||
|
if( get_post_meta($ofg->ID, 'allorany', true) == 'any' ) {
|
||||||
|
|
||||||
|
$group_no++;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// extract vars
|
||||||
|
$group = acf_extract_var( $rule, 'group_no' );
|
||||||
|
$order = acf_extract_var( $rule, 'order_no' );
|
||||||
|
|
||||||
|
|
||||||
|
// add to group
|
||||||
|
$groups[ $group ][ $order ] = $rule;
|
||||||
|
|
||||||
|
|
||||||
|
// sort rules
|
||||||
|
ksort( $groups[ $group ] );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// sort groups
|
||||||
|
ksort( $groups );
|
||||||
|
}
|
||||||
|
|
||||||
|
$nfg['location'] = $groups;
|
||||||
|
|
||||||
|
|
||||||
|
// settings
|
||||||
|
if( $position = get_post_meta($ofg->ID, 'position', true) ) {
|
||||||
|
|
||||||
|
$nfg['position'] = $position;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if( $layout = get_post_meta($ofg->ID, 'layout', true) ) {
|
||||||
|
|
||||||
|
$nfg['layout'] = $layout;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if( $hide_on_screen = get_post_meta($ofg->ID, 'hide_on_screen', true) ) {
|
||||||
|
|
||||||
|
$nfg['hide_on_screen'] = maybe_unserialize($hide_on_screen);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Note: acf_update_field_group will call the acf_get_valid_field_group function and apply 'compatibility' changes
|
||||||
|
|
||||||
|
|
||||||
|
// save field group
|
||||||
|
$nfg = acf_update_field_group( $nfg );
|
||||||
|
|
||||||
|
|
||||||
|
// action for 3rd party
|
||||||
|
do_action('acf/update_500_field_group', $nfg, $ofg);
|
||||||
|
|
||||||
|
|
||||||
|
// trash?
|
||||||
|
if( $ofg->post_status == 'trash' ) {
|
||||||
|
|
||||||
|
acf_trash_field_group( $nfg['ID'] );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// global
|
||||||
|
global $wpdb;
|
||||||
|
|
||||||
|
|
||||||
|
// get field from postmeta
|
||||||
|
$rows = $wpdb->get_results( $wpdb->prepare("SELECT * FROM $wpdb->postmeta WHERE post_id = %d AND meta_key LIKE %s", $ofg->ID, 'field_%'), ARRAY_A);
|
||||||
|
|
||||||
|
|
||||||
|
// check
|
||||||
|
if( $rows ) {
|
||||||
|
|
||||||
|
// loop
|
||||||
|
foreach( $rows as $row ) {
|
||||||
|
|
||||||
|
// bail early if key already migrated (potential duplicates in DB)
|
||||||
|
if( acf_has_done('update_500_field_group_' . $ofg->ID . '_' . $row['meta_key']) ) continue;
|
||||||
|
|
||||||
|
|
||||||
|
// vars
|
||||||
|
$field = $row['meta_value'];
|
||||||
|
$field = maybe_unserialize( $field );
|
||||||
|
$field = maybe_unserialize( $field ); // run again for WPML
|
||||||
|
|
||||||
|
|
||||||
|
// add parent
|
||||||
|
$field['parent'] = $nfg['ID'];
|
||||||
|
|
||||||
|
|
||||||
|
// migrate field
|
||||||
|
$field = acf_update_500_field( $field );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// return
|
||||||
|
return $nfg;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function acf_update_500_field( $field ) {
|
||||||
|
|
||||||
|
// orig
|
||||||
|
$orig = $field;
|
||||||
|
|
||||||
|
|
||||||
|
// order_no is now menu_order
|
||||||
|
$field['menu_order'] = acf_extract_var( $field, 'order_no' );
|
||||||
|
|
||||||
|
|
||||||
|
// correct very old field keys
|
||||||
|
if( substr($field['key'], 0, 6) !== 'field_' ) {
|
||||||
|
|
||||||
|
$field['key'] = 'field_' . str_replace('field', '', $field['key']);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// get valid field
|
||||||
|
$field = acf_get_valid_field( $field );
|
||||||
|
|
||||||
|
|
||||||
|
// save field
|
||||||
|
$field = acf_update_field( $field );
|
||||||
|
|
||||||
|
|
||||||
|
// sub fields
|
||||||
|
if( $field['type'] == 'repeater' ) {
|
||||||
|
|
||||||
|
// get sub fields
|
||||||
|
$sub_fields = acf_extract_var( $orig, 'sub_fields' );
|
||||||
|
|
||||||
|
|
||||||
|
// save sub fields
|
||||||
|
if( !empty($sub_fields) ) {
|
||||||
|
|
||||||
|
$keys = array_keys($sub_fields);
|
||||||
|
|
||||||
|
foreach( $keys as $key ) {
|
||||||
|
|
||||||
|
$sub_field = acf_extract_var($sub_fields, $key);
|
||||||
|
$sub_field['parent'] = $field['ID'];
|
||||||
|
|
||||||
|
acf_update_500_field( $sub_field );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
} elseif( $field['type'] == 'flexible_content' ) {
|
||||||
|
|
||||||
|
// get layouts
|
||||||
|
$layouts = acf_extract_var( $orig, 'layouts' );
|
||||||
|
|
||||||
|
|
||||||
|
// update layouts
|
||||||
|
$field['layouts'] = array();
|
||||||
|
|
||||||
|
|
||||||
|
// save sub fields
|
||||||
|
if( !empty($layouts) ) {
|
||||||
|
|
||||||
|
foreach( $layouts as $layout ) {
|
||||||
|
|
||||||
|
// vars
|
||||||
|
$layout_key = uniqid();
|
||||||
|
|
||||||
|
|
||||||
|
// append layotu key
|
||||||
|
$layout['key'] = $layout_key;
|
||||||
|
|
||||||
|
|
||||||
|
// extract sub fields
|
||||||
|
$sub_fields = acf_extract_var($layout, 'sub_fields');
|
||||||
|
|
||||||
|
|
||||||
|
// save sub fields
|
||||||
|
if( !empty($sub_fields) ) {
|
||||||
|
|
||||||
|
$keys = array_keys($sub_fields);
|
||||||
|
|
||||||
|
foreach( $keys as $key ) {
|
||||||
|
|
||||||
|
$sub_field = acf_extract_var($sub_fields, $key);
|
||||||
|
$sub_field['parent'] = $field['ID'];
|
||||||
|
$sub_field['parent_layout'] = $layout_key;
|
||||||
|
|
||||||
|
acf_update_500_field( $sub_field );
|
||||||
|
|
||||||
|
}
|
||||||
|
// foreach
|
||||||
|
|
||||||
|
}
|
||||||
|
// if
|
||||||
|
|
||||||
|
|
||||||
|
// append layout
|
||||||
|
$field['layouts'][] = $layout;
|
||||||
|
|
||||||
|
}
|
||||||
|
// foreach
|
||||||
|
|
||||||
|
}
|
||||||
|
// if
|
||||||
|
|
||||||
|
|
||||||
|
// save field again with less sub field data
|
||||||
|
$field = acf_update_field( $field );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// action for 3rd party
|
||||||
|
do_action('acf/update_500_field', $field);
|
||||||
|
|
||||||
|
|
||||||
|
// return
|
||||||
|
return $field;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* acf_update_550
|
||||||
|
*
|
||||||
|
* These functions will update the DB for ACF v5.5.0
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 10/09/2016
|
||||||
|
* @since 5.4.0
|
||||||
|
*
|
||||||
|
* @param n/a
|
||||||
|
* @return n/a
|
||||||
|
*/
|
||||||
|
|
||||||
|
function acf_update_550() { //acf_log('acf_update_550');
|
||||||
|
|
||||||
|
// action for 3rd party
|
||||||
|
do_action('acf/update_550');
|
||||||
|
|
||||||
|
|
||||||
|
// bail early if no table
|
||||||
|
if( !acf_isset_termmeta() ) {
|
||||||
|
|
||||||
|
update_option('acf_update_550_termmeta', 1);
|
||||||
|
echo __('Term meta upgrade not possible (termmeta table does not exist)', 'acf');
|
||||||
|
return;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// termmeta
|
||||||
|
acf_update_550_termmeta();
|
||||||
|
|
||||||
|
|
||||||
|
// version
|
||||||
|
acf_update_db_version('5.5.0');
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* acf_update_550_termmeta
|
||||||
|
*
|
||||||
|
* This function will migrate all term meta
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 3/09/2016
|
||||||
|
* @since 5.4.0
|
||||||
|
*
|
||||||
|
* @param n/a
|
||||||
|
* @return n/a
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
function acf_update_550_termmeta() { //acf_log('acf_update_550_termmeta');
|
||||||
|
|
||||||
|
// vars
|
||||||
|
$taxonomies = get_taxonomies(false, 'objects');
|
||||||
|
|
||||||
|
|
||||||
|
// bail early if no taxonomies
|
||||||
|
if( !$taxonomies ) return;
|
||||||
|
|
||||||
|
|
||||||
|
// loop
|
||||||
|
foreach( $taxonomies as $taxonomy ) {
|
||||||
|
|
||||||
|
acf_update_550_taxonomy( $taxonomy );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// delete trigger
|
||||||
|
delete_option('acf_update_550_termmeta');
|
||||||
|
|
||||||
|
|
||||||
|
// action for 3rd party
|
||||||
|
do_action('acf/update_550_termmeta');
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* acf_update_550_taxonomy
|
||||||
|
*
|
||||||
|
* This function will migrate term meta for a specific taxonomy
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 3/09/2016
|
||||||
|
* @since 5.4.0
|
||||||
|
*
|
||||||
|
* @param $taxonomy (string)
|
||||||
|
* @return n/a
|
||||||
|
*/
|
||||||
|
|
||||||
|
function acf_update_550_taxonomy( $taxonomy ) { //acf_log('acf_update_550_taxonomy', $taxonomy);
|
||||||
|
|
||||||
|
// vars
|
||||||
|
$terms = get_terms($taxonomy->name, array( 'hide_empty' => false ));
|
||||||
|
|
||||||
|
|
||||||
|
// bail early if no terms
|
||||||
|
if( !$terms ) return;
|
||||||
|
|
||||||
|
|
||||||
|
// loop
|
||||||
|
foreach( $terms as $term ) {
|
||||||
|
|
||||||
|
acf_update_550_term( $term );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// action for 3rd party
|
||||||
|
do_action('acf/update_550_taxonomy', $taxonomy);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* acf_update_550_term
|
||||||
|
*
|
||||||
|
* This function will migrate term meta for a specific term
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 3/09/2016
|
||||||
|
* @since 5.4.0
|
||||||
|
*
|
||||||
|
* @param $term (object)
|
||||||
|
* @return n/a
|
||||||
|
*/
|
||||||
|
|
||||||
|
function acf_update_550_term( $term ) { //acf_log('acf_update_550_term', $term);
|
||||||
|
|
||||||
|
// global
|
||||||
|
global $wpdb;
|
||||||
|
|
||||||
|
|
||||||
|
// vars
|
||||||
|
$meta = array();
|
||||||
|
$post_id = $term->taxonomy . '_' . $term->term_id;
|
||||||
|
|
||||||
|
|
||||||
|
// vars
|
||||||
|
$search = $post_id . '_%';
|
||||||
|
$_search = '_' . $search;
|
||||||
|
|
||||||
|
|
||||||
|
// escape '_'
|
||||||
|
// http://stackoverflow.com/questions/2300285/how-do-i-escape-in-sql-server
|
||||||
|
$search = str_replace('_', '\_', $search);
|
||||||
|
$_search = str_replace('_', '\_', $_search);
|
||||||
|
|
||||||
|
|
||||||
|
// search
|
||||||
|
$rows = $wpdb->get_results($wpdb->prepare(
|
||||||
|
"SELECT *
|
||||||
|
FROM $wpdb->options
|
||||||
|
WHERE option_name LIKE %s
|
||||||
|
OR option_name LIKE %s",
|
||||||
|
$search,
|
||||||
|
$_search
|
||||||
|
), ARRAY_A);
|
||||||
|
|
||||||
|
|
||||||
|
// bail early if no row
|
||||||
|
if( empty($rows) ) return;
|
||||||
|
|
||||||
|
|
||||||
|
// vars
|
||||||
|
$search = $post_id . '_';
|
||||||
|
$_search = '_' . $search;
|
||||||
|
|
||||||
|
|
||||||
|
// loop
|
||||||
|
foreach( $rows as $row ) {
|
||||||
|
|
||||||
|
// vars
|
||||||
|
$name = $row['option_name'];
|
||||||
|
|
||||||
|
|
||||||
|
// extract $post_id from options name
|
||||||
|
if( strpos($name, $search) === 0 ) {
|
||||||
|
|
||||||
|
$name = substr($name, strlen($search));
|
||||||
|
|
||||||
|
// extract _$post_id from options name
|
||||||
|
} elseif( strpos($name, $_search) === 0 ) {
|
||||||
|
|
||||||
|
$name = '_' . substr($name, strlen($_search));
|
||||||
|
|
||||||
|
// $post_id not found at begining of name (false result)
|
||||||
|
} else {
|
||||||
|
|
||||||
|
continue;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// append
|
||||||
|
$meta[ $name ] = $row['option_value'];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// bail ealry if no meta
|
||||||
|
if( empty($meta) ) return;
|
||||||
|
|
||||||
|
|
||||||
|
// loop
|
||||||
|
foreach( $meta as $name => $value ) {
|
||||||
|
|
||||||
|
// update
|
||||||
|
update_metadata( 'term', $term->term_id, $name, $value );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// action for 3rd party
|
||||||
|
do_action('acf/update_550_term', $term);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
||||||
|
|
@ -0,0 +1,425 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
if( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
||||||
|
|
||||||
|
if( ! class_exists('acf_admin_install') ) :
|
||||||
|
|
||||||
|
class acf_admin_install {
|
||||||
|
|
||||||
|
// vars
|
||||||
|
var $db_updates = array(
|
||||||
|
'5.0.0' => 'acf_update_500',
|
||||||
|
'5.5.0' => 'acf_update_550'
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* __construct
|
||||||
|
*
|
||||||
|
* This function will setup the class functionality
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 5/03/2014
|
||||||
|
* @since 5.0.0
|
||||||
|
*
|
||||||
|
* @param n/a
|
||||||
|
* @return n/a
|
||||||
|
*/
|
||||||
|
|
||||||
|
function __construct() {
|
||||||
|
|
||||||
|
// actions
|
||||||
|
add_action('admin_menu', array($this,'admin_menu'), 20);
|
||||||
|
add_action('wp_upgrade', array($this,'wp_upgrade'), 10, 2);
|
||||||
|
|
||||||
|
|
||||||
|
// ajax
|
||||||
|
add_action('wp_ajax_acf/admin/db_update', array($this, 'ajax_db_update'));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* admin_menu
|
||||||
|
*
|
||||||
|
* This function will chck for available updates and add actions if needed
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 19/02/2014
|
||||||
|
* @since 5.0.0
|
||||||
|
*
|
||||||
|
* @param n/a
|
||||||
|
* @return n/a
|
||||||
|
*/
|
||||||
|
|
||||||
|
function admin_menu() {
|
||||||
|
|
||||||
|
// vars
|
||||||
|
$updates = acf_get_db_updates();
|
||||||
|
|
||||||
|
|
||||||
|
// bail early if no updates available
|
||||||
|
if( !$updates ) return;
|
||||||
|
|
||||||
|
|
||||||
|
// actions
|
||||||
|
add_action('admin_notices', array($this, 'admin_notices'), 1);
|
||||||
|
|
||||||
|
|
||||||
|
// add page
|
||||||
|
$page = add_submenu_page('index.php', __('Upgrade Database','acf'), __('Upgrade Database','acf'), acf_get_setting('capability'), 'acf-upgrade', array($this,'html') );
|
||||||
|
|
||||||
|
|
||||||
|
// actions
|
||||||
|
add_action('load-' . $page, array($this,'load'));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* load
|
||||||
|
*
|
||||||
|
* This function will look at the $_POST data and run any functions if needed
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 7/01/2014
|
||||||
|
* @since 5.0.0
|
||||||
|
*
|
||||||
|
* @param n/a
|
||||||
|
* @return n/a
|
||||||
|
*/
|
||||||
|
|
||||||
|
function load() {
|
||||||
|
|
||||||
|
// hide upgrade
|
||||||
|
remove_action('admin_notices', array($this, 'admin_notices'), 1);
|
||||||
|
|
||||||
|
|
||||||
|
// load acf scripts
|
||||||
|
acf_enqueue_scripts();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* admin_notices
|
||||||
|
*
|
||||||
|
* This function will render any admin notices
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 17/10/13
|
||||||
|
* @since 5.0.0
|
||||||
|
*
|
||||||
|
* @param n/a
|
||||||
|
* @return n/a
|
||||||
|
*/
|
||||||
|
|
||||||
|
function admin_notices() {
|
||||||
|
|
||||||
|
// view
|
||||||
|
$view = array(
|
||||||
|
'button_text' => __("Upgrade Database", 'acf'),
|
||||||
|
'button_url' => admin_url('index.php?page=acf-upgrade')
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// load view
|
||||||
|
acf_get_view('install-notice', $view);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* html
|
||||||
|
*
|
||||||
|
* description
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 19/02/2014
|
||||||
|
* @since 5.0.0
|
||||||
|
*
|
||||||
|
* @param $post_id (int)
|
||||||
|
* @return $post_id (int)
|
||||||
|
*/
|
||||||
|
|
||||||
|
function html() {
|
||||||
|
|
||||||
|
// view
|
||||||
|
$view = array(
|
||||||
|
'updates' => acf_get_db_updates(),
|
||||||
|
'plugin_version' => acf_get_setting('version')
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// load view
|
||||||
|
acf_get_view('install', $view);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* ajax_db_update
|
||||||
|
*
|
||||||
|
* description
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 24/10/13
|
||||||
|
* @since 5.0.0
|
||||||
|
*
|
||||||
|
* @param $post_id (int)
|
||||||
|
* @return $post_id (int)
|
||||||
|
*/
|
||||||
|
|
||||||
|
function ajax_db_update() {
|
||||||
|
|
||||||
|
// options
|
||||||
|
$options = wp_parse_args( $_POST, array(
|
||||||
|
'nonce' => '',
|
||||||
|
'blog_id' => '',
|
||||||
|
));
|
||||||
|
|
||||||
|
|
||||||
|
// validate
|
||||||
|
if( !wp_verify_nonce($options['nonce'], 'acf_db_update') ) {
|
||||||
|
|
||||||
|
wp_send_json_error(array(
|
||||||
|
'message' => __('Error validating request', 'acf')
|
||||||
|
));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// switch blog
|
||||||
|
if( $options['blog_id'] ) {
|
||||||
|
|
||||||
|
switch_to_blog( $options['blog_id'] );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// vars
|
||||||
|
$updates = acf_get_db_updates();
|
||||||
|
$message = '';
|
||||||
|
|
||||||
|
|
||||||
|
// bail early if no updates
|
||||||
|
if( empty($updates) ) {
|
||||||
|
|
||||||
|
wp_send_json_error(array(
|
||||||
|
'message' => __('No updates available.', 'acf')
|
||||||
|
));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// install updates
|
||||||
|
foreach( $updates as $version => $callback ) {
|
||||||
|
|
||||||
|
$message .= $this->run_update( $callback );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// updates complete
|
||||||
|
acf_update_db_version();
|
||||||
|
|
||||||
|
|
||||||
|
// return
|
||||||
|
wp_send_json_success(array(
|
||||||
|
'message' => $message
|
||||||
|
));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* run_db_update
|
||||||
|
*
|
||||||
|
* This function will perform a db upgrade
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 10/09/2016
|
||||||
|
* @since 5.4.0
|
||||||
|
*
|
||||||
|
* @param $post_id (int)
|
||||||
|
* @return $post_id (int)
|
||||||
|
*/
|
||||||
|
|
||||||
|
function run_update( $callback = '' ) {
|
||||||
|
|
||||||
|
// include update functions
|
||||||
|
acf_include('admin/install-updates.php');
|
||||||
|
|
||||||
|
|
||||||
|
// bail early if not found
|
||||||
|
if( !function_exists($callback) ) return false;
|
||||||
|
|
||||||
|
|
||||||
|
// load any errors / feedback from update
|
||||||
|
ob_start();
|
||||||
|
|
||||||
|
|
||||||
|
// include
|
||||||
|
call_user_func($callback);
|
||||||
|
|
||||||
|
|
||||||
|
// get feedback
|
||||||
|
$message = ob_get_clean();
|
||||||
|
|
||||||
|
|
||||||
|
// return
|
||||||
|
return $message;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* wp_upgrade
|
||||||
|
*
|
||||||
|
* This function will run when the WP database is updated
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 10/09/2016
|
||||||
|
* @since 5.4.0
|
||||||
|
*
|
||||||
|
* @param $wp_db_version (string) The new $wp_db_version
|
||||||
|
* @return $wp_current_db_version (string) The old (current) $wp_db_version
|
||||||
|
*/
|
||||||
|
|
||||||
|
function wp_upgrade( $wp_db_version, $wp_current_db_version ) {
|
||||||
|
|
||||||
|
// termmeta was added in 34370
|
||||||
|
if( $wp_db_version >= 34370 && $wp_current_db_version < 34370 && get_option('acf_update_550_termmeta') ) {
|
||||||
|
|
||||||
|
$this->run_update('acf_update_550_termmeta');
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// initialize
|
||||||
|
acf()->admin->install = new acf_admin_install();
|
||||||
|
|
||||||
|
endif; // class_exists check
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* acf_get_db_version
|
||||||
|
*
|
||||||
|
* This function will return the current ACF DB version
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 10/09/2016
|
||||||
|
* @since 5.4.0
|
||||||
|
*
|
||||||
|
* @param $post_id (int)
|
||||||
|
* @return $post_id (int)
|
||||||
|
*/
|
||||||
|
|
||||||
|
function acf_get_db_version() {
|
||||||
|
|
||||||
|
return get_option('acf_version');
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* acf_update_db_version
|
||||||
|
*
|
||||||
|
* This function will update the current ACF DB version
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 10/09/2016
|
||||||
|
* @since 5.4.0
|
||||||
|
*
|
||||||
|
* @param $post_id (int)
|
||||||
|
* @return $post_id (int)
|
||||||
|
*/
|
||||||
|
|
||||||
|
function acf_update_db_version( $version = '' ) {
|
||||||
|
|
||||||
|
// default to latest
|
||||||
|
if( !$version ) {
|
||||||
|
|
||||||
|
$version = acf_get_setting('version');
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// update
|
||||||
|
update_option('acf_version', $version );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* acf_get_db_updates
|
||||||
|
*
|
||||||
|
* This function will return available db updates
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 12/05/2014
|
||||||
|
* @since 5.0.0
|
||||||
|
*
|
||||||
|
* @param $post_id (int)
|
||||||
|
* @return $post_id (int)
|
||||||
|
*/
|
||||||
|
|
||||||
|
function acf_get_db_updates() {
|
||||||
|
|
||||||
|
// vars
|
||||||
|
$available = array();
|
||||||
|
$db_updates = acf()->admin->install->db_updates;
|
||||||
|
$acf_version = acf_get_setting('version');
|
||||||
|
$db_version = acf_get_db_version();
|
||||||
|
|
||||||
|
|
||||||
|
// bail early if is fresh install
|
||||||
|
if( !$db_version ) {
|
||||||
|
|
||||||
|
acf_update_db_version($acf_version);
|
||||||
|
return false;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// bail early if is up to date
|
||||||
|
if( acf_version_compare($db_version, '>=', $acf_version)) return false;
|
||||||
|
|
||||||
|
|
||||||
|
// loop
|
||||||
|
foreach( $db_updates as $version => $callback ) {
|
||||||
|
|
||||||
|
// ignore if update is for a future version (may exist for testing)
|
||||||
|
if( acf_version_compare( $version, '>', $acf_version ) ) continue;
|
||||||
|
|
||||||
|
|
||||||
|
// ignore if update has already been run
|
||||||
|
if( acf_version_compare( $version, '<=', $db_version ) ) continue;
|
||||||
|
|
||||||
|
|
||||||
|
// append
|
||||||
|
$available[ $version ] = $callback;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// bail early if no updates available
|
||||||
|
// - also update DB to current version
|
||||||
|
if( empty($available) ) {
|
||||||
|
|
||||||
|
acf_update_db_version($acf_version);
|
||||||
|
return false;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// return
|
||||||
|
return $available;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
||||||
372
admin/update.php
372
admin/update.php
|
|
@ -1,372 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
/*
|
|
||||||
* ACF Admin Update Class
|
|
||||||
*
|
|
||||||
* All the logic for updates
|
|
||||||
*
|
|
||||||
* @class acf_admin_update
|
|
||||||
* @package ACF
|
|
||||||
* @subpackage Admin
|
|
||||||
*/
|
|
||||||
|
|
||||||
if( ! class_exists('acf_admin_update') ) :
|
|
||||||
|
|
||||||
class acf_admin_update {
|
|
||||||
|
|
||||||
/*
|
|
||||||
* __construct
|
|
||||||
*
|
|
||||||
* A good place to add actions / filters
|
|
||||||
*
|
|
||||||
* @type function
|
|
||||||
* @date 11/08/13
|
|
||||||
*
|
|
||||||
* @param N/A
|
|
||||||
* @return N/A
|
|
||||||
*/
|
|
||||||
|
|
||||||
function __construct() {
|
|
||||||
|
|
||||||
// actions
|
|
||||||
add_action('admin_menu', array($this,'admin_menu'), 20);
|
|
||||||
|
|
||||||
|
|
||||||
// ajax
|
|
||||||
add_action('wp_ajax_acf/admin/data_upgrade', array($this, 'ajax_upgrade'));
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* admin_menu
|
|
||||||
*
|
|
||||||
* This function will chck for available updates and add actions if needed
|
|
||||||
*
|
|
||||||
* @type function
|
|
||||||
* @date 19/02/2014
|
|
||||||
* @since 5.0.0
|
|
||||||
*
|
|
||||||
* @param n/a
|
|
||||||
* @return n/a
|
|
||||||
*/
|
|
||||||
|
|
||||||
function admin_menu() {
|
|
||||||
|
|
||||||
// vars
|
|
||||||
$plugin_version = acf_get_setting('version');
|
|
||||||
$acf_version = get_option('acf_version');
|
|
||||||
|
|
||||||
|
|
||||||
// bail early if a new install
|
|
||||||
if( !$acf_version ) {
|
|
||||||
|
|
||||||
update_option('acf_version', $plugin_version );
|
|
||||||
return;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// bail early if $acf_version is >= $plugin_version
|
|
||||||
if( version_compare( $acf_version, $plugin_version, '>=') ) {
|
|
||||||
|
|
||||||
return;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// vars
|
|
||||||
$updates = acf_get_updates();
|
|
||||||
|
|
||||||
|
|
||||||
// bail early if no updates available
|
|
||||||
if( empty($updates) ) {
|
|
||||||
|
|
||||||
update_option('acf_version', $plugin_version );
|
|
||||||
return;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// bail early if no show_admin
|
|
||||||
if( !acf_get_setting('show_admin') ) {
|
|
||||||
|
|
||||||
return;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// actions
|
|
||||||
add_action('admin_notices', array($this, 'admin_notices'), 1);
|
|
||||||
|
|
||||||
|
|
||||||
// add page
|
|
||||||
$page = add_submenu_page('edit.php?post_type=acf-field-group', __('Upgrade Database','acf'), __('Upgrade Database','acf'), acf_get_setting('capability'), 'acf-upgrade', array($this,'html') );
|
|
||||||
|
|
||||||
|
|
||||||
// actions
|
|
||||||
add_action('load-' . $page, array($this,'load'));
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* load
|
|
||||||
*
|
|
||||||
* This function will look at the $_POST data and run any functions if needed
|
|
||||||
*
|
|
||||||
* @type function
|
|
||||||
* @date 7/01/2014
|
|
||||||
* @since 5.0.0
|
|
||||||
*
|
|
||||||
* @param n/a
|
|
||||||
* @return n/a
|
|
||||||
*/
|
|
||||||
|
|
||||||
function load() {
|
|
||||||
|
|
||||||
// hide upgrade
|
|
||||||
remove_action('admin_notices', array($this, 'admin_notices'), 1);
|
|
||||||
|
|
||||||
|
|
||||||
// load acf scripts
|
|
||||||
acf_enqueue_scripts();
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* admin_notices
|
|
||||||
*
|
|
||||||
* This function will render any admin notices
|
|
||||||
*
|
|
||||||
* @type function
|
|
||||||
* @date 17/10/13
|
|
||||||
* @since 5.0.0
|
|
||||||
*
|
|
||||||
* @param n/a
|
|
||||||
* @return n/a
|
|
||||||
*/
|
|
||||||
|
|
||||||
function admin_notices() {
|
|
||||||
|
|
||||||
// view
|
|
||||||
$view = array(
|
|
||||||
'button_text' => __("Upgrade Database", 'acf'),
|
|
||||||
'button_url' => admin_url('edit.php?post_type=acf-field-group&page=acf-upgrade')
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
// load view
|
|
||||||
acf_get_view('update-notice', $view);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* html
|
|
||||||
*
|
|
||||||
* description
|
|
||||||
*
|
|
||||||
* @type function
|
|
||||||
* @date 19/02/2014
|
|
||||||
* @since 5.0.0
|
|
||||||
*
|
|
||||||
* @param $post_id (int)
|
|
||||||
* @return $post_id (int)
|
|
||||||
*/
|
|
||||||
|
|
||||||
function html() {
|
|
||||||
|
|
||||||
// view
|
|
||||||
$view = array(
|
|
||||||
'updates' => acf_get_updates(),
|
|
||||||
'plugin_version' => acf_get_setting('version')
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
// load view
|
|
||||||
acf_get_view('update', $view);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* ajax_upgrade
|
|
||||||
*
|
|
||||||
* description
|
|
||||||
*
|
|
||||||
* @type function
|
|
||||||
* @date 24/10/13
|
|
||||||
* @since 5.0.0
|
|
||||||
*
|
|
||||||
* @param $post_id (int)
|
|
||||||
* @return $post_id (int)
|
|
||||||
*/
|
|
||||||
|
|
||||||
function ajax_upgrade() {
|
|
||||||
|
|
||||||
// options
|
|
||||||
$options = wp_parse_args( $_POST, array(
|
|
||||||
'nonce' => '',
|
|
||||||
'blog_id' => '',
|
|
||||||
));
|
|
||||||
|
|
||||||
|
|
||||||
// validate
|
|
||||||
if( !wp_verify_nonce($options['nonce'], 'acf_upgrade') ) {
|
|
||||||
|
|
||||||
wp_send_json_error(array(
|
|
||||||
'message' => __('Error validating request', 'acf')
|
|
||||||
));
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// switch blog
|
|
||||||
if( $options['blog_id'] ) {
|
|
||||||
|
|
||||||
switch_to_blog( $options['blog_id'] );
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// vars
|
|
||||||
$updates = acf_get_updates();
|
|
||||||
$message = '';
|
|
||||||
|
|
||||||
|
|
||||||
// bail early if no updates
|
|
||||||
if( empty($updates) ) {
|
|
||||||
|
|
||||||
wp_send_json_error(array(
|
|
||||||
'message' => __('No updates available', 'acf')
|
|
||||||
));
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// install updates
|
|
||||||
foreach( $updates as $version ) {
|
|
||||||
|
|
||||||
// get path
|
|
||||||
$path = acf_get_path("admin/updates/{$version}.php");
|
|
||||||
|
|
||||||
|
|
||||||
// load version
|
|
||||||
if( !file_exists($path) ) {
|
|
||||||
|
|
||||||
wp_send_json_error(array(
|
|
||||||
'message' => __('Error loading update', 'acf')
|
|
||||||
));
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// load any errors / feedback from update
|
|
||||||
ob_start();
|
|
||||||
|
|
||||||
|
|
||||||
// action for 3rd party
|
|
||||||
do_action('acf/upgrade_start/' . $version );
|
|
||||||
|
|
||||||
|
|
||||||
// include
|
|
||||||
include( $path );
|
|
||||||
|
|
||||||
|
|
||||||
// action for 3rd party
|
|
||||||
do_action('acf/upgrade_finish/' . $version );
|
|
||||||
|
|
||||||
|
|
||||||
// get feedback
|
|
||||||
$message .= ob_get_clean();
|
|
||||||
|
|
||||||
|
|
||||||
// update successful
|
|
||||||
update_option('acf_version', $version );
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// updates complete
|
|
||||||
update_option('acf_version', acf_get_setting('version'));
|
|
||||||
|
|
||||||
|
|
||||||
// return
|
|
||||||
wp_send_json_success(array(
|
|
||||||
'message' => $message
|
|
||||||
));
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* inject_downgrade
|
|
||||||
*
|
|
||||||
* description
|
|
||||||
*
|
|
||||||
* @type function
|
|
||||||
* @date 16/01/2014
|
|
||||||
* @since 5.0.0
|
|
||||||
*
|
|
||||||
* @param $post_id (int)
|
|
||||||
* @return $post_id (int)
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
function inject_downgrade( $transient ) {
|
|
||||||
|
|
||||||
// bail early if no plugins are being checked
|
|
||||||
if( empty($transient->checked) ) {
|
|
||||||
|
|
||||||
return $transient;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// bail early if no nonce
|
|
||||||
if( empty($_GET['_acfrollback']) ) {
|
|
||||||
|
|
||||||
return $transient;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// vars
|
|
||||||
$rollback = get_option('acf_version');
|
|
||||||
|
|
||||||
|
|
||||||
// bail early if nonce is not correct
|
|
||||||
if( !wp_verify_nonce( $_GET['_acfrollback'], 'rollback-acf_' . $rollback ) ) {
|
|
||||||
|
|
||||||
return $transient;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// create new object for update
|
|
||||||
$obj = new stdClass();
|
|
||||||
$obj->slug = $_GET['plugin'];
|
|
||||||
$obj->new_version = $rollback;
|
|
||||||
$obj->url = 'https://wordpress.org/plugins/advanced-custom-fields';
|
|
||||||
$obj->package = 'https://downloads.wordpress.org/plugin/advanced-custom-fields.' . $rollback . '.zip';;
|
|
||||||
|
|
||||||
|
|
||||||
// add to transient
|
|
||||||
$transient->response[ $_GET['plugin'] ] = $obj;
|
|
||||||
|
|
||||||
|
|
||||||
// return
|
|
||||||
return $transient;
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// initialize
|
|
||||||
new acf_admin_update();
|
|
||||||
|
|
||||||
endif;
|
|
||||||
|
|
||||||
?>
|
|
||||||
|
|
@ -1,325 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Upgrade to version 5.0.0
|
|
||||||
*
|
|
||||||
* @type upgrade
|
|
||||||
* @date 20/02/2014
|
|
||||||
* @since 5.0.0
|
|
||||||
*
|
|
||||||
* @param n/a
|
|
||||||
* @return n/a
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Exit if accessed directly
|
|
||||||
if( !defined('ABSPATH') ) exit;
|
|
||||||
|
|
||||||
|
|
||||||
// global
|
|
||||||
global $wpdb;
|
|
||||||
|
|
||||||
|
|
||||||
// migrate field groups
|
|
||||||
$ofgs = get_posts(array(
|
|
||||||
'numberposts' => -1,
|
|
||||||
'post_type' => 'acf',
|
|
||||||
'orderby' => 'menu_order title',
|
|
||||||
'order' => 'asc',
|
|
||||||
'suppress_filters' => true,
|
|
||||||
));
|
|
||||||
|
|
||||||
|
|
||||||
// populate acfs
|
|
||||||
if( $ofgs ){ foreach( $ofgs as $ofg ){
|
|
||||||
|
|
||||||
// migrate field group
|
|
||||||
$nfg = _migrate_field_group_500( $ofg );
|
|
||||||
|
|
||||||
|
|
||||||
// get field from postmeta
|
|
||||||
$rows = $wpdb->get_results( $wpdb->prepare("SELECT * FROM $wpdb->postmeta WHERE post_id = %d AND meta_key LIKE %s", $ofg->ID, 'field_%'), ARRAY_A);
|
|
||||||
|
|
||||||
|
|
||||||
if( $rows )
|
|
||||||
{
|
|
||||||
$nfg['fields'] = array();
|
|
||||||
|
|
||||||
foreach( $rows as $row )
|
|
||||||
{
|
|
||||||
$field = $row['meta_value'];
|
|
||||||
$field = maybe_unserialize( $field );
|
|
||||||
$field = maybe_unserialize( $field ); // run again for WPML
|
|
||||||
|
|
||||||
|
|
||||||
// add parent
|
|
||||||
$field['parent'] = $nfg['ID'];
|
|
||||||
|
|
||||||
|
|
||||||
// migrate field
|
|
||||||
$field = _migrate_field_500( $field );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}}
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* _migrate_field_group_500
|
|
||||||
*
|
|
||||||
* description
|
|
||||||
*
|
|
||||||
* @type function
|
|
||||||
* @date 20/02/2014
|
|
||||||
* @since 5.0.0
|
|
||||||
*
|
|
||||||
* @param $post_id (int)
|
|
||||||
* @return $post_id (int)
|
|
||||||
*/
|
|
||||||
|
|
||||||
function _migrate_field_group_500( $ofg ) {
|
|
||||||
|
|
||||||
// global
|
|
||||||
global $wpdb;
|
|
||||||
|
|
||||||
|
|
||||||
// get post status
|
|
||||||
$post_status = $ofg->post_status;
|
|
||||||
|
|
||||||
|
|
||||||
// create new field group
|
|
||||||
$nfg = array(
|
|
||||||
'ID' => 0,
|
|
||||||
'title' => $ofg->post_title,
|
|
||||||
'menu_order' => $ofg->menu_order,
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
// location rules
|
|
||||||
$groups = array();
|
|
||||||
|
|
||||||
|
|
||||||
// get all rules
|
|
||||||
$rules = get_post_meta($ofg->ID, 'rule', false);
|
|
||||||
|
|
||||||
if( is_array($rules) ) {
|
|
||||||
|
|
||||||
$group_no = 0;
|
|
||||||
|
|
||||||
foreach( $rules as $rule ) {
|
|
||||||
|
|
||||||
// if field group was duplicated, it may now be a serialized string!
|
|
||||||
$rule = maybe_unserialize($rule);
|
|
||||||
|
|
||||||
|
|
||||||
// does this rule have a group?
|
|
||||||
// + groups were added in 4.0.4
|
|
||||||
if( !isset($rule['group_no']) ) {
|
|
||||||
|
|
||||||
$rule['group_no'] = $group_no;
|
|
||||||
|
|
||||||
// sperate groups?
|
|
||||||
if( get_post_meta($ofg->ID, 'allorany', true) == 'any' ) {
|
|
||||||
|
|
||||||
$group_no++;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// extract vars
|
|
||||||
$group = acf_extract_var( $rule, 'group_no' );
|
|
||||||
$order = acf_extract_var( $rule, 'order_no' );
|
|
||||||
|
|
||||||
|
|
||||||
// add to group
|
|
||||||
$groups[ $group ][ $order ] = $rule;
|
|
||||||
|
|
||||||
|
|
||||||
// sort rules
|
|
||||||
ksort( $groups[ $group ] );
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// sort groups
|
|
||||||
ksort( $groups );
|
|
||||||
}
|
|
||||||
|
|
||||||
$nfg['location'] = $groups;
|
|
||||||
|
|
||||||
|
|
||||||
// settings
|
|
||||||
if( $position = get_post_meta($ofg->ID, 'position', true) ) {
|
|
||||||
|
|
||||||
$nfg['position'] = $position;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if( $layout = get_post_meta($ofg->ID, 'layout', true) ) {
|
|
||||||
|
|
||||||
$nfg['layout'] = $layout;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if( $hide_on_screen = get_post_meta($ofg->ID, 'hide_on_screen', true) ) {
|
|
||||||
|
|
||||||
$nfg['hide_on_screen'] = maybe_unserialize($hide_on_screen);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// Note: acf_update_field_group will call the acf_get_valid_field_group function and apply 'compatibility' changes
|
|
||||||
|
|
||||||
|
|
||||||
// add old ID reference
|
|
||||||
$nfg['old_ID'] = $ofg->ID;
|
|
||||||
|
|
||||||
|
|
||||||
// save field group
|
|
||||||
$nfg = acf_update_field_group( $nfg );
|
|
||||||
|
|
||||||
|
|
||||||
// trash?
|
|
||||||
if( $post_status == 'trash' ) {
|
|
||||||
|
|
||||||
acf_trash_field_group( $nfg['ID'] );
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// return
|
|
||||||
return $nfg;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* _migrate_field_500
|
|
||||||
*
|
|
||||||
* description
|
|
||||||
*
|
|
||||||
* @type function
|
|
||||||
* @date 20/02/2014
|
|
||||||
* @since 5.0.0
|
|
||||||
*
|
|
||||||
* @param $post_id (int)
|
|
||||||
* @return $post_id (int)
|
|
||||||
*/
|
|
||||||
|
|
||||||
function _migrate_field_500( $field ) {
|
|
||||||
|
|
||||||
// orig
|
|
||||||
$orig = $field;
|
|
||||||
|
|
||||||
|
|
||||||
// order_no is now menu_order
|
|
||||||
$field['menu_order'] = acf_extract_var( $field, 'order_no' );
|
|
||||||
|
|
||||||
|
|
||||||
// correct very old field keys
|
|
||||||
if( substr($field['key'], 0, 6) !== 'field_' ) {
|
|
||||||
|
|
||||||
$field['key'] = 'field_' . str_replace('field', '', $field['key']);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// get valid field
|
|
||||||
$field = acf_get_valid_field( $field );
|
|
||||||
|
|
||||||
|
|
||||||
// save field
|
|
||||||
$field = acf_update_field( $field );
|
|
||||||
|
|
||||||
|
|
||||||
// sub fields
|
|
||||||
if( $field['type'] == 'repeater' ) {
|
|
||||||
|
|
||||||
// get sub fields
|
|
||||||
$sub_fields = acf_extract_var( $orig, 'sub_fields' );
|
|
||||||
|
|
||||||
|
|
||||||
// save sub fields
|
|
||||||
if( !empty($sub_fields) ) {
|
|
||||||
|
|
||||||
$keys = array_keys($sub_fields);
|
|
||||||
|
|
||||||
foreach( $keys as $key ) {
|
|
||||||
|
|
||||||
$sub_field = acf_extract_var($sub_fields, $key);
|
|
||||||
$sub_field['parent'] = $field['ID'];
|
|
||||||
|
|
||||||
_migrate_field_500( $sub_field );
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
} elseif( $field['type'] == 'flexible_content' ) {
|
|
||||||
|
|
||||||
// get layouts
|
|
||||||
$layouts = acf_extract_var( $orig, 'layouts' );
|
|
||||||
|
|
||||||
|
|
||||||
// update layouts
|
|
||||||
$field['layouts'] = array();
|
|
||||||
|
|
||||||
|
|
||||||
// save sub fields
|
|
||||||
if( !empty($layouts) ) {
|
|
||||||
|
|
||||||
foreach( $layouts as $layout ) {
|
|
||||||
|
|
||||||
// vars
|
|
||||||
$layout_key = uniqid();
|
|
||||||
|
|
||||||
|
|
||||||
// append layotu key
|
|
||||||
$layout['key'] = $layout_key;
|
|
||||||
|
|
||||||
|
|
||||||
// extract sub fields
|
|
||||||
$sub_fields = acf_extract_var($layout, 'sub_fields');
|
|
||||||
|
|
||||||
|
|
||||||
// save sub fields
|
|
||||||
if( !empty($sub_fields) ) {
|
|
||||||
|
|
||||||
$keys = array_keys($sub_fields);
|
|
||||||
|
|
||||||
foreach( $keys as $key ) {
|
|
||||||
|
|
||||||
$sub_field = acf_extract_var($sub_fields, $key);
|
|
||||||
$sub_field['parent'] = $field['ID'];
|
|
||||||
$sub_field['parent_layout'] = $layout_key;
|
|
||||||
|
|
||||||
_migrate_field_500( $sub_field );
|
|
||||||
|
|
||||||
}
|
|
||||||
// foreach
|
|
||||||
|
|
||||||
}
|
|
||||||
// if
|
|
||||||
|
|
||||||
|
|
||||||
// append layout
|
|
||||||
$field['layouts'][] = $layout;
|
|
||||||
|
|
||||||
}
|
|
||||||
// foreach
|
|
||||||
|
|
||||||
}
|
|
||||||
// if
|
|
||||||
|
|
||||||
|
|
||||||
// save field again with less sub field data
|
|
||||||
$field = acf_update_field( $field );
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// return
|
|
||||||
return $field;
|
|
||||||
}
|
|
||||||
|
|
||||||
?>
|
|
||||||
|
|
@ -24,7 +24,7 @@ if( empty($groups) ) {
|
||||||
}
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
<tr data-name="conditional_logic" class="acf-field">
|
<tr class="acf-field acf-field-true-false acf-field-setting-conditional_logic" data_type="true_false" data-name="conditional_logic">
|
||||||
<td class="acf-label">
|
<td class="acf-label">
|
||||||
<label><?php _e("Conditional Logic",'acf'); ?></label>
|
<label><?php _e("Conditional Logic",'acf'); ?></label>
|
||||||
</td>
|
</td>
|
||||||
|
|
@ -32,16 +32,12 @@ if( empty($groups) ) {
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
acf_render_field(array(
|
acf_render_field(array(
|
||||||
'type' => 'radio',
|
'type' => 'true_false',
|
||||||
'name' => 'conditional_logic',
|
'name' => 'conditional_logic',
|
||||||
'prefix' => $field['prefix'],
|
'prefix' => $field['prefix'],
|
||||||
'value' => $disabled ? 0 : 1,
|
'value' => $disabled ? 0 : 1,
|
||||||
'choices' => array(
|
'ui' => 1,
|
||||||
1 => __("Yes",'acf'),
|
'class' => 'conditional-toggle',
|
||||||
0 => __("No",'acf'),
|
|
||||||
),
|
|
||||||
'layout' => 'horizontal',
|
|
||||||
'class' => 'conditional-toggle'
|
|
||||||
));
|
));
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
@ -50,11 +46,8 @@ if( empty($groups) ) {
|
||||||
<?php foreach( $groups as $group_id => $group ):
|
<?php foreach( $groups as $group_id => $group ):
|
||||||
|
|
||||||
// validate
|
// validate
|
||||||
if( empty($group) ) {
|
if( empty($group) ) continue;
|
||||||
|
|
||||||
continue;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// vars
|
// vars
|
||||||
// $group_id must be completely different to $rule_id to avoid JS issues
|
// $group_id must be completely different to $rule_id to avoid JS issues
|
||||||
|
|
|
||||||
|
|
@ -76,84 +76,70 @@ $atts['class'] = str_replace('_', '-', $atts['class']);
|
||||||
<table class="acf-table">
|
<table class="acf-table">
|
||||||
<tbody>
|
<tbody>
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
// label
|
// label
|
||||||
acf_render_field_wrap(array(
|
acf_render_field_setting($field, array(
|
||||||
'label' => __('Field Label','acf'),
|
'label' => __('Field Label','acf'),
|
||||||
'instructions' => __('This is the name which will appear on the EDIT page','acf'),
|
'instructions' => __('This is the name which will appear on the EDIT page','acf'),
|
||||||
'required' => 1,
|
|
||||||
'type' => 'text',
|
|
||||||
'name' => 'label',
|
'name' => 'label',
|
||||||
'prefix' => $field['prefix'],
|
'type' => 'text',
|
||||||
'value' => $field['label'],
|
'required' => 1,
|
||||||
'class' => 'field-label'
|
'class' => 'field-label'
|
||||||
), 'tr');
|
), true);
|
||||||
|
|
||||||
|
|
||||||
// name
|
// name
|
||||||
acf_render_field_wrap(array(
|
acf_render_field_setting($field, array(
|
||||||
'label' => __('Field Name','acf'),
|
'label' => __('Field Name','acf'),
|
||||||
'instructions' => __('Single word, no spaces. Underscores and dashes allowed','acf'),
|
'instructions' => __('Single word, no spaces. Underscores and dashes allowed','acf'),
|
||||||
'required' => 1,
|
|
||||||
'type' => 'text',
|
|
||||||
'name' => 'name',
|
'name' => 'name',
|
||||||
'prefix' => $field['prefix'],
|
'type' => 'text',
|
||||||
'value' => $field['name'],
|
'required' => 1,
|
||||||
'class' => 'field-name'
|
'class' => 'field-name'
|
||||||
), 'tr');
|
), true);
|
||||||
|
|
||||||
|
|
||||||
// type
|
// type
|
||||||
acf_render_field_wrap(array(
|
acf_render_field_setting($field, array(
|
||||||
'label' => __('Field Type','acf'),
|
'label' => __('Field Type','acf'),
|
||||||
'instructions' => '',
|
'instructions' => '',
|
||||||
'required' => 1,
|
'required' => 1,
|
||||||
'type' => 'select',
|
'type' => 'select',
|
||||||
'name' => 'type',
|
'name' => 'type',
|
||||||
'prefix' => $field['prefix'],
|
'choices' => acf_get_grouped_field_types(),
|
||||||
'value' => $field['type'],
|
|
||||||
'choices' => acf_get_field_types(),
|
|
||||||
'class' => 'field-type'
|
'class' => 'field-type'
|
||||||
), 'tr');
|
), true);
|
||||||
|
|
||||||
|
|
||||||
// instructions
|
// instructions
|
||||||
acf_render_field_wrap(array(
|
acf_render_field_setting($field, array(
|
||||||
'label' => __('Instructions','acf'),
|
'label' => __('Instructions','acf'),
|
||||||
'instructions' => __('Instructions for authors. Shown when submitting data','acf'),
|
'instructions' => __('Instructions for authors. Shown when submitting data','acf'),
|
||||||
'type' => 'textarea',
|
'type' => 'textarea',
|
||||||
'name' => 'instructions',
|
'name' => 'instructions',
|
||||||
'prefix' => $field['prefix'],
|
|
||||||
'value' => $field['instructions'],
|
|
||||||
'rows' => 5
|
'rows' => 5
|
||||||
), 'tr');
|
), true);
|
||||||
|
|
||||||
|
|
||||||
// required
|
// required
|
||||||
acf_render_field_wrap(array(
|
acf_render_field_setting($field, array(
|
||||||
'label' => __('Required?','acf'),
|
'label' => __('Required?','acf'),
|
||||||
'instructions' => '',
|
'instructions' => '',
|
||||||
'type' => 'radio',
|
'type' => 'true_false',
|
||||||
'name' => 'required',
|
'name' => 'required',
|
||||||
'prefix' => $field['prefix'],
|
'ui' => 1,
|
||||||
'value' => $field['required'],
|
|
||||||
'choices' => array(
|
|
||||||
1 => __("Yes",'acf'),
|
|
||||||
0 => __("No",'acf'),
|
|
||||||
),
|
|
||||||
'layout' => 'horizontal',
|
|
||||||
'class' => 'field-required'
|
'class' => 'field-required'
|
||||||
), 'tr');
|
), true);
|
||||||
|
|
||||||
|
|
||||||
// type specific settings
|
|
||||||
do_action("acf/render_field_settings/type={$field['type']}", $field);
|
|
||||||
|
|
||||||
|
|
||||||
// 3rd party settings
|
// 3rd party settings
|
||||||
do_action('acf/render_field_settings', $field);
|
do_action('acf/render_field_settings', $field);
|
||||||
|
|
||||||
|
|
||||||
|
// type specific settings
|
||||||
|
do_action("acf/render_field_settings/type={$field['type']}", $field);
|
||||||
|
|
||||||
|
|
||||||
// conditional logic
|
// conditional logic
|
||||||
acf_get_view('field-group-field-conditional-logic', array( 'field' => $field ));
|
acf_get_view('field-group-field-conditional-logic', array( 'field' => $field ));
|
||||||
|
|
||||||
|
|
@ -169,7 +155,8 @@ $atts['class'] = str_replace('_', '-', $atts['class']);
|
||||||
'prepend' => __('width', 'acf'),
|
'prepend' => __('width', 'acf'),
|
||||||
'append' => '%',
|
'append' => '%',
|
||||||
'wrapper' => array(
|
'wrapper' => array(
|
||||||
'data-name' => 'wrapper'
|
'data-name' => 'wrapper',
|
||||||
|
'class' => 'acf-field-setting-wrapper'
|
||||||
)
|
)
|
||||||
), 'tr');
|
), 'tr');
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,9 +2,7 @@
|
||||||
|
|
||||||
// vars
|
// vars
|
||||||
$fields = false;
|
$fields = false;
|
||||||
$layout = false;
|
|
||||||
$parent = 0;
|
$parent = 0;
|
||||||
$clone = false;
|
|
||||||
|
|
||||||
|
|
||||||
// use fields if passed in
|
// use fields if passed in
|
||||||
|
|
@ -20,23 +18,22 @@ extract( $args );
|
||||||
<li class="li-field-type"><?php _e('Type','acf'); ?></li>
|
<li class="li-field-type"><?php _e('Type','acf'); ?></li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<div class="acf-field-list<?php if( $layout ){ echo " layout-{$layout}"; } ?>">
|
<div class="acf-field-list">
|
||||||
<?php
|
|
||||||
|
|
||||||
if( $fields ) {
|
|
||||||
|
|
||||||
foreach( $fields as $i => $field ) {
|
|
||||||
|
|
||||||
acf_get_view('field-group-field', array( 'field' => $field, 'i' => $i ));
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
?>
|
|
||||||
<div class="no-fields-message" <?php if( $fields ){ echo 'style="display:none;"'; } ?>>
|
<div class="no-fields-message" <?php if( $fields ){ echo 'style="display:none;"'; } ?>>
|
||||||
<?php _e("No fields. Click the <strong>+ Add Field</strong> button to create your first field.",'acf'); ?>
|
<?php _e("No fields. Click the <strong>+ Add Field</strong> button to create your first field.",'acf'); ?>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<?php if( $fields ):
|
||||||
|
|
||||||
|
foreach( $fields as $i => $field ):
|
||||||
|
|
||||||
|
acf_get_view('field-group-field', array( 'field' => $field, 'i' => $i ));
|
||||||
|
|
||||||
|
endforeach;
|
||||||
|
|
||||||
|
endif; ?>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<ul class="acf-hl acf-tfoot">
|
<ul class="acf-hl acf-tfoot">
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@
|
||||||
$rule_types = apply_filters('acf/location/rule_types', array(
|
$rule_types = apply_filters('acf/location/rule_types', array(
|
||||||
__("Post",'acf') => array(
|
__("Post",'acf') => array(
|
||||||
'post_type' => __("Post Type",'acf'),
|
'post_type' => __("Post Type",'acf'),
|
||||||
|
'post_template' => __("Post Template",'acf'),
|
||||||
'post_status' => __("Post Status",'acf'),
|
'post_status' => __("Post Status",'acf'),
|
||||||
'post_format' => __("Post Format",'acf'),
|
'post_format' => __("Post Format",'acf'),
|
||||||
'post_category' => __("Post Category",'acf'),
|
'post_category' => __("Post Category",'acf'),
|
||||||
|
|
@ -30,6 +31,14 @@ $rule_types = apply_filters('acf/location/rule_types', array(
|
||||||
)
|
)
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
// WP < 4.7
|
||||||
|
if( acf_version_compare('wp', '<', '4.7') ) {
|
||||||
|
|
||||||
|
unset( $rule_types[ __("Post",'acf') ]['post_template'] );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
$rule_operators = apply_filters( 'acf/location/rule_operators', array(
|
$rule_operators = apply_filters( 'acf/location/rule_operators', array(
|
||||||
'==' => __("is equal to",'acf'),
|
'==' => __("is equal to",'acf'),
|
||||||
'!=' => __("is not equal to",'acf'),
|
'!=' => __("is not equal to",'acf'),
|
||||||
|
|
|
||||||
|
|
@ -1,17 +1,16 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
// active
|
// active
|
||||||
acf_render_field_wrap(array(
|
acf_render_field_wrap(array(
|
||||||
'label' => __('Status','acf'),
|
'label' => __('Active','acf'),
|
||||||
'instructions' => '',
|
'instructions' => '',
|
||||||
'type' => 'select',
|
'type' => 'true_false',
|
||||||
'name' => 'active',
|
'name' => 'active',
|
||||||
'prefix' => 'acf_field_group',
|
'prefix' => 'acf_field_group',
|
||||||
'value' => $field_group['active'],
|
'value' => $field_group['active'],
|
||||||
'choices' => array(
|
'ui' => 1,
|
||||||
1 => __("Active",'acf'),
|
//'ui_on_text' => __('Active', 'acf'),
|
||||||
0 => __("Disabled",'acf'),
|
//'ui_off_text' => __('Inactive', 'acf'),
|
||||||
)
|
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -64,7 +64,7 @@ extract($args);
|
||||||
|
|
||||||
<p><input type="submit" name="upgrade" value="<?php echo $button; ?>" class="button" id="upgrade-sites-2"></p>
|
<p><input type="submit" name="upgrade" value="<?php echo $button; ?>" class="button" id="upgrade-sites-2"></p>
|
||||||
|
|
||||||
<p class="show-on-complete"><?php _e('Database Upgrade complete', 'acf'); ?>. <a href="<?php echo network_admin_url(); ?>"><?php _e("Return to network dashboard",'acf'); ?></a>.</p>
|
<p class="show-on-complete"><?php echo sprintf( __('Database Upgrade complete. <a href="%s">Return to network dashboard</a>', 'acf'), network_admin_url() ); ?></p>
|
||||||
|
|
||||||
<style type="text/css">
|
<style type="text/css">
|
||||||
|
|
||||||
|
|
@ -172,8 +172,8 @@ extract($args);
|
||||||
dataType: 'json',
|
dataType: 'json',
|
||||||
type: 'post',
|
type: 'post',
|
||||||
data: {
|
data: {
|
||||||
action: 'acf/admin/data_upgrade',
|
action: 'acf/admin/db_update',
|
||||||
nonce: '<?php echo wp_create_nonce('acf_upgrade'); ?>',
|
nonce: '<?php echo wp_create_nonce('acf_db_update'); ?>',
|
||||||
blog_id: $input.val(),
|
blog_id: $input.val(),
|
||||||
},
|
},
|
||||||
success: function( json ){
|
success: function( json ){
|
||||||
|
|
@ -7,13 +7,13 @@ extract($args);
|
||||||
|
|
||||||
<h1><?php _e("Advanced Custom Fields Database Upgrade",'acf'); ?></h1>
|
<h1><?php _e("Advanced Custom Fields Database Upgrade",'acf'); ?></h1>
|
||||||
|
|
||||||
<?php if( !empty($updates) ): ?>
|
<?php if( $updates ): ?>
|
||||||
|
|
||||||
<p><?php _e('Reading upgrade tasks...', 'acf'); ?></p>
|
<p><?php _e('Reading upgrade tasks...', 'acf'); ?></p>
|
||||||
|
|
||||||
<p class="show-on-ajax"><i class="acf-loading"></i> <?php printf(__('Upgrading data to version %s', 'acf'), $plugin_version); ?></p>
|
<p class="show-on-ajax"><i class="acf-loading"></i> <?php printf(__('Upgrading data to version %s', 'acf'), $plugin_version); ?></p>
|
||||||
|
|
||||||
<p class="show-on-complete"><?php _e('Database Upgrade complete', 'acf'); ?>. <a href="<?php echo admin_url('edit.php?post_type=acf-field-group&page=acf-settings-info'); ?>"><?php _e("See what's new",'acf'); ?></a>.</p>
|
<p class="show-on-complete"><?php echo sprintf( __('Database Upgrade complete. <a href="%s">See what\'s new</a>', 'acf' ), admin_url('edit.php?post_type=acf-field-group&page=acf-settings-info') ); ?></p>
|
||||||
|
|
||||||
<style type="text/css">
|
<style type="text/css">
|
||||||
|
|
||||||
|
|
@ -64,8 +64,8 @@ extract($args);
|
||||||
dataType: 'json',
|
dataType: 'json',
|
||||||
type: 'post',
|
type: 'post',
|
||||||
data: {
|
data: {
|
||||||
action: 'acf/admin/data_upgrade',
|
action: 'acf/admin/db_update',
|
||||||
nonce: '<?php echo wp_create_nonce('acf_upgrade'); ?>'
|
nonce: '<?php echo wp_create_nonce('acf_db_update'); ?>'
|
||||||
},
|
},
|
||||||
success: function( json ){
|
success: function( json ){
|
||||||
|
|
||||||
|
|
@ -107,7 +107,7 @@ extract($args);
|
||||||
|
|
||||||
<?php else: ?>
|
<?php else: ?>
|
||||||
|
|
||||||
<p><?php _e('No updates available', 'acf'); ?>.</p>
|
<p><?php _e('No updates available.', 'acf'); ?></p>
|
||||||
|
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
|
|
||||||
|
|
@ -914,11 +914,8 @@ function acf_get_field_group_style( $field_group ) {
|
||||||
$e = '';
|
$e = '';
|
||||||
|
|
||||||
|
|
||||||
// validate
|
// bail early if no array or is empty
|
||||||
if( !is_array($field_group['hide_on_screen']) )
|
if( !acf_is_array($field_group['hide_on_screen']) ) return $e;
|
||||||
{
|
|
||||||
return $e;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// add style to html
|
// add style to html
|
||||||
|
|
@ -1000,6 +997,7 @@ function acf_get_field_group_style( $field_group ) {
|
||||||
|
|
||||||
// return
|
// return
|
||||||
return apply_filters('acf/get_field_group_style', $e, $field_group);
|
return apply_filters('acf/get_field_group_style', $e, $field_group);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,91 +1,5 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
/*
|
|
||||||
* acf_get_field_types
|
|
||||||
*
|
|
||||||
* This function will return all available field types
|
|
||||||
*
|
|
||||||
* @type function
|
|
||||||
* @date 1/10/13
|
|
||||||
* @since 5.0.0
|
|
||||||
*
|
|
||||||
* @param n/a
|
|
||||||
* @return (array)
|
|
||||||
*/
|
|
||||||
|
|
||||||
function acf_get_field_types() {
|
|
||||||
|
|
||||||
return apply_filters('acf/get_field_types', array());
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* acf_get_field_type_label
|
|
||||||
*
|
|
||||||
* This function will return the label of a field type
|
|
||||||
*
|
|
||||||
* @type function
|
|
||||||
* @date 1/10/13
|
|
||||||
* @since 5.0.0
|
|
||||||
*
|
|
||||||
* @param n/a
|
|
||||||
* @return (array)
|
|
||||||
*/
|
|
||||||
|
|
||||||
function acf_get_field_type_label( $field_type ) {
|
|
||||||
|
|
||||||
// vars
|
|
||||||
$field_types = acf_get_field_types();
|
|
||||||
|
|
||||||
|
|
||||||
// loop through categories
|
|
||||||
foreach( $field_types as $category ) {
|
|
||||||
|
|
||||||
if( isset( $category[ $field_type ] ) ) {
|
|
||||||
|
|
||||||
return $category[ $field_type ];
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// return
|
|
||||||
return '';
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* acf_field_type_exists
|
|
||||||
*
|
|
||||||
* This function will check if the field_type is available
|
|
||||||
*
|
|
||||||
* @type function
|
|
||||||
* @date 1/10/13
|
|
||||||
* @since 5.0.0
|
|
||||||
*
|
|
||||||
* @param $field_type (string)
|
|
||||||
* @return (boolean)
|
|
||||||
*/
|
|
||||||
|
|
||||||
function acf_field_type_exists( $field_type ) {
|
|
||||||
|
|
||||||
// vars
|
|
||||||
$label = acf_get_field_type_label( $field_type );
|
|
||||||
|
|
||||||
|
|
||||||
// return true if label exists
|
|
||||||
if( $label !== '' ) return true;
|
|
||||||
|
|
||||||
|
|
||||||
// return
|
|
||||||
return false;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* acf_is_field_key
|
* acf_is_field_key
|
||||||
*
|
*
|
||||||
|
|
@ -168,7 +82,7 @@ function acf_get_valid_field( $field = false ) {
|
||||||
'id' => ''
|
'id' => ''
|
||||||
),
|
),
|
||||||
'_name' => '',
|
'_name' => '',
|
||||||
'_input' => '',
|
'_prepare' => 0,
|
||||||
'_valid' => 0,
|
'_valid' => 0,
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
@ -177,26 +91,25 @@ function acf_get_valid_field( $field = false ) {
|
||||||
$field['_name'] = $field['name'];
|
$field['_name'] = $field['name'];
|
||||||
|
|
||||||
|
|
||||||
|
// field is now valid
|
||||||
|
$field['_valid'] = 1;
|
||||||
|
|
||||||
|
|
||||||
// field specific defaults
|
// field specific defaults
|
||||||
$field = apply_filters( "acf/get_valid_field", $field );
|
$field = apply_filters( "acf/get_valid_field", $field );
|
||||||
$field = apply_filters( "acf/get_valid_field/type={$field['type']}", $field );
|
$field = apply_filters( "acf/get_valid_field/type={$field['type']}", $field );
|
||||||
|
|
||||||
|
|
||||||
// field is now valid
|
|
||||||
$field['_valid'] = 1;
|
|
||||||
|
|
||||||
|
|
||||||
// translate
|
// translate
|
||||||
$field = acf_translate_field( $field );
|
$field = acf_translate_field( $field );
|
||||||
|
|
||||||
|
|
||||||
// return
|
// return
|
||||||
return $field;
|
return $field;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* acf_translate_field
|
* acf_translate_field
|
||||||
*
|
*
|
||||||
|
|
@ -285,44 +198,36 @@ function acf_clone_field( $field, $clone_field ) {
|
||||||
function acf_prepare_field( $field ) {
|
function acf_prepare_field( $field ) {
|
||||||
|
|
||||||
// bail early if already prepared
|
// bail early if already prepared
|
||||||
if( $field['_input'] ) return $field;
|
if( $field['_prepare'] ) return $field;
|
||||||
|
|
||||||
|
|
||||||
// _input
|
// key overrides name
|
||||||
$field['_input'] = $field['name'];
|
if( $field['key'] ) $field['name'] = $field['key'];
|
||||||
|
|
||||||
|
|
||||||
// _input: key overrides name
|
|
||||||
if( $field['key'] ) {
|
|
||||||
|
|
||||||
$field['_input'] = $field['key'];
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// _input: prefix prepends name
|
// prefix
|
||||||
if( $field['prefix'] ) {
|
if( $field['prefix'] ) $field['name'] = $field['prefix'] . '[' . $field['name'] . ']';
|
||||||
|
|
||||||
$field['_input'] = "{$field['prefix']}[{$field['_input']}]";
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// add id (may be custom set)
|
// field is now prepared
|
||||||
if( !$field['id'] ) {
|
$field['_prepare'] = 1;
|
||||||
|
|
||||||
$field['id'] = str_replace(array('][', '[', ']'), array('-', '-', ''), $field['_input']);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// filter to 3rd party customization
|
// filter to 3rd party customization
|
||||||
$field = apply_filters( "acf/prepare_field", $field );
|
$field = apply_filters( "acf/prepare_field", $field );
|
||||||
$field = apply_filters( "acf/prepare_field/type={$field['type']}", $field );
|
$field = apply_filters( "acf/prepare_field/type={$field['type']}", $field );
|
||||||
$field = apply_filters( "acf/prepare_field/name={$field['name']}", $field );
|
$field = apply_filters( "acf/prepare_field/name={$field['_name']}", $field );
|
||||||
$field = apply_filters( "acf/prepare_field/key={$field['key']}", $field );
|
$field = apply_filters( "acf/prepare_field/key={$field['key']}", $field );
|
||||||
|
|
||||||
|
|
||||||
|
// bail ealry if no field
|
||||||
|
if( !$field ) return false;
|
||||||
|
|
||||||
|
|
||||||
|
// id attr is generated from name
|
||||||
|
$field['id'] = str_replace(array('][', '[', ']'), array('-', '-', ''), $field['name']);
|
||||||
|
|
||||||
|
|
||||||
// return
|
// return
|
||||||
return $field;
|
return $field;
|
||||||
|
|
||||||
|
|
@ -469,8 +374,8 @@ function acf_render_field( $field = false ) {
|
||||||
$field = acf_prepare_field( $field );
|
$field = acf_prepare_field( $field );
|
||||||
|
|
||||||
|
|
||||||
// update $field['name']
|
// bail ealry if no field
|
||||||
$field['name'] = $field['_input'];
|
if( !$field ) return;
|
||||||
|
|
||||||
|
|
||||||
// create field specific html
|
// create field specific html
|
||||||
|
|
@ -506,6 +411,10 @@ function acf_render_field_wrap( $field, $el = 'div', $instruction = 'label' ) {
|
||||||
$field = acf_prepare_field( $field );
|
$field = acf_prepare_field( $field );
|
||||||
|
|
||||||
|
|
||||||
|
// bail ealry if no field
|
||||||
|
if( !$field ) return;
|
||||||
|
|
||||||
|
|
||||||
// el
|
// el
|
||||||
$elements = apply_filters('acf/render_field_wrap/elements', array(
|
$elements = apply_filters('acf/render_field_wrap/elements', array(
|
||||||
'div' => 'div',
|
'div' => 'div',
|
||||||
|
|
@ -531,7 +440,7 @@ function acf_render_field_wrap( $field, $el = 'div', $instruction = 'label' ) {
|
||||||
'class' => 'acf-field',
|
'class' => 'acf-field',
|
||||||
'width' => '',
|
'width' => '',
|
||||||
'style' => '',
|
'style' => '',
|
||||||
'data-name' => $field['name'],
|
'data-name' => $field['_name'],
|
||||||
'data-type' => $field['type'],
|
'data-type' => $field['type'],
|
||||||
'data-key' => '',
|
'data-key' => '',
|
||||||
);
|
);
|
||||||
|
|
@ -658,7 +567,7 @@ function acf_render_field_setting( $field, $setting, $global = false ) {
|
||||||
$setting = acf_get_valid_field( $setting );
|
$setting = acf_get_valid_field( $setting );
|
||||||
|
|
||||||
|
|
||||||
// if this setting is not global, add a data attribute
|
// specific
|
||||||
if( !$global ) {
|
if( !$global ) {
|
||||||
|
|
||||||
$setting['wrapper']['data-setting'] = $field['type'];
|
$setting['wrapper']['data-setting'] = $field['type'];
|
||||||
|
|
@ -666,29 +575,42 @@ function acf_render_field_setting( $field, $setting, $global = false ) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// class
|
||||||
|
$setting['wrapper']['class'] .= ' acf-field-setting-' . $setting['name'];
|
||||||
|
|
||||||
|
|
||||||
// copy across prefix
|
// copy across prefix
|
||||||
$setting['prefix'] = $field['prefix'];
|
$setting['prefix'] = $field['prefix'];
|
||||||
|
|
||||||
|
|
||||||
|
// attempt find value
|
||||||
|
if( $setting['value'] === null ) {
|
||||||
|
|
||||||
// copy across the $setting value
|
// name
|
||||||
if( isset($field[ $setting['name'] ]) ) {
|
if( isset($field[ $setting['name'] ]) ) {
|
||||||
|
|
||||||
|
$setting['value'] = $field[ $setting['name'] ];
|
||||||
|
|
||||||
$setting['value'] = $field[ $setting['name'] ];
|
// default
|
||||||
|
} elseif( isset($setting['default_value']) ) {
|
||||||
} elseif( isset($setting['default_value']) ) {
|
|
||||||
|
$setting['value'] = $setting['default_value'];
|
||||||
// use the default value
|
|
||||||
$setting['value'] = $setting['default_value'];
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// vars
|
// append (used by JS to join settings)
|
||||||
$instructions_placement = acf_extract_var( $setting, 'instructions_placement', 'label' );
|
if( isset($setting['_append']) ) {
|
||||||
|
|
||||||
|
$setting['wrapper']['data-append'] = $setting['_append'];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// render
|
// render
|
||||||
acf_render_field_wrap( $setting, 'tr', $instructions_placement );
|
acf_render_field_wrap( $setting, 'tr', 'label' );
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1286,7 +1208,7 @@ function acf_update_field( $field = false, $specific = false ) {
|
||||||
'class',
|
'class',
|
||||||
'parent',
|
'parent',
|
||||||
'_name',
|
'_name',
|
||||||
'_input',
|
'_prepare',
|
||||||
'_valid',
|
'_valid',
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
@ -1728,7 +1650,7 @@ function acf_prepare_field_for_export( $field ) {
|
||||||
'class',
|
'class',
|
||||||
'parent',
|
'parent',
|
||||||
'_name',
|
'_name',
|
||||||
'_input',
|
'_prepare',
|
||||||
'_valid',
|
'_valid',
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
@ -1826,7 +1748,7 @@ function acf_prepare_field_for_import( $field ) {
|
||||||
'id',
|
'id',
|
||||||
'class',
|
'class',
|
||||||
'_name',
|
'_name',
|
||||||
'_input',
|
'_prepare',
|
||||||
'_valid',
|
'_valid',
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -370,30 +370,29 @@ function acf_get_view( $view_name = '', $args = array() ) {
|
||||||
function acf_merge_atts( $atts, $extra = array() ) {
|
function acf_merge_atts( $atts, $extra = array() ) {
|
||||||
|
|
||||||
// bail ealry if no $extra
|
// bail ealry if no $extra
|
||||||
if( empty($extra) ) {
|
if( empty($extra) ) return $atts;
|
||||||
|
|
||||||
return $atts;
|
|
||||||
|
// trim
|
||||||
}
|
$extra = array_map('trim', $extra);
|
||||||
|
$extra = array_filter($extra);
|
||||||
|
|
||||||
|
|
||||||
// merge in new atts
|
// merge in new atts
|
||||||
foreach( $extra as $k => $v ) {
|
foreach( $extra as $k => $v ) {
|
||||||
|
|
||||||
|
// append
|
||||||
if( $k == 'class' || $k == 'style' ) {
|
if( $k == 'class' || $k == 'style' ) {
|
||||||
|
|
||||||
if( $v === '' ) {
|
$atts[ $k ] .= ' ' . $v;
|
||||||
|
|
||||||
continue;
|
// merge
|
||||||
|
} else {
|
||||||
}
|
|
||||||
|
|
||||||
$v = $atts[ $k ] . ' ' . $v;
|
$atts[ $k ] = $v;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$atts[ $k ] = $v;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -612,48 +611,42 @@ function acf_get_sub_array( $array, $keys ) {
|
||||||
* @return (array)
|
* @return (array)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
function acf_get_post_types( $exclude = array(), $include = array() ) {
|
function acf_get_post_types( $args = array() ) {
|
||||||
|
|
||||||
// get all custom post types
|
// vars
|
||||||
$post_types = get_post_types();
|
$exclude = acf_extract_var( $args, 'exclude', array() );
|
||||||
|
$return = array();
|
||||||
|
|
||||||
|
|
||||||
// core exclude
|
// get post types
|
||||||
$exclude = wp_parse_args( $exclude, array('acf-field', 'acf-field-group', 'revision', 'nav_menu_item') );
|
$post_types = get_post_types( $args, 'objects' );
|
||||||
|
|
||||||
|
|
||||||
// include
|
// remove ACF post types
|
||||||
if( !empty($include) ) {
|
$exclude[] = 'acf-field';
|
||||||
|
$exclude[] = 'acf-field-group';
|
||||||
|
|
||||||
|
|
||||||
|
// loop
|
||||||
|
foreach( $post_types as $i => $post_type ) {
|
||||||
|
|
||||||
foreach( array_keys($include) as $i ) {
|
// bail early if is exclude
|
||||||
|
if( in_array($i, $exclude) ) continue;
|
||||||
$post_type = $include[ $i ];
|
|
||||||
|
|
||||||
if( post_type_exists($post_type) ) {
|
// bail early if is builtin (WP) private post type
|
||||||
|
// - nav_menu_item, revision, customize_changeset, etc
|
||||||
$post_types[ $post_type ] = $post_type;
|
if( $post_type->_builtin && !$post_type->public ) continue;
|
||||||
|
|
||||||
}
|
|
||||||
|
// append
|
||||||
}
|
$return[] = $i;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// exclude
|
|
||||||
foreach( array_values($exclude) as $i ) {
|
|
||||||
|
|
||||||
unset( $post_types[ $i ] );
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// simplify keys
|
|
||||||
$post_types = array_values($post_types);
|
|
||||||
|
|
||||||
|
|
||||||
// return
|
// return
|
||||||
return $post_types;
|
return $return;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -861,75 +854,6 @@ function acf_verify_ajax() {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* acf_add_admin_notice
|
|
||||||
*
|
|
||||||
* This function will add the notice data to a setting in the acf object for the admin_notices action to use
|
|
||||||
*
|
|
||||||
* @type function
|
|
||||||
* @date 17/10/13
|
|
||||||
* @since 5.0.0
|
|
||||||
*
|
|
||||||
* @param $text (string)
|
|
||||||
* @param $class (string)
|
|
||||||
* @return (int) message ID (array position)
|
|
||||||
*/
|
|
||||||
|
|
||||||
function acf_add_admin_notice( $text, $class = '', $wrap = 'p' )
|
|
||||||
{
|
|
||||||
// vars
|
|
||||||
$admin_notices = acf_get_admin_notices();
|
|
||||||
|
|
||||||
|
|
||||||
// add to array
|
|
||||||
$admin_notices[] = array(
|
|
||||||
'text' => $text,
|
|
||||||
'class' => "updated {$class}",
|
|
||||||
'wrap' => $wrap
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
// update
|
|
||||||
acf_update_setting( 'admin_notices', $admin_notices );
|
|
||||||
|
|
||||||
|
|
||||||
// return
|
|
||||||
return ( count( $admin_notices ) - 1 );
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* acf_get_admin_notices
|
|
||||||
*
|
|
||||||
* This function will return an array containing any admin notices
|
|
||||||
*
|
|
||||||
* @type function
|
|
||||||
* @date 17/10/13
|
|
||||||
* @since 5.0.0
|
|
||||||
*
|
|
||||||
* @param n/a
|
|
||||||
* @return (array)
|
|
||||||
*/
|
|
||||||
|
|
||||||
function acf_get_admin_notices()
|
|
||||||
{
|
|
||||||
// vars
|
|
||||||
$admin_notices = acf_get_setting( 'admin_notices' );
|
|
||||||
|
|
||||||
|
|
||||||
// validate
|
|
||||||
if( !$admin_notices )
|
|
||||||
{
|
|
||||||
$admin_notices = array();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// return
|
|
||||||
return $admin_notices;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* acf_get_image_sizes
|
* acf_get_image_sizes
|
||||||
*
|
*
|
||||||
|
|
@ -1033,6 +957,70 @@ function acf_get_image_size( $s = '' ) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* acf_version_compare
|
||||||
|
*
|
||||||
|
* This function will compare version left v right
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 21/11/16
|
||||||
|
* @since 5.5.0
|
||||||
|
*
|
||||||
|
* @param $compare (string)
|
||||||
|
* @param $version (string)
|
||||||
|
* @return (boolean)
|
||||||
|
*/
|
||||||
|
|
||||||
|
function acf_version_compare( $left = 'wp', $compare = '>', $right = '1' ) {
|
||||||
|
|
||||||
|
// global
|
||||||
|
global $wp_version;
|
||||||
|
|
||||||
|
|
||||||
|
// wp
|
||||||
|
if( $left === 'wp' ) $left = $wp_version;
|
||||||
|
|
||||||
|
|
||||||
|
// remove '-beta1' or '-RC1'
|
||||||
|
$left = acf_get_full_version($left);
|
||||||
|
$right = acf_get_full_version($right);
|
||||||
|
|
||||||
|
|
||||||
|
// return
|
||||||
|
return version_compare( $left, $right, $compare );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* acf_get_full_version
|
||||||
|
*
|
||||||
|
* This function will remove any '-beta1' or '-RC1' strings from a version
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 24/11/16
|
||||||
|
* @since 5.5.0
|
||||||
|
*
|
||||||
|
* @param $version (string)
|
||||||
|
* @return (string)
|
||||||
|
*/
|
||||||
|
|
||||||
|
function acf_get_full_version( $version = '1' ) {
|
||||||
|
|
||||||
|
// remove '-beta1' or '-RC1'
|
||||||
|
if( $pos = strpos($version, '-') ) {
|
||||||
|
|
||||||
|
$version = substr($version, 0, $pos);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// return
|
||||||
|
return $version;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* acf_get_terms
|
* acf_get_terms
|
||||||
*
|
*
|
||||||
|
|
@ -1723,23 +1711,10 @@ function acf_get_grouped_posts( $args ) {
|
||||||
$ordered_posts = get_page_children( $parent, $all_posts );
|
$ordered_posts = get_page_children( $parent, $all_posts );
|
||||||
|
|
||||||
|
|
||||||
// if has ordered posts
|
// check for empty array (possible if parent did not exist within original data)
|
||||||
if( !empty($ordered_posts) ) {
|
if( !empty($ordered_posts) ) {
|
||||||
|
|
||||||
// reset $this_posts
|
$this_posts = array_slice($ordered_posts, $offset, $length);
|
||||||
$this_posts = array();
|
|
||||||
|
|
||||||
|
|
||||||
// append
|
|
||||||
for( $i = $offset; $i < ($offset + $length); $i++ ) {
|
|
||||||
|
|
||||||
$this_posts[] = acf_extract_var( $ordered_posts, $i );
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// clean up null values
|
|
||||||
$this_posts = array_filter($this_posts);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -2325,87 +2300,6 @@ function acf_debug_end() {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* acf_get_updates
|
|
||||||
*
|
|
||||||
* This function will reutrn all or relevant updates for ACF
|
|
||||||
*
|
|
||||||
* @type function
|
|
||||||
* @date 12/05/2014
|
|
||||||
* @since 5.0.0
|
|
||||||
*
|
|
||||||
* @param $post_id (int)
|
|
||||||
* @return $post_id (int)
|
|
||||||
*/
|
|
||||||
|
|
||||||
function acf_get_updates() {
|
|
||||||
|
|
||||||
// vars
|
|
||||||
$updates = array();
|
|
||||||
$plugin_version = acf_get_setting('version');
|
|
||||||
$acf_version = get_option('acf_version');
|
|
||||||
$path = acf_get_path('admin/updates');
|
|
||||||
|
|
||||||
|
|
||||||
// bail early if no version (not activated)
|
|
||||||
if( !$acf_version ) {
|
|
||||||
|
|
||||||
return false;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// check that path exists
|
|
||||||
if( !file_exists( $path ) ) {
|
|
||||||
|
|
||||||
return false;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
$dir = opendir( $path );
|
|
||||||
|
|
||||||
while(false !== ( $file = readdir($dir)) ) {
|
|
||||||
|
|
||||||
// only php files
|
|
||||||
if( substr($file, -4) !== '.php' ) {
|
|
||||||
|
|
||||||
continue;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// get version number
|
|
||||||
$update_version = substr($file, 0, -4);
|
|
||||||
|
|
||||||
|
|
||||||
// ignore if update is for a future version. May exist for testing
|
|
||||||
if( version_compare( $update_version, $plugin_version, '>') ) {
|
|
||||||
|
|
||||||
continue;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// ignore if update has already been run
|
|
||||||
if( version_compare( $update_version, $acf_version, '<=') ) {
|
|
||||||
|
|
||||||
continue;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// append
|
|
||||||
$updates[] = $update_version;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// return
|
|
||||||
return $updates;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* acf_encode_choices
|
* acf_encode_choices
|
||||||
*
|
*
|
||||||
|
|
@ -2440,7 +2334,7 @@ function acf_encode_choices( $array = array(), $show_keys = true ) {
|
||||||
foreach( $array as $k => $v ) {
|
foreach( $array as $k => $v ) {
|
||||||
|
|
||||||
// ignore if key and value are the same
|
// ignore if key and value are the same
|
||||||
if( $k === $v ) continue;
|
if( strval($k) == strval($v) ) continue;
|
||||||
|
|
||||||
|
|
||||||
// show key in the value
|
// show key in the value
|
||||||
|
|
@ -2956,7 +2850,7 @@ function acf_get_valid_post_id( $post_id = 0 ) {
|
||||||
// term
|
// term
|
||||||
} elseif( isset($post_id->taxonomy, $post_id->term_id) ) {
|
} elseif( isset($post_id->taxonomy, $post_id->term_id) ) {
|
||||||
|
|
||||||
$post_id = $post_id->taxonomy . '_' . $post_id->term_id;
|
$post_id = 'term_' . $post_id->term_id;
|
||||||
|
|
||||||
// comment
|
// comment
|
||||||
} elseif( isset($post_id->comment_ID) ) {
|
} elseif( isset($post_id->comment_ID) ) {
|
||||||
|
|
@ -3083,9 +2977,14 @@ function acf_get_post_id_info( $post_id = 0 ) {
|
||||||
$type = explode($glue, $post_id);
|
$type = explode($glue, $post_id);
|
||||||
$id = array_pop($type);
|
$id = array_pop($type);
|
||||||
$type = implode($glue, $type);
|
$type = implode($glue, $type);
|
||||||
$meta = array('post', 'user', 'comment'); // add in 'term'
|
$meta = array('post', 'user', 'comment', 'term'); // add in 'term'
|
||||||
|
|
||||||
|
|
||||||
|
// check if is taxonomy (ACF < 5.5)
|
||||||
|
// - avoid scenario where taxonomy exists with name of meta type
|
||||||
|
if( !in_array($type, $meta) && acf_isset_termmeta($type) ) $type = 'term';
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// meta
|
// meta
|
||||||
if( is_numeric($id) && in_array($type, $meta) ) {
|
if( is_numeric($id) && in_array($type, $meta) ) {
|
||||||
|
|
||||||
|
|
@ -3113,34 +3012,58 @@ function acf_get_post_id_info( $post_id = 0 ) {
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
echo '<pre>';
|
|
||||||
print_r( acf_get_post_id_info(4) );
|
acf_log( acf_get_post_id_info(4) );
|
||||||
echo '</pre>';
|
|
||||||
echo '<pre>';
|
acf_log( acf_get_post_id_info('post_4') );
|
||||||
print_r( acf_get_post_id_info('post_4') );
|
|
||||||
echo '</pre>';
|
acf_log( acf_get_post_id_info('user_123') );
|
||||||
echo '<pre>';
|
|
||||||
print_r( acf_get_post_id_info('user_123') );
|
acf_log( acf_get_post_id_info('term_567') );
|
||||||
echo '</pre>';
|
|
||||||
echo '<pre>';
|
acf_log( acf_get_post_id_info('category_204') );
|
||||||
print_r( acf_get_post_id_info('term_567') );
|
|
||||||
echo '</pre>';
|
acf_log( acf_get_post_id_info('comment_6') );
|
||||||
echo '<pre>';
|
|
||||||
print_r( acf_get_post_id_info('comment_6') );
|
acf_log( acf_get_post_id_info('options_lol!') );
|
||||||
echo '</pre>';
|
|
||||||
echo '<pre>';
|
acf_log( acf_get_post_id_info('option') );
|
||||||
print_r( acf_get_post_id_info('options_lol!') );
|
|
||||||
echo '</pre>';
|
acf_log( acf_get_post_id_info('options') );
|
||||||
echo '<pre>';
|
|
||||||
print_r( acf_get_post_id_info('option') );
|
|
||||||
echo '</pre>';
|
|
||||||
echo '<pre>';
|
|
||||||
print_r( acf_get_post_id_info('options') );
|
|
||||||
echo '</pre>';
|
|
||||||
die;
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* acf_isset_termmeta
|
||||||
|
*
|
||||||
|
* This function will return true if the termmeta table exists
|
||||||
|
* https://developer.wordpress.org/reference/functions/get_term_meta/
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 3/09/2016
|
||||||
|
* @since 5.4.0
|
||||||
|
*
|
||||||
|
* @param $post_id (int)
|
||||||
|
* @return $post_id (int)
|
||||||
|
*/
|
||||||
|
|
||||||
|
function acf_isset_termmeta( $taxonomy = '' ) {
|
||||||
|
|
||||||
|
// bail ealry if no table
|
||||||
|
if( get_option('db_version') < 34370 ) return false;
|
||||||
|
|
||||||
|
|
||||||
|
// check taxonomy
|
||||||
|
if( $taxonomy && !taxonomy_exists($taxonomy) ) return false;
|
||||||
|
|
||||||
|
|
||||||
|
// return
|
||||||
|
return true;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* acf_upload_files
|
* acf_upload_files
|
||||||
*
|
*
|
||||||
|
|
@ -3390,31 +3313,18 @@ function acf_is_screen( $id = '' ) {
|
||||||
* @return $post_id (int)
|
* @return $post_id (int)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
function acf_maybe_get( $array, $key, $default = null ) {
|
function acf_maybe_get( $array, $key = 0, $default = null ) {
|
||||||
|
|
||||||
// vars
|
// if exists
|
||||||
$keys = explode('/', $key);
|
if( isset($array[ $key ]) ) {
|
||||||
|
|
||||||
|
return $array[ $key ];
|
||||||
|
|
||||||
|
|
||||||
// loop through keys
|
|
||||||
foreach( $keys as $k ) {
|
|
||||||
|
|
||||||
// return default if does not exist
|
|
||||||
if( !isset($array[ $k ]) ) {
|
|
||||||
|
|
||||||
return $default;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// update $array
|
|
||||||
$array = $array[ $k ];
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// return
|
// return
|
||||||
return $array;
|
return $default;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -4228,6 +4138,36 @@ function acf_is_row_collapsed( $field_key = '', $row_index = 0 ) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* acf_get_attachment_image
|
||||||
|
*
|
||||||
|
* description
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 24/10/16
|
||||||
|
* @since 5.5.0
|
||||||
|
*
|
||||||
|
* @param $post_id (int)
|
||||||
|
* @return $post_id (int)
|
||||||
|
*/
|
||||||
|
|
||||||
|
function acf_get_attachment_image( $attachment_id = 0, $size = 'thumbnail' ) {
|
||||||
|
|
||||||
|
// vars
|
||||||
|
$url = wp_get_attachment_image_src($attachment_id, 'thumbnail');
|
||||||
|
$alt = get_post_meta($attachment_id, '_wp_attachment_image_alt', true);
|
||||||
|
|
||||||
|
|
||||||
|
// bail early if no url
|
||||||
|
if( !$url ) return '';
|
||||||
|
|
||||||
|
|
||||||
|
// return
|
||||||
|
$value = '<img src="' . $url . '" alt="' . $alt . '" />';
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* acf_get_post_thumbnail
|
* acf_get_post_thumbnail
|
||||||
*
|
*
|
||||||
|
|
@ -4429,12 +4369,8 @@ function acf_format_date( $value, $format ) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// translate
|
|
||||||
$value = date_i18n($format, $unixtimestamp);
|
|
||||||
|
|
||||||
|
|
||||||
// return
|
// return
|
||||||
return $value;
|
return date_i18n($format, $unixtimestamp);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -264,6 +264,10 @@ function get_field_objects( $post_id = false, $format_value = true, $load_value
|
||||||
|
|
||||||
$meta = get_comment_meta( $info['id'] );
|
$meta = get_comment_meta( $info['id'] );
|
||||||
|
|
||||||
|
} elseif( $info['type'] == 'term' ) {
|
||||||
|
|
||||||
|
$meta = get_term_meta( $info['id'] );
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
$rows = $wpdb->get_results($wpdb->prepare(
|
$rows = $wpdb->get_results($wpdb->prepare(
|
||||||
|
|
@ -1291,8 +1295,8 @@ class acf_template_form {
|
||||||
));
|
));
|
||||||
|
|
||||||
$args['form_attributes'] = wp_parse_args( $args['form_attributes'], array(
|
$args['form_attributes'] = wp_parse_args( $args['form_attributes'], array(
|
||||||
'id' => 'post',
|
'id' => $args['id'],
|
||||||
'class' => '',
|
'class' => 'acf-form',
|
||||||
'action' => '',
|
'action' => '',
|
||||||
'method' => 'post',
|
'method' => 'post',
|
||||||
));
|
));
|
||||||
|
|
@ -1322,10 +1326,6 @@ class acf_template_form {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// attributes
|
|
||||||
$args['form_attributes']['class'] .= ' acf-form';
|
|
||||||
|
|
||||||
|
|
||||||
// register local fields
|
// register local fields
|
||||||
foreach( $this->fields as $k => $field ) {
|
foreach( $this->fields as $k => $field ) {
|
||||||
|
|
||||||
|
|
@ -1793,7 +1793,7 @@ function add_sub_row( $selector, $row = false, $post_id = false ) {
|
||||||
|
|
||||||
// update
|
// update
|
||||||
return acf_update_value( $value, $post_id, $sub_field );
|
return acf_update_value( $value, $post_id, $sub_field );
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -1844,7 +1844,11 @@ function update_row( $selector, $i = 1, $row = false, $post_id = false ) {
|
||||||
|
|
||||||
|
|
||||||
// update value
|
// update value
|
||||||
return acf_update_value( $value, $post_id, $field );
|
acf_update_value( $value, $post_id, $field );
|
||||||
|
|
||||||
|
|
||||||
|
// return
|
||||||
|
return true;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1904,7 +1908,11 @@ function update_sub_row( $selector, $i = 1, $row = false, $post_id = false ) {
|
||||||
|
|
||||||
|
|
||||||
// update
|
// update
|
||||||
return acf_update_value( $value, $post_id, $sub_field );
|
acf_update_value( $value, $post_id, $sub_field );
|
||||||
|
|
||||||
|
|
||||||
|
// return
|
||||||
|
return true;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -480,4 +480,34 @@ function acf_copy_postmeta( $from_post_id, $to_post_id ) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* acf_preview_value
|
||||||
|
*
|
||||||
|
* This function will return a human freindly 'preview' for a given field value
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 24/10/16
|
||||||
|
* @since 5.5.0
|
||||||
|
*
|
||||||
|
* @param $value (mixed)
|
||||||
|
* @param $post_id (mixed)
|
||||||
|
* @param $field (array)
|
||||||
|
* @return (string)
|
||||||
|
*/
|
||||||
|
|
||||||
|
function acf_preview_value( $value, $post_id, $field ) {
|
||||||
|
|
||||||
|
// apply filters
|
||||||
|
$value = apply_filters( "acf/preview_value", $value, $post_id, $field );
|
||||||
|
$value = apply_filters( "acf/preview_value/type={$field['type']}", $value, $post_id, $field );
|
||||||
|
$value = apply_filters( "acf/preview_value/name={$field['_name']}", $value, $post_id, $field );
|
||||||
|
$value = apply_filters( "acf/preview_value/key={$field['key']}", $value, $post_id, $field );
|
||||||
|
|
||||||
|
|
||||||
|
// return
|
||||||
|
return $value;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,11 @@
|
||||||
|
/*--------------------------------------------------------------------------------------------
|
||||||
|
*
|
||||||
|
* vars
|
||||||
|
*
|
||||||
|
*--------------------------------------------------------------------------------------------*/
|
||||||
|
/* colors */
|
||||||
|
/* acf-field */
|
||||||
|
/* responsive */
|
||||||
/*---------------------------------------------------------------------------------------------
|
/*---------------------------------------------------------------------------------------------
|
||||||
*
|
*
|
||||||
* Global
|
* Global
|
||||||
|
|
@ -45,6 +53,7 @@
|
||||||
}
|
}
|
||||||
.no-fields-message {
|
.no-fields-message {
|
||||||
padding: 15px 15px;
|
padding: 15px 15px;
|
||||||
|
background: #fff;
|
||||||
}
|
}
|
||||||
.acf-field-list-wrap {
|
.acf-field-list-wrap {
|
||||||
border: #DFDFDF solid 1px;
|
border: #DFDFDF solid 1px;
|
||||||
|
|
@ -66,7 +75,6 @@
|
||||||
/* field list */
|
/* field list */
|
||||||
.acf-field-list {
|
.acf-field-list {
|
||||||
background: #F9F9F9;
|
background: #F9F9F9;
|
||||||
border-top: #E1E1E1 solid 1px;
|
|
||||||
margin-top: -1px;
|
margin-top: -1px;
|
||||||
}
|
}
|
||||||
.acf-field-list a {
|
.acf-field-list a {
|
||||||
|
|
@ -82,9 +90,6 @@
|
||||||
border-top: #F0F0F0 solid 1px;
|
border-top: #F0F0F0 solid 1px;
|
||||||
background: #fff;
|
background: #fff;
|
||||||
}
|
}
|
||||||
.acf-field-object:first-child {
|
|
||||||
border-top: 0 none;
|
|
||||||
}
|
|
||||||
.acf-field-object.ui-sortable-helper {
|
.acf-field-object.ui-sortable-helper {
|
||||||
border-top-color: #fff;
|
border-top-color: #fff;
|
||||||
box-shadow: 0 0 0 1px #DFDFDF, 0 1px 4px rgba(0, 0, 0, 0.1);
|
box-shadow: 0 0 0 1px #DFDFDF, 0 1px 4px rgba(0, 0, 0, 0.1);
|
||||||
|
|
@ -149,8 +154,8 @@
|
||||||
}
|
}
|
||||||
/* field object handle (open) */
|
/* field object handle (open) */
|
||||||
.acf-field-object.open > .handle {
|
.acf-field-object.open > .handle {
|
||||||
background: #00a0d2;
|
background: #2a9bd9;
|
||||||
border: #0092bf solid 1px;
|
border: #2696d3 solid 1px;
|
||||||
text-shadow: #268FBB 0 1px 0;
|
text-shadow: #268FBB 0 1px 0;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
position: relative;
|
position: relative;
|
||||||
|
|
@ -180,7 +185,7 @@
|
||||||
}
|
}
|
||||||
/* conditional logic */
|
/* conditional logic */
|
||||||
.acf-field-object .rule-groups {
|
.acf-field-object .rule-groups {
|
||||||
margin-top: 10px;
|
margin-top: 20px;
|
||||||
}
|
}
|
||||||
/* field object keys */
|
/* field object keys */
|
||||||
.acf-field-object .handle .pre-field-key {
|
.acf-field-object .handle .pre-field-key {
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,13 @@
|
||||||
/*--------------------------------------------------------------------------------------------
|
/*--------------------------------------------------------------------------------------------
|
||||||
*
|
*
|
||||||
|
* vars
|
||||||
|
*
|
||||||
|
*--------------------------------------------------------------------------------------------*/
|
||||||
|
/* colors */
|
||||||
|
/* acf-field */
|
||||||
|
/* responsive */
|
||||||
|
/*--------------------------------------------------------------------------------------------
|
||||||
|
*
|
||||||
* General
|
* General
|
||||||
*
|
*
|
||||||
*--------------------------------------------------------------------------------------------*/
|
*--------------------------------------------------------------------------------------------*/
|
||||||
|
|
@ -519,6 +527,8 @@ a.acf-icon.-cancel.grey:hover {
|
||||||
border: 1px solid #E5E5E5;
|
border: 1px solid #E5E5E5;
|
||||||
position: relative;
|
position: relative;
|
||||||
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
|
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
|
||||||
|
/* title */
|
||||||
|
/* footer */
|
||||||
}
|
}
|
||||||
.acf-box .title {
|
.acf-box .title {
|
||||||
border-bottom: 1px solid #EEEEEE;
|
border-bottom: 1px solid #EEEEEE;
|
||||||
|
|
@ -555,20 +565,18 @@ a.acf-icon.-cancel.grey:hover {
|
||||||
padding: 15px;
|
padding: 15px;
|
||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
||||||
.acf-box .footer-blue {
|
.acf-box .footer.-blue {
|
||||||
border-top: 0 none;
|
border-top: 0 none;
|
||||||
background-color: #52ACCC;
|
background-color: #2a9bd9;
|
||||||
color: #FFFFFF;
|
color: #FFFFFF;
|
||||||
}
|
}
|
||||||
.acf-box .footer-blue a {
|
.acf-box .footer.-blue p {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
.acf-box .footer.-blue a {
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
text-shadow: none;
|
text-shadow: none;
|
||||||
}
|
color: inherit;
|
||||||
.acf-box .footer .acf-hl > li {
|
|
||||||
margin: 0 10px 0 0;
|
|
||||||
}
|
|
||||||
.acf-box .footer .acf-hl > li.acf-fr {
|
|
||||||
margin: 0 0 0 10px;
|
|
||||||
}
|
}
|
||||||
/* error */
|
/* error */
|
||||||
.acf-error-message {
|
.acf-error-message {
|
||||||
|
|
@ -1032,13 +1040,14 @@ html[dir="rtl"] #acf-popup .title .acf-icon {
|
||||||
}
|
}
|
||||||
.acf-three-col > div {
|
.acf-three-col > div {
|
||||||
float: left;
|
float: left;
|
||||||
margin: 0 0 10px 5%;
|
margin: 0 0 15px 5%;
|
||||||
position: relative;
|
position: relative;
|
||||||
width: 30%;
|
width: 30%;
|
||||||
}
|
}
|
||||||
.acf-three-col > div:first-child,
|
.acf-three-col > div:first-child,
|
||||||
.acf-three-col > br + div {
|
.acf-three-col > br + div {
|
||||||
margin-left: 0;
|
margin-left: 0;
|
||||||
|
clear: left;
|
||||||
}
|
}
|
||||||
.acf-three-col > br {
|
.acf-three-col > br {
|
||||||
display: none;
|
display: none;
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,9 @@
|
||||||
* vars
|
* vars
|
||||||
*
|
*
|
||||||
*--------------------------------------------------------------------------------------------*/
|
*--------------------------------------------------------------------------------------------*/
|
||||||
|
/* colors */
|
||||||
|
/* acf-field */
|
||||||
|
/* responsive */
|
||||||
/*--------------------------------------------------------------------------------------------
|
/*--------------------------------------------------------------------------------------------
|
||||||
*
|
*
|
||||||
* acf-field
|
* acf-field
|
||||||
|
|
@ -559,6 +562,8 @@ ul.acf-checkbox-list {
|
||||||
position: relative;
|
position: relative;
|
||||||
padding: 1px;
|
padding: 1px;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
|
/* hl */
|
||||||
|
/* rtl */
|
||||||
}
|
}
|
||||||
ul.acf-radio-list li,
|
ul.acf-radio-list li,
|
||||||
ul.acf-checkbox-list li {
|
ul.acf-checkbox-list li {
|
||||||
|
|
@ -567,38 +572,150 @@ ul.acf-checkbox-list li {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
position: relative;
|
position: relative;
|
||||||
word-wrap: break-word;
|
word-wrap: break-word;
|
||||||
}
|
/* attachment sidebar fix*/
|
||||||
ul.acf-hl.acf-radio-list li,
|
|
||||||
ul.acf-hl.acf-checkbox-list li {
|
|
||||||
margin-right: 20px;
|
|
||||||
clear: none;
|
|
||||||
}
|
|
||||||
ul.acf-radio-list li input,
|
|
||||||
ul.acf-checkbox-list li input {
|
|
||||||
margin: -1px 4px 0 0;
|
|
||||||
vertical-align: middle;
|
|
||||||
}
|
}
|
||||||
ul.acf-radio-list li label,
|
ul.acf-radio-list li label,
|
||||||
ul.acf-checkbox-list li label {
|
ul.acf-checkbox-list li label {
|
||||||
display: inline;
|
display: inline;
|
||||||
|
}
|
||||||
|
ul.acf-radio-list li input[type="checkbox"],
|
||||||
|
ul.acf-checkbox-list li input[type="checkbox"],
|
||||||
|
ul.acf-radio-list li input[type="radio"],
|
||||||
|
ul.acf-checkbox-list li input[type="radio"] {
|
||||||
|
margin: -1px 4px 0 0;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
ul.acf-radio-list li input[type="text"],
|
||||||
|
ul.acf-checkbox-list li input[type="text"] {
|
||||||
|
width: auto;
|
||||||
|
vertical-align: middle;
|
||||||
margin: 2px 0;
|
margin: 2px 0;
|
||||||
}
|
}
|
||||||
ul.acf-radio-list li input[type="text"] {
|
|
||||||
width: auto;
|
|
||||||
}
|
|
||||||
/* attachment sidebar fix*/
|
|
||||||
ul.acf-radio-list li span,
|
ul.acf-radio-list li span,
|
||||||
ul.acf-checkbox-list li span {
|
ul.acf-checkbox-list li span {
|
||||||
float: none;
|
float: none;
|
||||||
}
|
}
|
||||||
/* rtl */
|
ul.acf-radio-list.acf-hl li,
|
||||||
html[dir="rtl"] ul.acf-radio-list li input,
|
ul.acf-checkbox-list.acf-hl li {
|
||||||
html[dir="rtl"] ul.acf-checkbox-list li input {
|
margin-right: 20px;
|
||||||
|
clear: none;
|
||||||
|
}
|
||||||
|
html[dir="rtl"] ul.acf-radio-list input[type="checkbox"],
|
||||||
|
html[dir="rtl"] ul.acf-checkbox-list input[type="checkbox"],
|
||||||
|
html[dir="rtl"] ul.acf-radio-list input[type="radio"],
|
||||||
|
html[dir="rtl"] ul.acf-checkbox-list input[type="radio"] {
|
||||||
margin-left: 4px;
|
margin-left: 4px;
|
||||||
margin-right: 0;
|
margin-right: 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
}
|
}
|
||||||
|
/*---------------------------------------------------------------------------------------------
|
||||||
|
*
|
||||||
|
* Checkbox
|
||||||
|
*
|
||||||
|
*---------------------------------------------------------------------------------------------*/
|
||||||
|
.acf-checkbox-list .button {
|
||||||
|
margin: 10px 0 0;
|
||||||
|
}
|
||||||
|
/*---------------------------------------------------------------------------------------------
|
||||||
|
*
|
||||||
|
* True / False
|
||||||
|
*
|
||||||
|
*---------------------------------------------------------------------------------------------*/
|
||||||
|
.acf-switch {
|
||||||
|
display: inline-block;
|
||||||
|
border-radius: 5px;
|
||||||
|
cursor: pointer;
|
||||||
|
position: relative;
|
||||||
|
background: #f1f1f1;
|
||||||
|
height: 30px;
|
||||||
|
vertical-align: middle;
|
||||||
|
box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.1);
|
||||||
|
-webkit-transition: background 0.25s ease;
|
||||||
|
-moz-transition: background 0.25s ease;
|
||||||
|
-o-transition: background 0.25s ease;
|
||||||
|
transition: background 0.25s ease;
|
||||||
|
/* hover */
|
||||||
|
/* active */
|
||||||
|
/* message */
|
||||||
|
}
|
||||||
|
.acf-switch span {
|
||||||
|
display: inline-block;
|
||||||
|
float: left;
|
||||||
|
text-align: center;
|
||||||
|
font-size: 13px;
|
||||||
|
line-height: 22px;
|
||||||
|
padding: 4px 10px;
|
||||||
|
min-width: 15px;
|
||||||
|
}
|
||||||
|
.acf-switch span i {
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
.acf-switch .acf-switch-on {
|
||||||
|
color: #fff;
|
||||||
|
text-shadow: #1f7db1 0 1px 0;
|
||||||
|
}
|
||||||
|
.acf-switch .acf-switch-slider {
|
||||||
|
position: absolute;
|
||||||
|
top: 3px;
|
||||||
|
left: 3px;
|
||||||
|
bottom: 3px;
|
||||||
|
right: 50%;
|
||||||
|
z-index: 1;
|
||||||
|
background: #fff;
|
||||||
|
border-radius: 3px;
|
||||||
|
border: #ccc solid 1px;
|
||||||
|
-webkit-transition: all 0.25s ease;
|
||||||
|
-moz-transition: all 0.25s ease;
|
||||||
|
-o-transition: all 0.25s ease;
|
||||||
|
transition: all 0.25s ease;
|
||||||
|
}
|
||||||
|
.acf-switch:hover {
|
||||||
|
background: #eeeeee;
|
||||||
|
}
|
||||||
|
.acf-switch.-on {
|
||||||
|
background: #2a9bd9;
|
||||||
|
}
|
||||||
|
.acf-switch.-on .acf-switch-slider {
|
||||||
|
left: 50%;
|
||||||
|
right: 3px;
|
||||||
|
border-color: #1f7db1;
|
||||||
|
}
|
||||||
|
.acf-switch + span {
|
||||||
|
margin-left: 6px;
|
||||||
|
}
|
||||||
|
/*
|
||||||
|
.acf-field[data-name="alt"] .acf-switch {
|
||||||
|
background: #fff;
|
||||||
|
border: #dddddd solid 1px;
|
||||||
|
height: 30px;
|
||||||
|
|
||||||
|
span {
|
||||||
|
padding: 3px 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.acf-switch-slider {
|
||||||
|
background: #f9f9f9;
|
||||||
|
border: #bbbbbb solid 1px;
|
||||||
|
box-shadow: none;
|
||||||
|
margin: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
&.-on {
|
||||||
|
border-color: #2c91fc;
|
||||||
|
background: @acf_blue_input2;
|
||||||
|
|
||||||
|
.acf-switch-slider {
|
||||||
|
background: #fff;
|
||||||
|
border-color: darken(@acf_blue_input2, 20%);
|
||||||
|
margin-left: -4px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
*/
|
||||||
/*--------------------------------------------------------------------------
|
/*--------------------------------------------------------------------------
|
||||||
*
|
*
|
||||||
* Google Map
|
* Google Map
|
||||||
|
|
@ -870,6 +987,20 @@ html[dir="rtl"] .acf-relationship .selection .values .acf-icon {
|
||||||
* WYSIWYG
|
* WYSIWYG
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------*/
|
*-------------------------------------------------------------------------*/
|
||||||
|
.acf-editor-wrap {
|
||||||
|
/* delay */
|
||||||
|
}
|
||||||
|
.acf-editor-wrap.delay .acf-editor-toolbar {
|
||||||
|
content: "";
|
||||||
|
display: block;
|
||||||
|
background: #f5f5f5;
|
||||||
|
border-bottom: #dddddd solid 1px;
|
||||||
|
color: #555d66;
|
||||||
|
padding: 10px;
|
||||||
|
}
|
||||||
|
.acf-editor-wrap.delay textarea {
|
||||||
|
padding: 10px;
|
||||||
|
}
|
||||||
.acf-editor-wrap iframe {
|
.acf-editor-wrap iframe {
|
||||||
min-height: 200px;
|
min-height: 200px;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 613 B After Width: | Height: | Size: 613 B |
|
Before Width: | Height: | Size: 845 B After Width: | Height: | Size: 845 B |
|
|
@ -0,0 +1,431 @@
|
||||||
|
.select2-container {
|
||||||
|
box-sizing: border-box;
|
||||||
|
display: inline-block;
|
||||||
|
margin: 0;
|
||||||
|
position: relative;
|
||||||
|
vertical-align: middle; }
|
||||||
|
.select2-container .select2-selection--single {
|
||||||
|
box-sizing: border-box;
|
||||||
|
cursor: pointer;
|
||||||
|
display: block;
|
||||||
|
height: 28px;
|
||||||
|
user-select: none;
|
||||||
|
-webkit-user-select: none; }
|
||||||
|
.select2-container .select2-selection--single .select2-selection__rendered {
|
||||||
|
display: block;
|
||||||
|
padding-left: 8px;
|
||||||
|
padding-right: 20px;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
white-space: nowrap; }
|
||||||
|
.select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered {
|
||||||
|
padding-right: 8px;
|
||||||
|
padding-left: 20px; }
|
||||||
|
.select2-container .select2-selection--multiple {
|
||||||
|
box-sizing: border-box;
|
||||||
|
cursor: pointer;
|
||||||
|
display: block;
|
||||||
|
min-height: 32px;
|
||||||
|
user-select: none;
|
||||||
|
-webkit-user-select: none; }
|
||||||
|
.select2-container .select2-selection--multiple .select2-selection__rendered {
|
||||||
|
display: inline-block;
|
||||||
|
overflow: hidden;
|
||||||
|
padding-left: 8px;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
white-space: nowrap; }
|
||||||
|
.select2-container .select2-search--inline {
|
||||||
|
float: left; }
|
||||||
|
.select2-container .select2-search--inline .select2-search__field {
|
||||||
|
box-sizing: border-box;
|
||||||
|
border: none;
|
||||||
|
font-size: 100%;
|
||||||
|
margin-top: 5px; }
|
||||||
|
.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button {
|
||||||
|
-webkit-appearance: none; }
|
||||||
|
|
||||||
|
.select2-dropdown {
|
||||||
|
background-color: white;
|
||||||
|
border: 1px solid #aaa;
|
||||||
|
border-radius: 4px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
display: block;
|
||||||
|
position: absolute;
|
||||||
|
left: -100000px;
|
||||||
|
width: 100%;
|
||||||
|
z-index: 1051; }
|
||||||
|
|
||||||
|
.select2-results {
|
||||||
|
display: block; }
|
||||||
|
|
||||||
|
.select2-results__options {
|
||||||
|
list-style: none;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0; }
|
||||||
|
|
||||||
|
.select2-results__option {
|
||||||
|
padding: 6px;
|
||||||
|
user-select: none;
|
||||||
|
-webkit-user-select: none; }
|
||||||
|
.select2-results__option[aria-selected] {
|
||||||
|
cursor: pointer; }
|
||||||
|
|
||||||
|
.select2-container--open .select2-dropdown {
|
||||||
|
left: 0; }
|
||||||
|
|
||||||
|
.select2-container--open .select2-dropdown--above {
|
||||||
|
border-bottom: none;
|
||||||
|
border-bottom-left-radius: 0;
|
||||||
|
border-bottom-right-radius: 0; }
|
||||||
|
|
||||||
|
.select2-container--open .select2-dropdown--below {
|
||||||
|
border-top: none;
|
||||||
|
border-top-left-radius: 0;
|
||||||
|
border-top-right-radius: 0; }
|
||||||
|
|
||||||
|
.select2-search--dropdown {
|
||||||
|
display: block;
|
||||||
|
padding: 4px; }
|
||||||
|
.select2-search--dropdown .select2-search__field {
|
||||||
|
padding: 4px;
|
||||||
|
width: 100%;
|
||||||
|
box-sizing: border-box; }
|
||||||
|
.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button {
|
||||||
|
-webkit-appearance: none; }
|
||||||
|
.select2-search--dropdown.select2-search--hide {
|
||||||
|
display: none; }
|
||||||
|
|
||||||
|
.select2-close-mask {
|
||||||
|
border: 0;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
display: block;
|
||||||
|
position: fixed;
|
||||||
|
left: 0;
|
||||||
|
top: 0;
|
||||||
|
min-height: 100%;
|
||||||
|
min-width: 100%;
|
||||||
|
height: auto;
|
||||||
|
width: auto;
|
||||||
|
opacity: 0;
|
||||||
|
z-index: 99;
|
||||||
|
background-color: #fff;
|
||||||
|
filter: alpha(opacity=0); }
|
||||||
|
|
||||||
|
.select2-hidden-accessible {
|
||||||
|
border: 0;
|
||||||
|
clip: rect(0 0 0 0);
|
||||||
|
height: 1px;
|
||||||
|
margin: -1px;
|
||||||
|
overflow: hidden;
|
||||||
|
padding: 0;
|
||||||
|
position: absolute;
|
||||||
|
width: 1px; }
|
||||||
|
|
||||||
|
.select2-container--default .select2-selection--single {
|
||||||
|
background-color: #fff;
|
||||||
|
border: 1px solid #aaa;
|
||||||
|
border-radius: 4px; }
|
||||||
|
.select2-container--default .select2-selection--single .select2-selection__rendered {
|
||||||
|
color: #444;
|
||||||
|
line-height: 28px; }
|
||||||
|
.select2-container--default .select2-selection--single .select2-selection__clear {
|
||||||
|
cursor: pointer;
|
||||||
|
float: right;
|
||||||
|
font-weight: bold; }
|
||||||
|
.select2-container--default .select2-selection--single .select2-selection__placeholder {
|
||||||
|
color: #999; }
|
||||||
|
.select2-container--default .select2-selection--single .select2-selection__arrow {
|
||||||
|
height: 26px;
|
||||||
|
position: absolute;
|
||||||
|
top: 1px;
|
||||||
|
right: 1px;
|
||||||
|
width: 20px; }
|
||||||
|
.select2-container--default .select2-selection--single .select2-selection__arrow b {
|
||||||
|
border-color: #888 transparent transparent transparent;
|
||||||
|
border-style: solid;
|
||||||
|
border-width: 5px 4px 0 4px;
|
||||||
|
height: 0;
|
||||||
|
left: 50%;
|
||||||
|
margin-left: -4px;
|
||||||
|
margin-top: -2px;
|
||||||
|
position: absolute;
|
||||||
|
top: 50%;
|
||||||
|
width: 0; }
|
||||||
|
.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__clear {
|
||||||
|
float: left; }
|
||||||
|
.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__arrow {
|
||||||
|
left: 1px;
|
||||||
|
right: auto; }
|
||||||
|
.select2-container--default.select2-container--disabled .select2-selection--single {
|
||||||
|
background-color: #eee;
|
||||||
|
cursor: default; }
|
||||||
|
.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear {
|
||||||
|
display: none; }
|
||||||
|
.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
|
||||||
|
border-color: transparent transparent #888 transparent;
|
||||||
|
border-width: 0 4px 5px 4px; }
|
||||||
|
.select2-container--default .select2-selection--multiple {
|
||||||
|
background-color: white;
|
||||||
|
border: 1px solid #aaa;
|
||||||
|
border-radius: 4px;
|
||||||
|
cursor: text; }
|
||||||
|
.select2-container--default .select2-selection--multiple .select2-selection__rendered {
|
||||||
|
box-sizing: border-box;
|
||||||
|
list-style: none;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0 5px;
|
||||||
|
width: 100%; }
|
||||||
|
.select2-container--default .select2-selection--multiple .select2-selection__placeholder {
|
||||||
|
color: #999;
|
||||||
|
margin-top: 5px;
|
||||||
|
float: left; }
|
||||||
|
.select2-container--default .select2-selection--multiple .select2-selection__clear {
|
||||||
|
cursor: pointer;
|
||||||
|
float: right;
|
||||||
|
font-weight: bold;
|
||||||
|
margin-top: 5px;
|
||||||
|
margin-right: 10px; }
|
||||||
|
.select2-container--default .select2-selection--multiple .select2-selection__choice {
|
||||||
|
background-color: #e4e4e4;
|
||||||
|
border: 1px solid #aaa;
|
||||||
|
border-radius: 4px;
|
||||||
|
cursor: default;
|
||||||
|
float: left;
|
||||||
|
margin-right: 5px;
|
||||||
|
margin-top: 5px;
|
||||||
|
padding: 0 5px; }
|
||||||
|
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
|
||||||
|
color: #999;
|
||||||
|
cursor: pointer;
|
||||||
|
display: inline-block;
|
||||||
|
font-weight: bold;
|
||||||
|
margin-right: 2px; }
|
||||||
|
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
|
||||||
|
color: #333; }
|
||||||
|
.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice, .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__placeholder {
|
||||||
|
float: right; }
|
||||||
|
.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
|
||||||
|
margin-left: 5px;
|
||||||
|
margin-right: auto; }
|
||||||
|
.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
|
||||||
|
margin-left: 2px;
|
||||||
|
margin-right: auto; }
|
||||||
|
.select2-container--default.select2-container--focus .select2-selection--multiple {
|
||||||
|
border: solid black 1px;
|
||||||
|
outline: 0; }
|
||||||
|
.select2-container--default.select2-container--disabled .select2-selection--multiple {
|
||||||
|
background-color: #eee;
|
||||||
|
cursor: default; }
|
||||||
|
.select2-container--default.select2-container--disabled .select2-selection__choice__remove {
|
||||||
|
display: none; }
|
||||||
|
.select2-container--default.select2-container--open.select2-container--above .select2-selection--single, .select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple {
|
||||||
|
border-top-left-radius: 0;
|
||||||
|
border-top-right-radius: 0; }
|
||||||
|
.select2-container--default.select2-container--open.select2-container--below .select2-selection--single, .select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple {
|
||||||
|
border-bottom-left-radius: 0;
|
||||||
|
border-bottom-right-radius: 0; }
|
||||||
|
.select2-container--default .select2-search--dropdown .select2-search__field {
|
||||||
|
border: 1px solid #aaa; }
|
||||||
|
.select2-container--default .select2-search--inline .select2-search__field {
|
||||||
|
background: transparent;
|
||||||
|
border: none;
|
||||||
|
outline: 0; }
|
||||||
|
.select2-container--default .select2-results > .select2-results__options {
|
||||||
|
max-height: 200px;
|
||||||
|
overflow-y: auto; }
|
||||||
|
.select2-container--default .select2-results__option[role=group] {
|
||||||
|
padding: 0; }
|
||||||
|
.select2-container--default .select2-results__option[aria-disabled=true] {
|
||||||
|
color: #999; }
|
||||||
|
.select2-container--default .select2-results__option[aria-selected=true] {
|
||||||
|
background-color: #ddd; }
|
||||||
|
.select2-container--default .select2-results__option .select2-results__option {
|
||||||
|
padding-left: 1em; }
|
||||||
|
.select2-container--default .select2-results__option .select2-results__option .select2-results__group {
|
||||||
|
padding-left: 0; }
|
||||||
|
.select2-container--default .select2-results__option .select2-results__option .select2-results__option {
|
||||||
|
margin-left: -1em;
|
||||||
|
padding-left: 2em; }
|
||||||
|
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
|
||||||
|
margin-left: -2em;
|
||||||
|
padding-left: 3em; }
|
||||||
|
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
|
||||||
|
margin-left: -3em;
|
||||||
|
padding-left: 4em; }
|
||||||
|
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
|
||||||
|
margin-left: -4em;
|
||||||
|
padding-left: 5em; }
|
||||||
|
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
|
||||||
|
margin-left: -5em;
|
||||||
|
padding-left: 6em; }
|
||||||
|
.select2-container--default .select2-results__option--highlighted[aria-selected] {
|
||||||
|
background-color: #5897fb;
|
||||||
|
color: white; }
|
||||||
|
.select2-container--default .select2-results__group {
|
||||||
|
cursor: default;
|
||||||
|
display: block;
|
||||||
|
padding: 6px; }
|
||||||
|
|
||||||
|
.select2-container--classic .select2-selection--single {
|
||||||
|
background-color: #f6f6f6;
|
||||||
|
border: 1px solid #aaa;
|
||||||
|
border-radius: 4px;
|
||||||
|
outline: 0;
|
||||||
|
background-image: -webkit-linear-gradient(top, #ffffff 50%, #eeeeee 100%);
|
||||||
|
background-image: -o-linear-gradient(top, #ffffff 50%, #eeeeee 100%);
|
||||||
|
background-image: linear-gradient(to bottom, #ffffff 50%, #eeeeee 100%);
|
||||||
|
background-repeat: repeat-x;
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#eeeeee', GradientType=0); }
|
||||||
|
.select2-container--classic .select2-selection--single:focus {
|
||||||
|
border: 1px solid #5897fb; }
|
||||||
|
.select2-container--classic .select2-selection--single .select2-selection__rendered {
|
||||||
|
color: #444;
|
||||||
|
line-height: 28px; }
|
||||||
|
.select2-container--classic .select2-selection--single .select2-selection__clear {
|
||||||
|
cursor: pointer;
|
||||||
|
float: right;
|
||||||
|
font-weight: bold;
|
||||||
|
margin-right: 10px; }
|
||||||
|
.select2-container--classic .select2-selection--single .select2-selection__placeholder {
|
||||||
|
color: #999; }
|
||||||
|
.select2-container--classic .select2-selection--single .select2-selection__arrow {
|
||||||
|
background-color: #ddd;
|
||||||
|
border: none;
|
||||||
|
border-left: 1px solid #aaa;
|
||||||
|
border-top-right-radius: 4px;
|
||||||
|
border-bottom-right-radius: 4px;
|
||||||
|
height: 26px;
|
||||||
|
position: absolute;
|
||||||
|
top: 1px;
|
||||||
|
right: 1px;
|
||||||
|
width: 20px;
|
||||||
|
background-image: -webkit-linear-gradient(top, #eeeeee 50%, #cccccc 100%);
|
||||||
|
background-image: -o-linear-gradient(top, #eeeeee 50%, #cccccc 100%);
|
||||||
|
background-image: linear-gradient(to bottom, #eeeeee 50%, #cccccc 100%);
|
||||||
|
background-repeat: repeat-x;
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#cccccc', GradientType=0); }
|
||||||
|
.select2-container--classic .select2-selection--single .select2-selection__arrow b {
|
||||||
|
border-color: #888 transparent transparent transparent;
|
||||||
|
border-style: solid;
|
||||||
|
border-width: 5px 4px 0 4px;
|
||||||
|
height: 0;
|
||||||
|
left: 50%;
|
||||||
|
margin-left: -4px;
|
||||||
|
margin-top: -2px;
|
||||||
|
position: absolute;
|
||||||
|
top: 50%;
|
||||||
|
width: 0; }
|
||||||
|
.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__clear {
|
||||||
|
float: left; }
|
||||||
|
.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__arrow {
|
||||||
|
border: none;
|
||||||
|
border-right: 1px solid #aaa;
|
||||||
|
border-radius: 0;
|
||||||
|
border-top-left-radius: 4px;
|
||||||
|
border-bottom-left-radius: 4px;
|
||||||
|
left: 1px;
|
||||||
|
right: auto; }
|
||||||
|
.select2-container--classic.select2-container--open .select2-selection--single {
|
||||||
|
border: 1px solid #5897fb; }
|
||||||
|
.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow {
|
||||||
|
background: transparent;
|
||||||
|
border: none; }
|
||||||
|
.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b {
|
||||||
|
border-color: transparent transparent #888 transparent;
|
||||||
|
border-width: 0 4px 5px 4px; }
|
||||||
|
.select2-container--classic.select2-container--open.select2-container--above .select2-selection--single {
|
||||||
|
border-top: none;
|
||||||
|
border-top-left-radius: 0;
|
||||||
|
border-top-right-radius: 0;
|
||||||
|
background-image: -webkit-linear-gradient(top, #ffffff 0%, #eeeeee 50%);
|
||||||
|
background-image: -o-linear-gradient(top, #ffffff 0%, #eeeeee 50%);
|
||||||
|
background-image: linear-gradient(to bottom, #ffffff 0%, #eeeeee 50%);
|
||||||
|
background-repeat: repeat-x;
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#eeeeee', GradientType=0); }
|
||||||
|
.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single {
|
||||||
|
border-bottom: none;
|
||||||
|
border-bottom-left-radius: 0;
|
||||||
|
border-bottom-right-radius: 0;
|
||||||
|
background-image: -webkit-linear-gradient(top, #eeeeee 50%, #ffffff 100%);
|
||||||
|
background-image: -o-linear-gradient(top, #eeeeee 50%, #ffffff 100%);
|
||||||
|
background-image: linear-gradient(to bottom, #eeeeee 50%, #ffffff 100%);
|
||||||
|
background-repeat: repeat-x;
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#ffffff', GradientType=0); }
|
||||||
|
.select2-container--classic .select2-selection--multiple {
|
||||||
|
background-color: white;
|
||||||
|
border: 1px solid #aaa;
|
||||||
|
border-radius: 4px;
|
||||||
|
cursor: text;
|
||||||
|
outline: 0; }
|
||||||
|
.select2-container--classic .select2-selection--multiple:focus {
|
||||||
|
border: 1px solid #5897fb; }
|
||||||
|
.select2-container--classic .select2-selection--multiple .select2-selection__rendered {
|
||||||
|
list-style: none;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0 5px; }
|
||||||
|
.select2-container--classic .select2-selection--multiple .select2-selection__clear {
|
||||||
|
display: none; }
|
||||||
|
.select2-container--classic .select2-selection--multiple .select2-selection__choice {
|
||||||
|
background-color: #e4e4e4;
|
||||||
|
border: 1px solid #aaa;
|
||||||
|
border-radius: 4px;
|
||||||
|
cursor: default;
|
||||||
|
float: left;
|
||||||
|
margin-right: 5px;
|
||||||
|
margin-top: 5px;
|
||||||
|
padding: 0 5px; }
|
||||||
|
.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove {
|
||||||
|
color: #888;
|
||||||
|
cursor: pointer;
|
||||||
|
display: inline-block;
|
||||||
|
font-weight: bold;
|
||||||
|
margin-right: 2px; }
|
||||||
|
.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover {
|
||||||
|
color: #555; }
|
||||||
|
.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
|
||||||
|
float: right; }
|
||||||
|
.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
|
||||||
|
margin-left: 5px;
|
||||||
|
margin-right: auto; }
|
||||||
|
.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
|
||||||
|
margin-left: 2px;
|
||||||
|
margin-right: auto; }
|
||||||
|
.select2-container--classic.select2-container--open .select2-selection--multiple {
|
||||||
|
border: 1px solid #5897fb; }
|
||||||
|
.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple {
|
||||||
|
border-top: none;
|
||||||
|
border-top-left-radius: 0;
|
||||||
|
border-top-right-radius: 0; }
|
||||||
|
.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple {
|
||||||
|
border-bottom: none;
|
||||||
|
border-bottom-left-radius: 0;
|
||||||
|
border-bottom-right-radius: 0; }
|
||||||
|
.select2-container--classic .select2-search--dropdown .select2-search__field {
|
||||||
|
border: 1px solid #aaa;
|
||||||
|
outline: 0; }
|
||||||
|
.select2-container--classic .select2-search--inline .select2-search__field {
|
||||||
|
outline: 0; }
|
||||||
|
.select2-container--classic .select2-dropdown {
|
||||||
|
background-color: white;
|
||||||
|
border: 1px solid transparent; }
|
||||||
|
.select2-container--classic .select2-dropdown--above {
|
||||||
|
border-bottom: none; }
|
||||||
|
.select2-container--classic .select2-dropdown--below {
|
||||||
|
border-top: none; }
|
||||||
|
.select2-container--classic .select2-results > .select2-results__options {
|
||||||
|
max-height: 200px;
|
||||||
|
overflow-y: auto; }
|
||||||
|
.select2-container--classic .select2-results__option[role=group] {
|
||||||
|
padding: 0; }
|
||||||
|
.select2-container--classic .select2-results__option[aria-disabled=true] {
|
||||||
|
color: grey; }
|
||||||
|
.select2-container--classic .select2-results__option--highlighted[aria-selected] {
|
||||||
|
background-color: #3875d7;
|
||||||
|
color: white; }
|
||||||
|
.select2-container--classic .select2-results__group {
|
||||||
|
cursor: default;
|
||||||
|
display: block;
|
||||||
|
padding: 6px; }
|
||||||
|
.select2-container--classic.select2-container--open .select2-dropdown {
|
||||||
|
border-color: #5897fb; }
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
|
|
@ -29,6 +29,7 @@ class acf_compatibility {
|
||||||
add_filter('acf/get_valid_field/type=date_picker', array($this, 'get_valid_date_picker_field'), 20, 1);
|
add_filter('acf/get_valid_field/type=date_picker', array($this, 'get_valid_date_picker_field'), 20, 1);
|
||||||
add_filter('acf/get_valid_field/type=taxonomy', array($this, 'get_valid_taxonomy_field'), 20, 1);
|
add_filter('acf/get_valid_field/type=taxonomy', array($this, 'get_valid_taxonomy_field'), 20, 1);
|
||||||
add_filter('acf/get_valid_field/type=date_time_picker', array($this, 'get_valid_date_time_picker_field'), 20, 1);
|
add_filter('acf/get_valid_field/type=date_time_picker', array($this, 'get_valid_date_time_picker_field'), 20, 1);
|
||||||
|
add_filter('acf/get_valid_field/type=user', array($this, 'get_valid_user_field'), 20, 1);
|
||||||
|
|
||||||
|
|
||||||
// field groups
|
// field groups
|
||||||
|
|
@ -333,13 +334,17 @@ class acf_compatibility {
|
||||||
|
|
||||||
|
|
||||||
// convert from js to php
|
// convert from js to php
|
||||||
$date_format = acf_convert_date_to_php( $date_format );
|
//$date_format = acf_convert_date_to_php( $date_format );
|
||||||
$display_format = acf_convert_date_to_php( $display_format );
|
$display_format = acf_convert_date_to_php( $display_format );
|
||||||
|
|
||||||
|
|
||||||
|
// bail early if already matches 'Ymd'
|
||||||
|
if( $date_format === 'yymmdd' ) return $field;
|
||||||
|
|
||||||
|
|
||||||
// append settings
|
// append settings
|
||||||
$field['return_format'] = $date_format;
|
|
||||||
$field['display_format'] = $display_format;
|
$field['display_format'] = $display_format;
|
||||||
|
$field['save_format'] = $date_format;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -430,6 +435,51 @@ class acf_compatibility {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* get_valid_user_field
|
||||||
|
*
|
||||||
|
* This function will provide compatibility with ACF4 fields
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 23/04/2014
|
||||||
|
* @since 5.0.0
|
||||||
|
*
|
||||||
|
* @param $field (array)
|
||||||
|
* @return $field
|
||||||
|
*/
|
||||||
|
|
||||||
|
function get_valid_user_field( $field ) {
|
||||||
|
|
||||||
|
// remove 'all' from roles
|
||||||
|
if( acf_in_array('all', $field['role']) ) {
|
||||||
|
|
||||||
|
$field['role'] = '';
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// field_type removed in favour of multiple
|
||||||
|
if( !empty($field['field_type']) ) {
|
||||||
|
|
||||||
|
// extract vars
|
||||||
|
$field_type = acf_extract_var( $field, 'field_type' );
|
||||||
|
|
||||||
|
|
||||||
|
// multiple
|
||||||
|
if( $field_type === 'multi_select' ) {
|
||||||
|
|
||||||
|
$field['multiple'] = true;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// return
|
||||||
|
return $field;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* get_valid_field_group
|
* get_valid_field_group
|
||||||
*
|
*
|
||||||
|
|
|
||||||
287
core/field.php
287
core/field.php
|
|
@ -1,12 +1,16 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
if( ! class_exists('acf_field') ) :
|
||||||
|
|
||||||
class acf_field {
|
class acf_field {
|
||||||
|
|
||||||
var $name,
|
// vars
|
||||||
$title,
|
var $name = '',
|
||||||
$category,
|
$label = '',
|
||||||
$defaults,
|
$category = 'basic',
|
||||||
$l10n;
|
$defaults = array(),
|
||||||
|
$l10n = array(),
|
||||||
|
$public = true;
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
@ -24,42 +28,43 @@ class acf_field {
|
||||||
|
|
||||||
function __construct() {
|
function __construct() {
|
||||||
|
|
||||||
// register field
|
// info
|
||||||
add_filter("acf/get_field_types", array($this, 'get_field_types'), 10, 1);
|
$this->add_filter('acf/get_field_types', array($this, 'get_field_types'), 10, 1);
|
||||||
add_filter("acf/get_valid_field/type={$this->name}", array($this, 'get_valid_field'), 10, 1);
|
|
||||||
|
|
||||||
|
|
||||||
// value
|
// value
|
||||||
$this->add_filter("acf/load_value/type={$this->name}", array($this, 'load_value'), 10, 3);
|
$this->add_field_filter('acf/load_value', array($this, 'load_value'), 10, 3);
|
||||||
$this->add_filter("acf/update_value/type={$this->name}", array($this, 'update_value'), 10, 3);
|
$this->add_field_filter('acf/update_value', array($this, 'update_value'), 10, 3);
|
||||||
$this->add_filter("acf/format_value/type={$this->name}", array($this, 'format_value'), 10, 3);
|
$this->add_field_filter('acf/format_value', array($this, 'format_value'), 10, 3);
|
||||||
$this->add_filter("acf/validate_value/type={$this->name}", array($this, 'validate_value'), 10, 4);
|
$this->add_field_filter('acf/validate_value', array($this, 'validate_value'), 10, 4);
|
||||||
$this->add_action("acf/delete_value/type={$this->name}", array($this, 'delete_value'), 10, 3);
|
$this->add_field_action('acf/delete_value', array($this, 'delete_value'), 10, 3);
|
||||||
|
|
||||||
|
|
||||||
// field
|
// field
|
||||||
$this->add_filter("acf/load_field/type={$this->name}", array($this, 'load_field'), 10, 1);
|
$this->add_field_filter('acf/get_valid_field', array($this, 'get_valid_field'), 10, 1);
|
||||||
$this->add_filter("acf/update_field/type={$this->name}", array($this, 'update_field'), 10, 1);
|
$this->add_field_filter('acf/load_field', array($this, 'load_field'), 10, 1);
|
||||||
$this->add_filter("acf/duplicate_field/type={$this->name}", array($this, 'duplicate_field'), 10, 1);
|
$this->add_field_filter('acf/update_field', array($this, 'update_field'), 10, 1);
|
||||||
$this->add_action("acf/delete_field/type={$this->name}", array($this, 'delete_field'), 10, 1);
|
$this->add_field_filter('acf/duplicate_field', array($this, 'duplicate_field'), 10, 1);
|
||||||
$this->add_action("acf/render_field/type={$this->name}", array($this, 'render_field'), 10, 1);
|
$this->add_field_action('acf/delete_field', array($this, 'delete_field'), 10, 1);
|
||||||
$this->add_action("acf/render_field_settings/type={$this->name}", array($this, 'render_field_settings'), 10, 1);
|
$this->add_field_action('acf/render_field', array($this, 'render_field'), 9, 1);
|
||||||
$this->add_action("acf/prepare_field/type={$this->name}", array($this, 'prepare_field'), 10, 1);
|
$this->add_field_action('acf/render_field_settings', array($this, 'render_field_settings'), 9, 1);
|
||||||
$this->add_action("acf/translate_field/type={$this->name}", array($this, 'translate_field'), 10, 1);
|
$this->add_field_filter('acf/prepare_field', array($this, 'prepare_field'), 10, 1);
|
||||||
|
$this->add_field_filter('acf/translate_field', array($this, 'translate_field'), 10, 1);
|
||||||
|
|
||||||
|
|
||||||
// input actions
|
// input actions
|
||||||
$this->add_action("acf/input/admin_enqueue_scripts", array($this, 'input_admin_enqueue_scripts'), 10, 0);
|
$this->add_action("acf/input/admin_enqueue_scripts", array($this, 'input_admin_enqueue_scripts'), 10, 0);
|
||||||
$this->add_action("acf/input/admin_head", array($this, 'input_admin_head'), 10, 0);
|
$this->add_action("acf/input/admin_head", array($this, 'input_admin_head'), 10, 0);
|
||||||
$this->add_action("acf/input/form_data", array($this, 'input_form_data'), 10, 1);
|
$this->add_action("acf/input/form_data", array($this, 'input_form_data'), 10, 1);
|
||||||
$this->add_filter("acf/input/admin_l10n", array($this, 'input_admin_l10n'), 10, 1);
|
$this->add_filter("acf/input/admin_l10n", array($this, 'input_admin_l10n'), 10, 1);
|
||||||
$this->add_action("acf/input/admin_footer", array($this, 'input_admin_footer'), 10, 1);
|
$this->add_action("acf/input/admin_footer", array($this, 'input_admin_footer'), 10, 1);
|
||||||
|
|
||||||
|
|
||||||
// field group actions
|
// field group actions
|
||||||
$this->add_action("acf/field_group/admin_enqueue_scripts", array($this, 'field_group_admin_enqueue_scripts'), 10, 0);
|
$this->add_action("acf/field_group/admin_enqueue_scripts", array($this, 'field_group_admin_enqueue_scripts'), 10, 0);
|
||||||
$this->add_action("acf/field_group/admin_head", array($this, 'field_group_admin_head'), 10, 0);
|
$this->add_action("acf/field_group/admin_head", array($this, 'field_group_admin_head'), 10, 0);
|
||||||
$this->add_action("acf/field_group/admin_footer", array($this, 'field_group_admin_footer'), 10, 0);
|
$this->add_action("acf/field_group/admin_footer", array($this, 'field_group_admin_footer'), 10, 0);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -188,42 +193,20 @@ class acf_field {
|
||||||
* @return $fields
|
* @return $fields
|
||||||
*/
|
*/
|
||||||
|
|
||||||
function get_field_types( $fields ) {
|
function get_field_types( $types ) {
|
||||||
|
|
||||||
$l10n = array(
|
// append
|
||||||
'basic' => __('Basic', 'acf'),
|
$types[ $this->name ] = array(
|
||||||
'content' => __('Content', 'acf'),
|
'label' => $this->label,
|
||||||
'choice' => __('Choice', 'acf'),
|
'name' => $this->name,
|
||||||
'relational' => __('Relational', 'acf'),
|
'category' => $this->category,
|
||||||
'jquery' => __('jQuery', 'acf'),
|
'public' => $this->public
|
||||||
'layout' => __('Layout', 'acf'),
|
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
// defaults
|
// return
|
||||||
if( !$this->category )
|
return $types;
|
||||||
{
|
|
||||||
$this->category = 'basic';
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// cat
|
|
||||||
if( isset($l10n[ $this->category ]) )
|
|
||||||
{
|
|
||||||
$cat = $l10n[ $this->category ];
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$cat = $this->category;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// add to array
|
|
||||||
$fields[ $cat ][ $this->name ] = $this->label;
|
|
||||||
|
|
||||||
|
|
||||||
// return array
|
|
||||||
return $fields;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -242,18 +225,13 @@ class acf_field {
|
||||||
|
|
||||||
function get_valid_field( $field ) {
|
function get_valid_field( $field ) {
|
||||||
|
|
||||||
if( !empty($this->defaults) )
|
// bail early if no defaults
|
||||||
{
|
if( !is_array($this->defaults) ) return $field;
|
||||||
foreach( $this->defaults as $k => $v )
|
|
||||||
{
|
|
||||||
if( !isset($field[ $k ]) )
|
// merge in defaults
|
||||||
{
|
return array_merge($this->defaults, $field);
|
||||||
$field[ $k ] = $v;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return $field;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -272,14 +250,173 @@ class acf_field {
|
||||||
|
|
||||||
function input_admin_l10n( $l10n ) {
|
function input_admin_l10n( $l10n ) {
|
||||||
|
|
||||||
if( !empty($this->l10n) )
|
// bail early if no defaults
|
||||||
{
|
if( empty($this->l10n) ) return $l10n;
|
||||||
$l10n[ $this->name ] = $this->l10n;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
// append
|
||||||
|
$l10n[ $this->name ] = $this->l10n;
|
||||||
|
|
||||||
|
|
||||||
|
// return
|
||||||
return $l10n;
|
return $l10n;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
endif; // class_exists check
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* acf_get_field_types
|
||||||
|
*
|
||||||
|
* This function will return an array containing info about all field types
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 22/10/16
|
||||||
|
* @since 5.5.0
|
||||||
|
*
|
||||||
|
* @param n/a
|
||||||
|
* @return (array)
|
||||||
|
*/
|
||||||
|
|
||||||
|
function acf_get_field_types() {
|
||||||
|
|
||||||
|
// vars
|
||||||
|
$cache_key = 'acf_get_field_types';
|
||||||
|
|
||||||
|
|
||||||
|
// check cache
|
||||||
|
if( acf_isset_cache($cache_key) ) return acf_get_cache($cache_key);
|
||||||
|
|
||||||
|
|
||||||
|
// get types
|
||||||
|
$types = apply_filters('acf/get_field_types', array());
|
||||||
|
|
||||||
|
|
||||||
|
// update cache
|
||||||
|
acf_set_cache($cache_key, $types);
|
||||||
|
|
||||||
|
|
||||||
|
// return
|
||||||
|
return $types;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* acf_get_grouped_field_types
|
||||||
|
*
|
||||||
|
* This function will return a grouped array of fields types (category => name)
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 1/10/13
|
||||||
|
* @since 5.0.0
|
||||||
|
*
|
||||||
|
* @param n/a
|
||||||
|
* @return (array)
|
||||||
|
*/
|
||||||
|
|
||||||
|
function acf_get_grouped_field_types() {
|
||||||
|
|
||||||
|
// vars
|
||||||
|
$types = array();
|
||||||
|
$l10n = array(
|
||||||
|
'basic' => __('Basic', 'acf'),
|
||||||
|
'content' => __('Content', 'acf'),
|
||||||
|
'choice' => __('Choice', 'acf'),
|
||||||
|
'relational' => __('Relational', 'acf'),
|
||||||
|
'jquery' => __('jQuery', 'acf'),
|
||||||
|
'layout' => __('Layout', 'acf'),
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// get field type information
|
||||||
|
$types_info = acf_get_field_types();
|
||||||
|
|
||||||
|
|
||||||
|
// loop
|
||||||
|
foreach( $types_info as $info ) {
|
||||||
|
|
||||||
|
// bail early if not public
|
||||||
|
if( !$info['public'] ) continue;
|
||||||
|
|
||||||
|
|
||||||
|
// vars
|
||||||
|
$cat = $info['category'];
|
||||||
|
|
||||||
|
|
||||||
|
// default to basic
|
||||||
|
if( !$cat ) $cat = 'basic';
|
||||||
|
|
||||||
|
|
||||||
|
// translate
|
||||||
|
$cat = isset($l10n[ $cat ]) ? $l10n[ $cat ] : $cat;
|
||||||
|
|
||||||
|
|
||||||
|
// append
|
||||||
|
$types[ $cat ][ $info['name'] ] = $info['label'];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// return
|
||||||
|
return $types;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* acf_get_field_type_label
|
||||||
|
*
|
||||||
|
* This function will return the label of a field type
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 1/10/13
|
||||||
|
* @since 5.0.0
|
||||||
|
*
|
||||||
|
* @param n/a
|
||||||
|
* @return (array)
|
||||||
|
*/
|
||||||
|
|
||||||
|
function acf_get_field_type_label( $type = '' ) {
|
||||||
|
|
||||||
|
// vars
|
||||||
|
$types = acf_get_field_types();
|
||||||
|
|
||||||
|
|
||||||
|
// bail early if doesn't exist
|
||||||
|
if( !isset($types[ $type ]) ) return '';
|
||||||
|
|
||||||
|
|
||||||
|
// return
|
||||||
|
return $types[ $type ]['label'];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* acf_field_type_exists
|
||||||
|
*
|
||||||
|
* This function will check if the field_type exists
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 1/10/13
|
||||||
|
* @since 5.0.0
|
||||||
|
*
|
||||||
|
* @param $type (string)
|
||||||
|
* @return (boolean)
|
||||||
|
*/
|
||||||
|
|
||||||
|
function acf_field_type_exists( $type = '' ) {
|
||||||
|
|
||||||
|
// vars
|
||||||
|
$types = acf_get_field_types();
|
||||||
|
|
||||||
|
|
||||||
|
// return
|
||||||
|
return isset($types[ $type ]);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -18,8 +18,9 @@ class acf_location {
|
||||||
function __construct() {
|
function __construct() {
|
||||||
|
|
||||||
// Post
|
// Post
|
||||||
add_filter( 'acf/location/rule_match/post_type', array($this, 'rule_match_post_type'), 10, 3 );
|
|
||||||
add_filter( 'acf/location/rule_match/post', array($this, 'rule_match_post'), 10, 3 );
|
add_filter( 'acf/location/rule_match/post', array($this, 'rule_match_post'), 10, 3 );
|
||||||
|
add_filter( 'acf/location/rule_match/post_type', array($this, 'rule_match_post_type'), 10, 3 );
|
||||||
|
add_filter( 'acf/location/rule_match/post_template', array($this, 'rule_match_post_template'), 10, 3 );
|
||||||
add_filter( 'acf/location/rule_match/post_category', array($this, 'rule_match_post_taxonomy'), 10, 3 );
|
add_filter( 'acf/location/rule_match/post_category', array($this, 'rule_match_post_taxonomy'), 10, 3 );
|
||||||
add_filter( 'acf/location/rule_match/post_format', array($this, 'rule_match_post_format'), 10, 3 );
|
add_filter( 'acf/location/rule_match/post_format', array($this, 'rule_match_post_format'), 10, 3 );
|
||||||
add_filter( 'acf/location/rule_match/post_status', array($this, 'rule_match_post_status'), 10, 3 );
|
add_filter( 'acf/location/rule_match/post_status', array($this, 'rule_match_post_status'), 10, 3 );
|
||||||
|
|
@ -47,7 +48,83 @@ class acf_location {
|
||||||
add_filter( 'acf/location/rule_match/widget', array($this, 'rule_match_widget'), 10, 3 );
|
add_filter( 'acf/location/rule_match/widget', array($this, 'rule_match_widget'), 10, 3 );
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* get_post_type
|
||||||
|
*
|
||||||
|
* This function will return the current post_type
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 25/11/16
|
||||||
|
* @since 5.5.0
|
||||||
|
*
|
||||||
|
* @param $options (int)
|
||||||
|
* @return (mixed)
|
||||||
|
*/
|
||||||
|
|
||||||
|
function get_post_type( $options ) {
|
||||||
|
|
||||||
|
// check options
|
||||||
|
// - allow acf_form() to exclude the post_id param and still work as expected
|
||||||
|
if( $options['post_type'] ) {
|
||||||
|
|
||||||
|
return $options['post_type'];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// get post type from post
|
||||||
|
if( $options['post_id'] ) {
|
||||||
|
|
||||||
|
return get_post_type( $options['post_id'] );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// return
|
||||||
|
return false;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* compare_value_to_rule
|
||||||
|
*
|
||||||
|
* This function will compare a value to a location rule and return a boolean result
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 25/11/16
|
||||||
|
* @since 5.5.0
|
||||||
|
*
|
||||||
|
* @param $value (mixed)
|
||||||
|
* @param rule (array)
|
||||||
|
* @return (boolean)
|
||||||
|
*/
|
||||||
|
|
||||||
|
function compare_value_to_rule( $value, $rule ) {
|
||||||
|
|
||||||
|
// match
|
||||||
|
$match = ( $value === $rule['value'] );
|
||||||
|
|
||||||
|
|
||||||
|
// override for "all"
|
||||||
|
if( $rule['value'] == 'all' ) $match = true;
|
||||||
|
|
||||||
|
|
||||||
|
// reverse if 'not equal to'
|
||||||
|
if( $rule['operator'] === '!=' ) {
|
||||||
|
|
||||||
|
$match = !$match;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// return
|
||||||
|
return $match;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* rule_match_post_type
|
* rule_match_post_type
|
||||||
|
|
@ -66,37 +143,81 @@ class acf_location {
|
||||||
function rule_match_post_type( $match, $rule, $options ) {
|
function rule_match_post_type( $match, $rule, $options ) {
|
||||||
|
|
||||||
// vars
|
// vars
|
||||||
// - allow acf_form to exclude the post_id param and still work as expected
|
$post_type = $this->get_post_type($options);
|
||||||
$post_type = $options['post_type'];
|
|
||||||
|
|
||||||
|
|
||||||
// find post type for current post
|
// bail early if no post_type found (not a post)
|
||||||
if( !$post_type ) {
|
if( !$post_type ) return false;
|
||||||
|
|
||||||
|
|
||||||
|
// match
|
||||||
|
return $this->compare_value_to_rule($post_type, $rule);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* rule_match_post_template
|
||||||
|
*
|
||||||
|
* This function will match a location rule and return true or false
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 25/11/16
|
||||||
|
* @since 5.5.0
|
||||||
|
*
|
||||||
|
* @param $match (boolean)
|
||||||
|
* @param $rule (array)
|
||||||
|
* @return $options (array)t)
|
||||||
|
*/
|
||||||
|
|
||||||
|
function rule_match_post_template( $match, $rule, $options ) {
|
||||||
|
|
||||||
|
// bail early if not a post
|
||||||
|
if( !$options['post_id'] ) return false;
|
||||||
|
|
||||||
|
|
||||||
|
// vars
|
||||||
|
$templates = array();
|
||||||
|
$post_type = get_post_type( $options['post_id'] );
|
||||||
|
$page_template = $options['page_template'];
|
||||||
|
|
||||||
|
|
||||||
|
// get templates (WP 4.7)
|
||||||
|
if( acf_version_compare('wp', '>=', '4.7') ) {
|
||||||
|
|
||||||
// bail early if not a post
|
$templates = wp_get_theme()->get_post_templates();
|
||||||
if( !$options['post_id'] ) return false;
|
|
||||||
|
|
||||||
|
|
||||||
// get post type
|
|
||||||
$post_type = get_post_type( $options['post_id'] );
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// compare
|
// 'page' is always a valid pt even if no templates exist in the theme
|
||||||
if( $rule['operator'] == "==" ) {
|
// allows scenario where page_template = 'default' and no templates exist
|
||||||
|
if( !isset($templates['page']) ) {
|
||||||
$match = ( $post_type === $rule['value'] );
|
|
||||||
|
$templates['page'] = array();
|
||||||
} elseif( $rule['operator'] == "!=" ) {
|
|
||||||
|
}
|
||||||
$match = ( $post_type !== $rule['value'] );
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// return
|
|
||||||
return $match;
|
// bail early if this post type does not allow for templates
|
||||||
|
if( !isset($templates[ $post_type ]) ) return false;
|
||||||
|
|
||||||
|
|
||||||
|
// get page template
|
||||||
|
if( !$page_template ) {
|
||||||
|
|
||||||
|
$page_template = get_post_meta( $options['post_id'], '_wp_page_template', true );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// new post - no page template
|
||||||
|
if( !$page_template ) $page_template = "default";
|
||||||
|
|
||||||
|
|
||||||
|
// match
|
||||||
|
return $this->compare_value_to_rule($page_template, $rule);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -688,51 +809,21 @@ class acf_location {
|
||||||
|
|
||||||
|
|
||||||
// vars
|
// vars
|
||||||
$page_template = $options['page_template'];
|
$post_type = get_post_type( $options['post_id'] );
|
||||||
|
|
||||||
|
|
||||||
// get page template
|
// page template 'default' rule is only for 'page' post type
|
||||||
if( !$page_template ) {
|
// prevents 'Default Template' field groups appearing on all post types that allow for post templates (WP 4.7)
|
||||||
|
if( $rule['value'] === 'default' ) {
|
||||||
$page_template = get_post_meta( $options['post_id'], '_wp_page_template', true );
|
|
||||||
|
// bail ealry if not page
|
||||||
|
if( $post_type !== 'page' ) return false;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// get page template again
|
// return
|
||||||
if( !$page_template ) {
|
return $this->rule_match_post_template( $match, $rule, $options );
|
||||||
|
|
||||||
$post_type = $options['post_type'];
|
|
||||||
|
|
||||||
if( !$post_type ) {
|
|
||||||
|
|
||||||
$post_type = get_post_type( $options['post_id'] );
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if( $post_type === 'page' ) {
|
|
||||||
|
|
||||||
$page_template = "default";
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// compare
|
|
||||||
if( $rule['operator'] == "==" ) {
|
|
||||||
|
|
||||||
$match = ( $page_template === $rule['value'] );
|
|
||||||
|
|
||||||
} elseif( $rule['operator'] == "!=" ) {
|
|
||||||
|
|
||||||
$match = ( $page_template !== $rule['value'] );
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// return
|
|
||||||
return $match;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -155,12 +155,8 @@ class acf_validation {
|
||||||
|
|
||||||
function ajax_validate_save_post() {
|
function ajax_validate_save_post() {
|
||||||
|
|
||||||
// bail early if _acfnonce is missing
|
// validate
|
||||||
if( !isset($_POST['_acfnonce']) ) {
|
if( !acf_verify_ajax() ) die();
|
||||||
|
|
||||||
wp_send_json_error();
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// vars
|
// vars
|
||||||
|
|
|
||||||
|
|
@ -43,8 +43,8 @@ class acf_wpml_compatibility {
|
||||||
|
|
||||||
|
|
||||||
// actions
|
// actions
|
||||||
add_action('acf/upgrade_start/5.0.0', array($this, 'upgrade_start_5'));
|
add_action('acf/update_500', array($this, 'update_500'), 10);
|
||||||
add_action('acf/upgrade_finish/5.0.0', array($this, 'upgrade_finish_5'));
|
add_action('acf/update_500_field_group', array($this, 'update_500_field_group'), 10, 2);
|
||||||
add_action('acf/update_field_group', array($this, 'update_field_group'), 2, 1);
|
add_action('acf/update_field_group', array($this, 'update_field_group'), 2, 1);
|
||||||
add_action('icl_make_duplicate', array($this, 'icl_make_duplicate'), 10, 4);
|
add_action('icl_make_duplicate', array($this, 'icl_make_duplicate'), 10, 4);
|
||||||
|
|
||||||
|
|
@ -102,9 +102,9 @@ class acf_wpml_compatibility {
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* upgrade_start_5
|
* update_500
|
||||||
*
|
*
|
||||||
* description
|
* This function will update the WPML settings to allow 'acf-field-group' to be translatable
|
||||||
*
|
*
|
||||||
* @type function
|
* @type function
|
||||||
* @date 10/04/2015
|
* @date 10/04/2015
|
||||||
|
|
@ -114,11 +114,7 @@ class acf_wpml_compatibility {
|
||||||
* @return $post_id (int)
|
* @return $post_id (int)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
function upgrade_start_5() {
|
function update_500() {
|
||||||
|
|
||||||
// actions
|
|
||||||
add_action('acf/update_field_group', array($this, 'update_field_group_5'), 1, 1);
|
|
||||||
|
|
||||||
|
|
||||||
// global
|
// global
|
||||||
global $sitepress, $sitepress_settings;
|
global $sitepress, $sitepress_settings;
|
||||||
|
|
@ -148,28 +144,7 @@ class acf_wpml_compatibility {
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* upgrade_finish
|
* update_500_field_group
|
||||||
*
|
|
||||||
* description
|
|
||||||
*
|
|
||||||
* @type function
|
|
||||||
* @date 10/04/2015
|
|
||||||
* @since 5.2.3
|
|
||||||
*
|
|
||||||
* @param $post_id (int)
|
|
||||||
* @return $post_id (int)
|
|
||||||
*/
|
|
||||||
|
|
||||||
function upgrade_finish_5() {
|
|
||||||
|
|
||||||
// actions
|
|
||||||
remove_action('acf/update_field_group', array($this, 'update_field_group_5'), 1, 1);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* update_field_group_5
|
|
||||||
*
|
*
|
||||||
* This function will update the icl_translations table data when creating the fiedl groups
|
* This function will update the icl_translations table data when creating the fiedl groups
|
||||||
*
|
*
|
||||||
|
|
@ -181,24 +156,16 @@ class acf_wpml_compatibility {
|
||||||
* @return n/a
|
* @return n/a
|
||||||
*/
|
*/
|
||||||
|
|
||||||
function update_field_group_5( $field_group ) {
|
function update_500_field_group($field_group, $ofg) {
|
||||||
|
|
||||||
// global
|
// global
|
||||||
global $wpdb, $sitepress;
|
global $wpdb, $sitepress;
|
||||||
|
|
||||||
|
|
||||||
// bail early if no old_ID (added to $field_group by upgrade 5.0.0)
|
|
||||||
if( empty($field_group['old_ID']) ) {
|
|
||||||
|
|
||||||
return;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// get translation rows (old acf4 and new acf5)
|
// get translation rows (old acf4 and new acf5)
|
||||||
$old_row = $wpdb->get_row($wpdb->prepare(
|
$old_row = $wpdb->get_row($wpdb->prepare(
|
||||||
"SELECT * FROM {$wpdb->prefix}icl_translations WHERE element_type=%s AND element_id=%d",
|
"SELECT * FROM {$wpdb->prefix}icl_translations WHERE element_type=%s AND element_id=%d",
|
||||||
'post_acf', $field_group['old_ID']
|
'post_acf', $ofg->ID
|
||||||
), ARRAY_A);
|
), ARRAY_A);
|
||||||
|
|
||||||
$new_row = $wpdb->get_row($wpdb->prepare(
|
$new_row = $wpdb->get_row($wpdb->prepare(
|
||||||
|
|
@ -422,10 +389,6 @@ class acf_wpml_compatibility {
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
(function($) {
|
(function($) {
|
||||||
|
|
||||||
// bail ealry if no lang
|
|
||||||
if( typeof icl_this_lang == 'undefined' ) return;
|
|
||||||
|
|
||||||
|
|
||||||
// add filter
|
// add filter
|
||||||
acf.add_filter('prepare_for_ajax', function( args ){
|
acf.add_filter('prepare_for_ajax', function( args ){
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -39,6 +39,8 @@ class acf_field_checkbox extends acf_field {
|
||||||
'layout' => 'vertical',
|
'layout' => 'vertical',
|
||||||
'choices' => array(),
|
'choices' => array(),
|
||||||
'default_value' => '',
|
'default_value' => '',
|
||||||
|
'allow_custom' => 0,
|
||||||
|
'save_custom' => 0,
|
||||||
'toggle' => 0,
|
'toggle' => 0,
|
||||||
'return_format' => 'value'
|
'return_format' => 'value'
|
||||||
);
|
);
|
||||||
|
|
@ -66,8 +68,9 @@ class acf_field_checkbox extends acf_field {
|
||||||
|
|
||||||
function render_field( $field ) {
|
function render_field( $field ) {
|
||||||
|
|
||||||
// decode value (convert to array)
|
// ensure array
|
||||||
$field['value'] = acf_get_array($field['value'], false);
|
$field['value'] = acf_get_array($field['value'], false);
|
||||||
|
$field['choices'] = acf_get_array($field['choices']);
|
||||||
|
|
||||||
|
|
||||||
// hiden input
|
// hiden input
|
||||||
|
|
@ -170,6 +173,37 @@ class acf_field_checkbox extends acf_field {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// allow_custom
|
||||||
|
if( $field['allow_custom'] ) {
|
||||||
|
|
||||||
|
|
||||||
|
// loop
|
||||||
|
foreach( $field['value'] as $value ) {
|
||||||
|
|
||||||
|
// ignore if already eixsts
|
||||||
|
if( isset($field['choices'][ $value ]) ) continue;
|
||||||
|
|
||||||
|
|
||||||
|
// vars
|
||||||
|
$atts = array(
|
||||||
|
'type' => 'text',
|
||||||
|
'name' => $field['name'],
|
||||||
|
'value' => $value,
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// append
|
||||||
|
$li .= '<li><input class="acf-checkbox-custom" type="checkbox" checked="checked" /><input ' . acf_esc_attr( $atts ) . '/></li>';
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// append button
|
||||||
|
$li .= '<li><a href="#" class="button acf-add-checkbox">' . __('Add new choice', 'acf') . '</a></li>';
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// class
|
// class
|
||||||
$field['class'] .= ' acf-checkbox-list';
|
$field['class'] .= ' acf-checkbox-list';
|
||||||
$field['class'] .= ($field['layout'] == 'horizontal') ? ' acf-hl' : ' acf-bl';
|
$field['class'] .= ($field['layout'] == 'horizontal') ? ' acf-hl' : ' acf-bl';
|
||||||
|
|
@ -178,6 +212,7 @@ class acf_field_checkbox extends acf_field {
|
||||||
// return
|
// return
|
||||||
echo '<ul ' . acf_esc_attr(array( 'class' => $field['class'] )) . '>' . $li . '</ul>';
|
echo '<ul ' . acf_esc_attr(array( 'class' => $field['class'] )) . '>' . $li . '</ul>';
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -210,6 +245,28 @@ class acf_field_checkbox extends acf_field {
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
// other_choice
|
||||||
|
acf_render_field_setting( $field, array(
|
||||||
|
'label' => __('Allow Custom','acf'),
|
||||||
|
'instructions' => '',
|
||||||
|
'name' => 'allow_custom',
|
||||||
|
'type' => 'true_false',
|
||||||
|
'ui' => 1,
|
||||||
|
'message' => __("Allow 'custom' values to be added", 'acf'),
|
||||||
|
));
|
||||||
|
|
||||||
|
|
||||||
|
// save_other_choice
|
||||||
|
acf_render_field_setting( $field, array(
|
||||||
|
'label' => __('Save Custom','acf'),
|
||||||
|
'instructions' => '',
|
||||||
|
'name' => 'save_custom',
|
||||||
|
'type' => 'true_false',
|
||||||
|
'ui' => 1,
|
||||||
|
'message' => __("Save 'custom' values to the field's choices", 'acf')
|
||||||
|
));
|
||||||
|
|
||||||
|
|
||||||
// default_value
|
// default_value
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Default Value','acf'),
|
'label' => __('Default Value','acf'),
|
||||||
|
|
@ -237,13 +294,9 @@ class acf_field_checkbox extends acf_field {
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Toggle','acf'),
|
'label' => __('Toggle','acf'),
|
||||||
'instructions' => __('Prepend an extra checkbox to toggle all choices','acf'),
|
'instructions' => __('Prepend an extra checkbox to toggle all choices','acf'),
|
||||||
'type' => 'radio',
|
|
||||||
'name' => 'toggle',
|
'name' => 'toggle',
|
||||||
'layout' => 'horizontal',
|
'type' => 'true_false',
|
||||||
'choices' => array(
|
'ui' => 1,
|
||||||
1 => __("Yes",'acf'),
|
|
||||||
0 => __("No",'acf'),
|
|
||||||
)
|
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -304,7 +357,49 @@ class acf_field_checkbox extends acf_field {
|
||||||
|
|
||||||
function update_value( $value, $post_id, $field ) {
|
function update_value( $value, $post_id, $field ) {
|
||||||
|
|
||||||
return acf_get_field_type('select')->update_value( $value, $post_id, $field );
|
// bail early if is empty
|
||||||
|
if( empty($value) ) return $value;
|
||||||
|
|
||||||
|
|
||||||
|
// select -> update_value()
|
||||||
|
$value = acf_get_field_type('select')->update_value( $value, $post_id, $field );
|
||||||
|
|
||||||
|
|
||||||
|
// save_other_choice
|
||||||
|
if( $field['save_custom'] ) {
|
||||||
|
|
||||||
|
// get raw $field (may have been changed via repeater field)
|
||||||
|
// if field is local, it won't have an ID
|
||||||
|
$selector = $field['ID'] ? $field['ID'] : $field['key'];
|
||||||
|
$field = acf_get_field( $selector, true );
|
||||||
|
|
||||||
|
|
||||||
|
// bail early if no ID (JSON only)
|
||||||
|
if( !$field['ID'] ) return $value;
|
||||||
|
|
||||||
|
|
||||||
|
// loop
|
||||||
|
foreach( $value as $v ) {
|
||||||
|
|
||||||
|
// ignore if already eixsts
|
||||||
|
if( isset($field['choices'][ $v ]) ) continue;
|
||||||
|
|
||||||
|
|
||||||
|
// append
|
||||||
|
$field['choices'][ $v ] = $v;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// save
|
||||||
|
acf_update_field( $field );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// return
|
||||||
|
return $value;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -352,8 +447,10 @@ class acf_field_checkbox extends acf_field {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
new acf_field_checkbox();
|
|
||||||
|
|
||||||
endif;
|
// initialize
|
||||||
|
acf_register_field_type( new acf_field_checkbox() );
|
||||||
|
|
||||||
|
endif; // class_exists check
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
|
||||||
|
|
@ -104,6 +104,10 @@ class acf_field_date_picker extends acf_field {
|
||||||
|
|
||||||
function input_admin_enqueue_scripts() {
|
function input_admin_enqueue_scripts() {
|
||||||
|
|
||||||
|
// bail ealry if no enqueue
|
||||||
|
if( !acf_get_setting('enqueue_datepicker') ) return;
|
||||||
|
|
||||||
|
|
||||||
// script
|
// script
|
||||||
wp_enqueue_script('jquery-ui-datepicker');
|
wp_enqueue_script('jquery-ui-datepicker');
|
||||||
|
|
||||||
|
|
@ -159,8 +163,23 @@ class acf_field_date_picker extends acf_field {
|
||||||
'type' => 'text',
|
'type' => 'text',
|
||||||
'value' => $display_value,
|
'value' => $display_value,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// save_format - compatibility with ACF < 5.0.0
|
||||||
|
if( !empty($field['save_format']) ) {
|
||||||
|
|
||||||
|
// add custom JS save format
|
||||||
|
$div['data-save_format'] = $field['save_format'];
|
||||||
|
|
||||||
|
// revert hidden input value to raw DB value
|
||||||
|
$hidden['value'] = $field['value'];
|
||||||
|
|
||||||
|
// remove formatted value (will do this via JS)
|
||||||
|
$input['value'] = '';
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// html
|
// html
|
||||||
$e .= '<div ' . acf_esc_attr($div) . '>';
|
$e .= '<div ' . acf_esc_attr($div) . '>';
|
||||||
$e .= '<input ' . acf_esc_attr($hidden). '/>';
|
$e .= '<input ' . acf_esc_attr($hidden). '/>';
|
||||||
|
|
@ -200,27 +219,43 @@ class acf_field_date_picker extends acf_field {
|
||||||
'name' => 'display_format',
|
'name' => 'display_format',
|
||||||
'other_choice' => 1,
|
'other_choice' => 1,
|
||||||
'choices' => array(
|
'choices' => array(
|
||||||
'd/m/Y' => date('d/m/Y'),
|
'd/m/Y' => date_i18n('d/m/Y'),
|
||||||
'm/d/Y' => date('m/d/Y'),
|
'm/d/Y' => date_i18n('m/d/Y'),
|
||||||
'F j, Y' => date('F j, Y'),
|
'F j, Y' => date_i18n('F j, Y'),
|
||||||
)
|
)
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
// return_format
|
// save_format - compatibility with ACF < 5.0.0
|
||||||
acf_render_field_setting( $field, array(
|
if( !empty($field['save_format']) ) {
|
||||||
'label' => __('Return Format','acf'),
|
|
||||||
'instructions' => __('The format returned via template functions','acf'),
|
// save_format
|
||||||
'type' => 'radio',
|
acf_render_field_setting( $field, array(
|
||||||
'name' => 'return_format',
|
'label' => __('Save Format','acf'),
|
||||||
'other_choice' => 1,
|
'instructions' => __('The format used when saving a value','acf'),
|
||||||
'choices' => array(
|
'type' => 'text',
|
||||||
'd/m/Y' => date('d/m/Y'),
|
'name' => 'save_format',
|
||||||
'm/d/Y' => date('m/d/Y'),
|
//'readonly' => 1 // this setting was not readonly in v4
|
||||||
'F j, Y' => date('F j, Y'),
|
));
|
||||||
'Ymd' => date('Ymd'),
|
|
||||||
)
|
} else {
|
||||||
));
|
|
||||||
|
// return_format
|
||||||
|
acf_render_field_setting( $field, array(
|
||||||
|
'label' => __('Return Format','acf'),
|
||||||
|
'instructions' => __('The format returned via template functions','acf'),
|
||||||
|
'type' => 'radio',
|
||||||
|
'name' => 'return_format',
|
||||||
|
'other_choice' => 1,
|
||||||
|
'choices' => array(
|
||||||
|
'd/m/Y' => date_i18n('d/m/Y'),
|
||||||
|
'm/d/Y' => date_i18n('m/d/Y'),
|
||||||
|
'F j, Y' => date_i18n('F j, Y'),
|
||||||
|
'Ymd' => date_i18n('Ymd'),
|
||||||
|
)
|
||||||
|
));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// first_day
|
// first_day
|
||||||
|
|
@ -253,6 +288,15 @@ class acf_field_date_picker extends acf_field {
|
||||||
|
|
||||||
function format_value( $value, $post_id, $field ) {
|
function format_value( $value, $post_id, $field ) {
|
||||||
|
|
||||||
|
// save_format - compatibility with ACF < 5.0.0
|
||||||
|
if( !empty($field['save_format']) ) {
|
||||||
|
|
||||||
|
return $value;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// return
|
||||||
return acf_format_date( $value, $field['return_format'] );
|
return acf_format_date( $value, $field['return_format'] );
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -83,6 +83,10 @@ class acf_field_date_and_time_picker extends acf_field {
|
||||||
|
|
||||||
function input_admin_enqueue_scripts() {
|
function input_admin_enqueue_scripts() {
|
||||||
|
|
||||||
|
// bail ealry if no enqueue
|
||||||
|
if( !acf_get_setting('enqueue_datetimepicker') ) return;
|
||||||
|
|
||||||
|
|
||||||
// vars
|
// vars
|
||||||
$version = '1.6.1';
|
$version = '1.6.1';
|
||||||
|
|
||||||
|
|
@ -189,10 +193,10 @@ class acf_field_date_and_time_picker extends acf_field {
|
||||||
'name' => 'display_format',
|
'name' => 'display_format',
|
||||||
'other_choice' => 1,
|
'other_choice' => 1,
|
||||||
'choices' => array(
|
'choices' => array(
|
||||||
'd/m/Y g:i a' => date('d/m/Y g:i a'),
|
'd/m/Y g:i a' => date_i18n('d/m/Y g:i a'),
|
||||||
'm/d/Y g:i a' => date('m/d/Y g:i a'),
|
'm/d/Y g:i a' => date_i18n('m/d/Y g:i a'),
|
||||||
'F j, Y g:i a' => date('F j, Y g:i a'),
|
'F j, Y g:i a' => date_i18n('F j, Y g:i a'),
|
||||||
'Y-m-d H:i:s' => date('Y-m-d H:i:s'),
|
'Y-m-d H:i:s' => date_i18n('Y-m-d H:i:s'),
|
||||||
)
|
)
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
@ -205,10 +209,10 @@ class acf_field_date_and_time_picker extends acf_field {
|
||||||
'name' => 'return_format',
|
'name' => 'return_format',
|
||||||
'other_choice' => 1,
|
'other_choice' => 1,
|
||||||
'choices' => array(
|
'choices' => array(
|
||||||
'd/m/Y g:i a' => date('d/m/Y g:i a'),
|
'd/m/Y g:i a' => date_i18n('d/m/Y g:i a'),
|
||||||
'm/d/Y g:i a' => date('m/d/Y g:i a'),
|
'm/d/Y g:i a' => date_i18n('m/d/Y g:i a'),
|
||||||
'F j, Y g:i a' => date('F j, Y g:i a'),
|
'F j, Y g:i a' => date_i18n('F j, Y g:i a'),
|
||||||
'Y-m-d H:i:s' => date('Y-m-d H:i:s'),
|
'Y-m-d H:i:s' => date_i18n('Y-m-d H:i:s'),
|
||||||
)
|
)
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -168,7 +168,9 @@ class acf_field_file extends acf_field {
|
||||||
<div class="acf-error-message"><p><?php echo $field['value']; ?></p></div>
|
<div class="acf-error-message"><p><?php echo $field['value']; ?></p></div>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
|
|
||||||
<input type="file" name="<?php echo $field['name']; ?>" id="<?php echo $field['id']; ?>" />
|
<label class="acf-basic-uploader">
|
||||||
|
<input type="file" name="<?php echo $field['name']; ?>" id="<?php echo $field['id']; ?>" />
|
||||||
|
</label>
|
||||||
|
|
||||||
<?php else: ?>
|
<?php else: ?>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -181,9 +181,7 @@ class acf_field_google_map extends acf_field {
|
||||||
'name' => 'center_lng',
|
'name' => 'center_lng',
|
||||||
'prepend' => 'lng',
|
'prepend' => 'lng',
|
||||||
'placeholder' => $this->default_values['center_lng'],
|
'placeholder' => $this->default_values['center_lng'],
|
||||||
'wrapper' => array(
|
'_append' => 'center_lat'
|
||||||
'data-append' => 'center_lat'
|
|
||||||
)
|
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -151,7 +151,9 @@ class acf_field_image extends acf_field {
|
||||||
<div class="acf-error-message"><p><?php echo $field['value']; ?></p></div>
|
<div class="acf-error-message"><p><?php echo $field['value']; ?></p></div>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
|
|
||||||
<input type="file" name="<?php echo $field['name']; ?>" id="<?php echo $field['id']; ?>" />
|
<label class="acf-basic-uploader">
|
||||||
|
<input type="file" name="<?php echo $field['name']; ?>" id="<?php echo $field['id']; ?>" />
|
||||||
|
</label>
|
||||||
|
|
||||||
<?php else: ?>
|
<?php else: ?>
|
||||||
|
|
||||||
|
|
@ -256,9 +258,7 @@ class acf_field_image extends acf_field {
|
||||||
'name' => 'min_height',
|
'name' => 'min_height',
|
||||||
'prepend' => __('Height', 'acf'),
|
'prepend' => __('Height', 'acf'),
|
||||||
'append' => 'px',
|
'append' => 'px',
|
||||||
'wrapper' => array(
|
'_append' => 'min_width'
|
||||||
'data-append' => 'min_width'
|
|
||||||
)
|
|
||||||
));
|
));
|
||||||
|
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
|
|
@ -267,9 +267,7 @@ class acf_field_image extends acf_field {
|
||||||
'name' => 'min_size',
|
'name' => 'min_size',
|
||||||
'prepend' => __('File size', 'acf'),
|
'prepend' => __('File size', 'acf'),
|
||||||
'append' => 'MB',
|
'append' => 'MB',
|
||||||
'wrapper' => array(
|
'_append' => 'min_width'
|
||||||
'data-append' => 'min_width'
|
|
||||||
)
|
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -289,9 +287,7 @@ class acf_field_image extends acf_field {
|
||||||
'name' => 'max_height',
|
'name' => 'max_height',
|
||||||
'prepend' => __('Height', 'acf'),
|
'prepend' => __('Height', 'acf'),
|
||||||
'append' => 'px',
|
'append' => 'px',
|
||||||
'wrapper' => array(
|
'_append' => 'max_width'
|
||||||
'data-append' => 'max_width'
|
|
||||||
)
|
|
||||||
));
|
));
|
||||||
|
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
|
|
@ -300,9 +296,7 @@ class acf_field_image extends acf_field {
|
||||||
'name' => 'max_size',
|
'name' => 'max_size',
|
||||||
'prepend' => __('File size', 'acf'),
|
'prepend' => __('File size', 'acf'),
|
||||||
'append' => 'MB',
|
'append' => 'MB',
|
||||||
'wrapper' => array(
|
'_append' => 'max_width'
|
||||||
'data-append' => 'max_width'
|
|
||||||
)
|
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -36,7 +36,6 @@ class acf_field_message extends acf_field {
|
||||||
$this->label = __("Message",'acf');
|
$this->label = __("Message",'acf');
|
||||||
$this->category = 'layout';
|
$this->category = 'layout';
|
||||||
$this->defaults = array(
|
$this->defaults = array(
|
||||||
'value' => false, // prevents ACF from attempting to load value
|
|
||||||
'message' => '',
|
'message' => '',
|
||||||
'esc_html' => 0,
|
'esc_html' => 0,
|
||||||
'new_lines' => 'wpautop',
|
'new_lines' => 'wpautop',
|
||||||
|
|
@ -138,45 +137,14 @@ class acf_field_message extends acf_field {
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Escape HTML','acf'),
|
'label' => __('Escape HTML','acf'),
|
||||||
'instructions' => __('Allow HTML markup to display as visible text instead of rendering','acf'),
|
'instructions' => __('Allow HTML markup to display as visible text instead of rendering','acf'),
|
||||||
'type' => 'radio',
|
|
||||||
'name' => 'esc_html',
|
'name' => 'esc_html',
|
||||||
'choices' => array(
|
'type' => 'true_false',
|
||||||
1 => __("Yes",'acf'),
|
'ui' => 1,
|
||||||
0 => __("No",'acf'),
|
|
||||||
),
|
|
||||||
'layout' => 'horizontal',
|
|
||||||
));
|
));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* update_field()
|
|
||||||
*
|
|
||||||
* This filter is appied to the $field before it is saved to the database
|
|
||||||
*
|
|
||||||
* @type filter
|
|
||||||
* @since 3.6
|
|
||||||
* @date 23/01/13
|
|
||||||
*
|
|
||||||
* @param $field - the field array holding all the field options
|
|
||||||
* @param $post_id - the field group ID (post_type = acf)
|
|
||||||
*
|
|
||||||
* @return $field - the modified field
|
|
||||||
*/
|
|
||||||
|
|
||||||
function update_field( $field ) {
|
|
||||||
|
|
||||||
// remove name
|
|
||||||
$field['name'] = '';
|
|
||||||
$field['required'] = 0;
|
|
||||||
|
|
||||||
|
|
||||||
// return
|
|
||||||
return $field;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* translate_field
|
* translate_field
|
||||||
*
|
*
|
||||||
|
|
@ -201,6 +169,40 @@ class acf_field_message extends acf_field {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* load_field()
|
||||||
|
*
|
||||||
|
* This filter is appied to the $field after it is loaded from the database
|
||||||
|
*
|
||||||
|
* @type filter
|
||||||
|
* @since 3.6
|
||||||
|
* @date 23/01/13
|
||||||
|
*
|
||||||
|
* @param $field - the field array holding all the field options
|
||||||
|
*
|
||||||
|
* @return $field - the field array holding all the field options
|
||||||
|
*/
|
||||||
|
|
||||||
|
function load_field( $field ) {
|
||||||
|
|
||||||
|
// remove name to avoid caching issue
|
||||||
|
$field['name'] = '';
|
||||||
|
|
||||||
|
|
||||||
|
// remove required to avoid JS issues
|
||||||
|
$field['required'] = 0;
|
||||||
|
|
||||||
|
|
||||||
|
// set value other than 'null' to avoid ACF loading / caching issue
|
||||||
|
$field['value'] = false;
|
||||||
|
|
||||||
|
|
||||||
|
// return
|
||||||
|
return $field;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -116,10 +116,13 @@ class acf_field_oembed extends acf_field {
|
||||||
|
|
||||||
function ajax_search() {
|
function ajax_search() {
|
||||||
|
|
||||||
|
// validate
|
||||||
|
if( !acf_verify_ajax() ) die();
|
||||||
|
|
||||||
|
|
||||||
// options
|
// options
|
||||||
$args = acf_parse_args( $_POST, array(
|
$args = acf_parse_args( $_POST, array(
|
||||||
's' => '',
|
's' => '',
|
||||||
'nonce' => '',
|
|
||||||
'width' => 0,
|
'width' => 0,
|
||||||
'height' => 0,
|
'height' => 0,
|
||||||
));
|
));
|
||||||
|
|
@ -139,14 +142,6 @@ class acf_field_oembed extends acf_field {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// validate
|
|
||||||
if( ! wp_verify_nonce($args['nonce'], 'acf_nonce') ) {
|
|
||||||
|
|
||||||
die();
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// get oembed
|
// get oembed
|
||||||
echo $this->wp_oembed_get($args['s'], $args['width'], $args['height']);
|
echo $this->wp_oembed_get($args['s'], $args['width'], $args['height']);
|
||||||
|
|
||||||
|
|
@ -222,7 +217,7 @@ class acf_field_oembed extends acf_field {
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="canvas-error">
|
<div class="canvas-error">
|
||||||
<p><strong><?php _e("Error", 'acf'); ?></strong>. <?php _e("No embed found for the given URL", 'acf'); ?></p>
|
<p><strong><?php _e("Error.", 'acf'); ?></strong> <?php _e("No embed found for the given URL.", 'acf'); ?></p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="canvas-media" data-name="value-embed">
|
<div class="canvas-media" data-name="value-embed">
|
||||||
|
|
@ -275,9 +270,7 @@ class acf_field_oembed extends acf_field {
|
||||||
'prepend' => __('Height', 'acf'),
|
'prepend' => __('Height', 'acf'),
|
||||||
'append' => 'px',
|
'append' => 'px',
|
||||||
'placeholder' => $this->default_values['height'],
|
'placeholder' => $this->default_values['height'],
|
||||||
'wrapper' => array(
|
'_append' => 'width'
|
||||||
'data-append' => 'width'
|
|
||||||
)
|
|
||||||
));
|
));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,91 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/*
|
||||||
|
* ACF Output Field Class
|
||||||
|
*
|
||||||
|
* All the logic for this field type
|
||||||
|
*
|
||||||
|
* @class acf_field_output
|
||||||
|
* @extends acf_field
|
||||||
|
* @package ACF
|
||||||
|
* @subpackage Fields
|
||||||
|
*/
|
||||||
|
|
||||||
|
if( ! class_exists('acf_field_output') ) :
|
||||||
|
|
||||||
|
class acf_field_output extends acf_field {
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* __construct
|
||||||
|
*
|
||||||
|
* This function will setup the field type data
|
||||||
|
*
|
||||||
|
* @type function
|
||||||
|
* @date 5/03/2014
|
||||||
|
* @since 5.0.0
|
||||||
|
*
|
||||||
|
* @param n/a
|
||||||
|
* @return n/a
|
||||||
|
*/
|
||||||
|
|
||||||
|
function __construct() {
|
||||||
|
|
||||||
|
// vars
|
||||||
|
$this->name = 'output';
|
||||||
|
$this->label = 'output';
|
||||||
|
$this->public = false;
|
||||||
|
$this->defaults = array(
|
||||||
|
'html' => false
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// do not delete!
|
||||||
|
parent::__construct();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* render_field()
|
||||||
|
*
|
||||||
|
* Create the HTML interface for your field
|
||||||
|
*
|
||||||
|
* @param $field (array) the $field being rendered
|
||||||
|
*
|
||||||
|
* @type action
|
||||||
|
* @since 3.6
|
||||||
|
* @date 23/01/13
|
||||||
|
*
|
||||||
|
* @param $field (array) the $field being edited
|
||||||
|
* @return n/a
|
||||||
|
*/
|
||||||
|
|
||||||
|
function render_field( $field ) {
|
||||||
|
|
||||||
|
// bail early if no html
|
||||||
|
if( !$field['html'] ) return;
|
||||||
|
|
||||||
|
|
||||||
|
// html
|
||||||
|
if( is_string($field['html']) && !function_exists($field['html']) ) {
|
||||||
|
|
||||||
|
echo $field['html'];
|
||||||
|
|
||||||
|
// function
|
||||||
|
} else {
|
||||||
|
|
||||||
|
call_user_func_array($field['html'], array($field));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// initialize
|
||||||
|
acf_register_field_type( new acf_field_output() );
|
||||||
|
|
||||||
|
endif; // class_exists check
|
||||||
|
|
||||||
|
?>
|
||||||
|
|
@ -527,13 +527,9 @@ class acf_field_page_link extends acf_field {
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Allow Null?','acf'),
|
'label' => __('Allow Null?','acf'),
|
||||||
'instructions' => '',
|
'instructions' => '',
|
||||||
'type' => 'radio',
|
|
||||||
'name' => 'allow_null',
|
'name' => 'allow_null',
|
||||||
'choices' => array(
|
'type' => 'true_false',
|
||||||
1 => __("Yes",'acf'),
|
'ui' => 1,
|
||||||
0 => __("No",'acf'),
|
|
||||||
),
|
|
||||||
'layout' => 'horizontal',
|
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -541,13 +537,9 @@ class acf_field_page_link extends acf_field {
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Allow Archives URLs','acf'),
|
'label' => __('Allow Archives URLs','acf'),
|
||||||
'instructions' => '',
|
'instructions' => '',
|
||||||
'type' => 'radio',
|
|
||||||
'name' => 'allow_archives',
|
'name' => 'allow_archives',
|
||||||
'choices' => array(
|
'type' => 'true_false',
|
||||||
1 => __("Yes",'acf'),
|
'ui' => 1,
|
||||||
0 => __("No",'acf'),
|
|
||||||
),
|
|
||||||
'layout' => 'horizontal',
|
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -555,13 +547,9 @@ class acf_field_page_link extends acf_field {
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Select multiple values?','acf'),
|
'label' => __('Select multiple values?','acf'),
|
||||||
'instructions' => '',
|
'instructions' => '',
|
||||||
'type' => 'radio',
|
|
||||||
'name' => 'multiple',
|
'name' => 'multiple',
|
||||||
'choices' => array(
|
'type' => 'true_false',
|
||||||
1 => __("Yes",'acf'),
|
'ui' => 1,
|
||||||
0 => __("No",'acf'),
|
|
||||||
),
|
|
||||||
'layout' => 'horizontal',
|
|
||||||
));
|
));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -426,13 +426,9 @@ class acf_field_post_object extends acf_field {
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Allow Null?','acf'),
|
'label' => __('Allow Null?','acf'),
|
||||||
'instructions' => '',
|
'instructions' => '',
|
||||||
'type' => 'radio',
|
|
||||||
'name' => 'allow_null',
|
'name' => 'allow_null',
|
||||||
'choices' => array(
|
'type' => 'true_false',
|
||||||
1 => __("Yes",'acf'),
|
'ui' => 1,
|
||||||
0 => __("No",'acf'),
|
|
||||||
),
|
|
||||||
'layout' => 'horizontal',
|
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -440,13 +436,9 @@ class acf_field_post_object extends acf_field {
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Select multiple values?','acf'),
|
'label' => __('Select multiple values?','acf'),
|
||||||
'instructions' => '',
|
'instructions' => '',
|
||||||
'type' => 'radio',
|
|
||||||
'name' => 'multiple',
|
'name' => 'multiple',
|
||||||
'choices' => array(
|
'type' => 'true_false',
|
||||||
1 => __("Yes",'acf'),
|
'ui' => 1,
|
||||||
0 => __("No",'acf'),
|
|
||||||
),
|
|
||||||
'layout' => 'horizontal',
|
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -124,7 +124,8 @@ class acf_field_radio extends acf_field {
|
||||||
'type' => 'text',
|
'type' => 'text',
|
||||||
'name' => $field['name'],
|
'name' => $field['name'],
|
||||||
'value' => '',
|
'value' => '',
|
||||||
'disabled' => 'disabled'
|
'disabled' => 'disabled',
|
||||||
|
'class' => 'acf-disabled'
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -249,13 +250,9 @@ class acf_field_radio extends acf_field {
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Allow Null?','acf'),
|
'label' => __('Allow Null?','acf'),
|
||||||
'instructions' => '',
|
'instructions' => '',
|
||||||
'type' => 'radio',
|
|
||||||
'name' => 'allow_null',
|
'name' => 'allow_null',
|
||||||
'choices' => array(
|
'type' => 'true_false',
|
||||||
1 => __("Yes",'acf'),
|
'ui' => 1,
|
||||||
0 => __("No",'acf'),
|
|
||||||
),
|
|
||||||
'layout' => 'horizontal',
|
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -263,9 +260,10 @@ class acf_field_radio extends acf_field {
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Other','acf'),
|
'label' => __('Other','acf'),
|
||||||
'instructions' => '',
|
'instructions' => '',
|
||||||
'type' => 'true_false',
|
|
||||||
'name' => 'other_choice',
|
'name' => 'other_choice',
|
||||||
'message' => __("Add 'other' choice to allow for custom values", 'acf')
|
'type' => 'true_false',
|
||||||
|
'ui' => 1,
|
||||||
|
'message' => __("Add 'other' choice to allow for custom values", 'acf'),
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -273,8 +271,9 @@ class acf_field_radio extends acf_field {
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Save Other','acf'),
|
'label' => __('Save Other','acf'),
|
||||||
'instructions' => '',
|
'instructions' => '',
|
||||||
'type' => 'true_false',
|
|
||||||
'name' => 'save_other_choice',
|
'name' => 'save_other_choice',
|
||||||
|
'type' => 'true_false',
|
||||||
|
'ui' => 1,
|
||||||
'message' => __("Save 'other' values to the field's choices", 'acf')
|
'message' => __("Save 'other' values to the field's choices", 'acf')
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -483,11 +483,6 @@ class acf_field_relationship extends acf_field {
|
||||||
if( !empty($field['post_type']) ) {
|
if( !empty($field['post_type']) ) {
|
||||||
|
|
||||||
$post_types = $field['post_type'];
|
$post_types = $field['post_type'];
|
||||||
|
|
||||||
|
|
||||||
} else {
|
|
||||||
|
|
||||||
$post_types = acf_get_post_types();
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -87,27 +87,43 @@ class acf_field_select extends acf_field {
|
||||||
|
|
||||||
function input_admin_enqueue_scripts() {
|
function input_admin_enqueue_scripts() {
|
||||||
|
|
||||||
|
// bail ealry if no enqueue
|
||||||
|
if( !acf_get_setting('enqueue_select2') ) return;
|
||||||
|
|
||||||
|
|
||||||
// globals
|
// globals
|
||||||
global $wp_scripts, $wp_styles;
|
global $wp_scripts, $wp_styles;
|
||||||
|
|
||||||
|
|
||||||
// vars
|
// vars
|
||||||
$version = '3.5.2';
|
|
||||||
$min = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min';
|
$min = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min';
|
||||||
|
$major = acf_get_setting('select2_version');
|
||||||
|
$version = '';
|
||||||
|
$script = '';
|
||||||
|
$style = '';
|
||||||
|
|
||||||
|
|
||||||
// script
|
|
||||||
wp_enqueue_script('select2', acf_get_dir("assets/inc/select2/select2{$min}.js"), array('jquery'), $version );
|
|
||||||
|
|
||||||
|
|
||||||
// style
|
|
||||||
wp_enqueue_style('select2', acf_get_dir('assets/inc/select2/select2.css'), '', $version );
|
|
||||||
|
|
||||||
|
|
||||||
// v4
|
// v4
|
||||||
//wp_enqueue_script('select2', acf_get_dir("assets/inc/select2/dist/js/select2.full.js"), array('jquery'), '4.0', true );
|
if( $major == 4 ) {
|
||||||
//wp_enqueue_style('select2', acf_get_dir("assets/inc/select2/dist/css/select2{$min}.css"), '', '4.0' );
|
|
||||||
|
$version = '4.0';
|
||||||
|
$script = acf_get_dir("assets/inc/select2/4/select2.full{$min}.js");
|
||||||
|
$style = acf_get_dir("assets/inc/select2/4/select2{$min}.css");
|
||||||
|
|
||||||
|
// v3
|
||||||
|
} else {
|
||||||
|
|
||||||
|
$version = '3.5.2';
|
||||||
|
$script = acf_get_dir("assets/inc/select2/3/select2{$min}.js");
|
||||||
|
$style = acf_get_dir("assets/inc/select2/3/select2.css");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// enqueue
|
||||||
|
wp_enqueue_script('select2', $script, array('jquery'), $version );
|
||||||
|
wp_enqueue_style('select2', $style, '', $version );
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -237,7 +253,7 @@ class acf_field_select extends acf_field {
|
||||||
*/
|
*/
|
||||||
|
|
||||||
function render_field( $field ) {
|
function render_field( $field ) {
|
||||||
|
|
||||||
// convert
|
// convert
|
||||||
$field['value'] = acf_get_array($field['value'], false);
|
$field['value'] = acf_get_array($field['value'], false);
|
||||||
$field['choices'] = acf_get_array($field['choices']);
|
$field['choices'] = acf_get_array($field['choices']);
|
||||||
|
|
@ -252,14 +268,14 @@ class acf_field_select extends acf_field {
|
||||||
|
|
||||||
|
|
||||||
// add empty value (allows '' to be selected)
|
// add empty value (allows '' to be selected)
|
||||||
if( !count($field['value']) ) {
|
if( empty($field['value']) ) {
|
||||||
|
|
||||||
$field['value'][''] = '';
|
$field['value'] = array('');
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// null
|
// allow null
|
||||||
// - have tried array_merge but this causes keys to re-index if is numeric (post ID's)
|
// - have tried array_merge but this causes keys to re-index if is numeric (post ID's)
|
||||||
if( $field['allow_null'] && !$field['multiple'] ) {
|
if( $field['allow_null'] && !$field['multiple'] ) {
|
||||||
|
|
||||||
|
|
@ -269,7 +285,6 @@ class acf_field_select extends acf_field {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// vars
|
// vars
|
||||||
$atts = array(
|
$atts = array(
|
||||||
'id' => $field['id'],
|
'id' => $field['id'],
|
||||||
|
|
@ -290,7 +305,7 @@ class acf_field_select extends acf_field {
|
||||||
$atts['size'] = 5;
|
$atts['size'] = 5;
|
||||||
$atts['name'] .= '[]';
|
$atts['name'] .= '[]';
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// special atts
|
// special atts
|
||||||
|
|
@ -445,8 +460,8 @@ class acf_field_select extends acf_field {
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Choices','acf'),
|
'label' => __('Choices','acf'),
|
||||||
'instructions' => __('Enter each choice on a new line.','acf') . '<br /><br />' . __('For more control, you may specify both a value and label like this:','acf'). '<br /><br />' . __('red : Red','acf'),
|
'instructions' => __('Enter each choice on a new line.','acf') . '<br /><br />' . __('For more control, you may specify both a value and label like this:','acf'). '<br /><br />' . __('red : Red','acf'),
|
||||||
'type' => 'textarea',
|
|
||||||
'name' => 'choices',
|
'name' => 'choices',
|
||||||
|
'type' => 'textarea',
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -454,8 +469,8 @@ class acf_field_select extends acf_field {
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Default Value','acf'),
|
'label' => __('Default Value','acf'),
|
||||||
'instructions' => __('Enter each default value on a new line','acf'),
|
'instructions' => __('Enter each default value on a new line','acf'),
|
||||||
'type' => 'textarea',
|
|
||||||
'name' => 'default_value',
|
'name' => 'default_value',
|
||||||
|
'type' => 'textarea',
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -463,13 +478,9 @@ class acf_field_select extends acf_field {
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Allow Null?','acf'),
|
'label' => __('Allow Null?','acf'),
|
||||||
'instructions' => '',
|
'instructions' => '',
|
||||||
'type' => 'radio',
|
|
||||||
'name' => 'allow_null',
|
'name' => 'allow_null',
|
||||||
'choices' => array(
|
'type' => 'true_false',
|
||||||
1 => __("Yes",'acf'),
|
'ui' => 1,
|
||||||
0 => __("No",'acf'),
|
|
||||||
),
|
|
||||||
'layout' => 'horizontal',
|
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -477,13 +488,9 @@ class acf_field_select extends acf_field {
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Select multiple values?','acf'),
|
'label' => __('Select multiple values?','acf'),
|
||||||
'instructions' => '',
|
'instructions' => '',
|
||||||
'type' => 'radio',
|
|
||||||
'name' => 'multiple',
|
'name' => 'multiple',
|
||||||
'choices' => array(
|
'type' => 'true_false',
|
||||||
1 => __("Yes",'acf'),
|
'ui' => 1,
|
||||||
0 => __("No",'acf'),
|
|
||||||
),
|
|
||||||
'layout' => 'horizontal',
|
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -491,13 +498,9 @@ class acf_field_select extends acf_field {
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Stylised UI','acf'),
|
'label' => __('Stylised UI','acf'),
|
||||||
'instructions' => '',
|
'instructions' => '',
|
||||||
'type' => 'radio',
|
|
||||||
'name' => 'ui',
|
'name' => 'ui',
|
||||||
'choices' => array(
|
'type' => 'true_false',
|
||||||
1 => __("Yes",'acf'),
|
'ui' => 1,
|
||||||
0 => __("No",'acf'),
|
|
||||||
),
|
|
||||||
'layout' => 'horizontal',
|
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -505,13 +508,9 @@ class acf_field_select extends acf_field {
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Use AJAX to lazy load choices?','acf'),
|
'label' => __('Use AJAX to lazy load choices?','acf'),
|
||||||
'instructions' => '',
|
'instructions' => '',
|
||||||
'type' => 'radio',
|
|
||||||
'name' => 'ajax',
|
'name' => 'ajax',
|
||||||
'choices' => array(
|
'type' => 'true_false',
|
||||||
1 => __("Yes",'acf'),
|
'ui' => 1,
|
||||||
0 => __("No",'acf'),
|
|
||||||
),
|
|
||||||
'layout' => 'horizontal',
|
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -519,9 +518,8 @@ class acf_field_select extends acf_field {
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Return Format','acf'),
|
'label' => __('Return Format','acf'),
|
||||||
'instructions' => __('Specify the value returned','acf'),
|
'instructions' => __('Specify the value returned','acf'),
|
||||||
'type' => 'radio',
|
'type' => 'select',
|
||||||
'name' => 'return_format',
|
'name' => 'return_format',
|
||||||
'layout' => 'horizontal',
|
|
||||||
'choices' => array(
|
'choices' => array(
|
||||||
'value' => __('Value','acf'),
|
'value' => __('Value','acf'),
|
||||||
'label' => __('Label','acf'),
|
'label' => __('Label','acf'),
|
||||||
|
|
|
||||||
|
|
@ -36,7 +36,6 @@ class acf_field_tab extends acf_field {
|
||||||
$this->label = __("Tab",'acf');
|
$this->label = __("Tab",'acf');
|
||||||
$this->category = 'layout';
|
$this->category = 'layout';
|
||||||
$this->defaults = array(
|
$this->defaults = array(
|
||||||
'value' => false, // prevents ACF from attempting to load value
|
|
||||||
'placement' => 'top',
|
'placement' => 'top',
|
||||||
'endpoint' => 0 // added in 5.2.8
|
'endpoint' => 0 // added in 5.2.8
|
||||||
);
|
);
|
||||||
|
|
@ -124,42 +123,45 @@ class acf_field_tab extends acf_field {
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('End-point','acf'),
|
'label' => __('End-point','acf'),
|
||||||
'instructions' => __('Use this field as an end-point and start a new group of tabs','acf'),
|
'instructions' => __('Use this field as an end-point and start a new group of tabs','acf'),
|
||||||
'type' => 'radio',
|
|
||||||
'name' => 'endpoint',
|
'name' => 'endpoint',
|
||||||
'choices' => array(
|
'type' => 'true_false',
|
||||||
1 => __("Yes",'acf'),
|
'ui' => 1,
|
||||||
0 => __("No",'acf'),
|
|
||||||
),
|
|
||||||
'layout' => 'horizontal',
|
|
||||||
));
|
));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* update_field()
|
* load_field()
|
||||||
*
|
*
|
||||||
* This filter is appied to the $field before it is saved to the database
|
* This filter is appied to the $field after it is loaded from the database
|
||||||
*
|
*
|
||||||
* @type filter
|
* @type filter
|
||||||
* @since 3.6
|
* @since 3.6
|
||||||
* @date 23/01/13
|
* @date 23/01/13
|
||||||
*
|
*
|
||||||
* @param $field - the field array holding all the field options
|
* @param $field - the field array holding all the field options
|
||||||
* @param $post_id - the field group ID (post_type = acf)
|
|
||||||
*
|
*
|
||||||
* @return $field - the modified field
|
* @return $field - the field array holding all the field options
|
||||||
*/
|
*/
|
||||||
|
|
||||||
function update_field( $field ) {
|
function load_field( $field ) {
|
||||||
|
|
||||||
// remove name
|
// remove name to avoid caching issue
|
||||||
$field['name'] = '';
|
$field['name'] = '';
|
||||||
|
|
||||||
|
|
||||||
|
// remove required to avoid JS issues
|
||||||
$field['required'] = 0;
|
$field['required'] = 0;
|
||||||
|
|
||||||
|
|
||||||
|
// set value other than 'null' to avoid ACF loading / caching issue
|
||||||
|
$field['value'] = false;
|
||||||
|
|
||||||
|
|
||||||
// return
|
// return
|
||||||
return $field;
|
return $field;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -192,9 +192,17 @@ class acf_field_taxonomy extends acf_field {
|
||||||
|
|
||||||
// this will fail if a search has taken place because parents wont exist
|
// this will fail if a search has taken place because parents wont exist
|
||||||
if( !$is_search ) {
|
if( !$is_search ) {
|
||||||
|
|
||||||
$terms = _get_term_children( $parent, $terms, $field['taxonomy'] );
|
|
||||||
|
|
||||||
|
// order terms
|
||||||
|
$ordered_terms = _get_term_children( $parent, $terms, $field['taxonomy'] );
|
||||||
|
|
||||||
|
|
||||||
|
// check for empty array (possible if parent did not exist within original data)
|
||||||
|
if( !empty($ordered_terms) ) {
|
||||||
|
|
||||||
|
$terms = $ordered_terms;
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -786,13 +794,9 @@ class acf_field_taxonomy extends acf_field {
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Allow Null?','acf'),
|
'label' => __('Allow Null?','acf'),
|
||||||
'instructions' => '',
|
'instructions' => '',
|
||||||
'type' => 'radio',
|
|
||||||
'name' => 'allow_null',
|
'name' => 'allow_null',
|
||||||
'choices' => array(
|
'type' => 'true_false',
|
||||||
1 => __("Yes",'acf'),
|
'ui' => 1,
|
||||||
0 => __("No",'acf'),
|
|
||||||
),
|
|
||||||
'layout' => 'horizontal',
|
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -800,13 +804,9 @@ class acf_field_taxonomy extends acf_field {
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Create Terms','acf'),
|
'label' => __('Create Terms','acf'),
|
||||||
'instructions' => __('Allow new terms to be created whilst editing','acf'),
|
'instructions' => __('Allow new terms to be created whilst editing','acf'),
|
||||||
'type' => 'radio',
|
|
||||||
'name' => 'add_term',
|
'name' => 'add_term',
|
||||||
'choices' => array(
|
'type' => 'true_false',
|
||||||
1 => __("Yes",'acf'),
|
'ui' => 1,
|
||||||
0 => __("No",'acf'),
|
|
||||||
),
|
|
||||||
'layout' => 'horizontal',
|
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -814,13 +814,9 @@ class acf_field_taxonomy extends acf_field {
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Save Terms','acf'),
|
'label' => __('Save Terms','acf'),
|
||||||
'instructions' => __('Connect selected terms to the post','acf'),
|
'instructions' => __('Connect selected terms to the post','acf'),
|
||||||
'type' => 'radio',
|
|
||||||
'name' => 'save_terms',
|
'name' => 'save_terms',
|
||||||
'choices' => array(
|
'type' => 'true_false',
|
||||||
1 => __("Yes",'acf'),
|
'ui' => 1,
|
||||||
0 => __("No",'acf'),
|
|
||||||
),
|
|
||||||
'layout' => 'horizontal',
|
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -828,13 +824,9 @@ class acf_field_taxonomy extends acf_field {
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Load Terms','acf'),
|
'label' => __('Load Terms','acf'),
|
||||||
'instructions' => __('Load value from posts terms','acf'),
|
'instructions' => __('Load value from posts terms','acf'),
|
||||||
'type' => 'radio',
|
|
||||||
'name' => 'load_terms',
|
'name' => 'load_terms',
|
||||||
'choices' => array(
|
'type' => 'true_false',
|
||||||
1 => __("Yes",'acf'),
|
'ui' => 1,
|
||||||
0 => __("No",'acf'),
|
|
||||||
),
|
|
||||||
'layout' => 'horizontal',
|
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -905,7 +897,7 @@ class acf_field_taxonomy extends acf_field {
|
||||||
// note: this situation should never occur due to condition of the add new button
|
// note: this situation should never occur due to condition of the add new button
|
||||||
if( !current_user_can( $taxonomy_obj->cap->manage_terms) ) {
|
if( !current_user_can( $taxonomy_obj->cap->manage_terms) ) {
|
||||||
|
|
||||||
echo '<p><strong>' . __("Error", 'acf') . '.</strong> ' . sprintf( __('User unable to add new %s', 'acf'), $taxonomy_label ) . '</p>';
|
echo '<p><strong>' . __("Error.", 'acf') . '</strong> ' . sprintf( __('User unable to add new %s', 'acf'), $taxonomy_label ) . '</p>';
|
||||||
die;
|
die;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -33,11 +33,14 @@ class acf_field_true_false extends acf_field {
|
||||||
|
|
||||||
// vars
|
// vars
|
||||||
$this->name = 'true_false';
|
$this->name = 'true_false';
|
||||||
$this->label = __("True / False",'acf');
|
$this->label = __('True / False','acf');
|
||||||
$this->category = 'choice';
|
$this->category = 'choice';
|
||||||
$this->defaults = array(
|
$this->defaults = array(
|
||||||
'default_value' => 0,
|
'default_value' => 0,
|
||||||
'message' => '',
|
'message' => '',
|
||||||
|
'ui' => 0,
|
||||||
|
'ui_on_text' => '',
|
||||||
|
'ui_off_text' => '',
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -62,27 +65,59 @@ class acf_field_true_false extends acf_field {
|
||||||
function render_field( $field ) {
|
function render_field( $field ) {
|
||||||
|
|
||||||
// vars
|
// vars
|
||||||
$atts = array(
|
$input = array(
|
||||||
'type' => 'checkbox',
|
'type' => 'checkbox',
|
||||||
'id' => "{$field['id']}-1",
|
'id' => $field['id'],
|
||||||
'name' => $field['name'],
|
'name' => $field['name'],
|
||||||
'value' => '1',
|
'value' => '1',
|
||||||
|
'class' => $field['class'],
|
||||||
|
'autocomplete' => 'off'
|
||||||
);
|
);
|
||||||
|
|
||||||
|
$hidden = array(
|
||||||
|
'name' => $field['name'],
|
||||||
|
'value' => 0
|
||||||
|
);
|
||||||
|
|
||||||
|
$active = $field['value'] ? true : false;
|
||||||
|
$switch = '';
|
||||||
|
|
||||||
|
|
||||||
// checked
|
// checked
|
||||||
if( !empty($field['value']) ) {
|
if( $active ) $input['checked'] = 'checked';
|
||||||
|
|
||||||
$atts['checked'] = 'checked';
|
|
||||||
|
// ui
|
||||||
|
if( $field['ui'] ) {
|
||||||
|
|
||||||
|
// vars
|
||||||
|
if( $field['ui_on_text'] === '' ) $field['ui_on_text'] = __('Yes', 'acf');
|
||||||
|
if( $field['ui_off_text'] === '' ) $field['ui_off_text'] = __('No', 'acf');
|
||||||
|
|
||||||
|
|
||||||
|
// update input
|
||||||
|
$input['class'] .= ' acf-switch-input';
|
||||||
|
$input['style'] = 'display:none;';
|
||||||
|
|
||||||
|
$switch .= '<div class="acf-switch' . ($active ? ' -on' : '') . '">';
|
||||||
|
$switch .= '<span class="acf-switch-on">'.$field['ui_on_text'].'</span>';
|
||||||
|
$switch .= '<span class="acf-switch-off">'.$field['ui_off_text'].'</span>';
|
||||||
|
$switch .= '<div class="acf-switch-slider"></div>';
|
||||||
|
$switch .= '</div>';
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
?>
|
||||||
|
<div class="acf-true-false">
|
||||||
|
<?php acf_hidden_input($hidden); ?>
|
||||||
|
<label>
|
||||||
|
<input <?php echo acf_esc_attr($input); ?>/>
|
||||||
|
<?php if( $switch ) echo $switch; ?>
|
||||||
|
<?php if( $field['message'] ): ?><span><?php echo $field['message']; ?></span><?php endif; ?>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
<?php
|
||||||
|
|
||||||
// html
|
|
||||||
echo '<ul class="acf-checkbox-list acf-bl ' . acf_esc_attr($field['class']) . '">';
|
|
||||||
echo '<input type="hidden" name="' . acf_esc_attr($field['name']) . '" value="0" />';
|
|
||||||
echo '<li><label><input ' . acf_esc_attr($atts) . '/>' . $field['message'] . '</label></li>';
|
|
||||||
echo '</ul>';
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -104,7 +139,7 @@ class acf_field_true_false extends acf_field {
|
||||||
// message
|
// message
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Message','acf'),
|
'label' => __('Message','acf'),
|
||||||
'instructions' => __('eg. Show extra content','acf'),
|
'instructions' => __('Displays text alongside the checkbox','acf'),
|
||||||
'type' => 'text',
|
'type' => 'text',
|
||||||
'name' => 'message',
|
'name' => 'message',
|
||||||
));
|
));
|
||||||
|
|
@ -118,6 +153,37 @@ class acf_field_true_false extends acf_field {
|
||||||
'name' => 'default_value',
|
'name' => 'default_value',
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
// ui
|
||||||
|
acf_render_field_setting( $field, array(
|
||||||
|
'label' => __('Stylised UI','acf'),
|
||||||
|
'instructions' => '',
|
||||||
|
'type' => 'true_false',
|
||||||
|
'name' => 'ui',
|
||||||
|
'ui' => 1,
|
||||||
|
'class' => 'acf-field-object-true-false-ui'
|
||||||
|
));
|
||||||
|
|
||||||
|
|
||||||
|
// on_text
|
||||||
|
acf_render_field_setting( $field, array(
|
||||||
|
'label' => __('On Text','acf'),
|
||||||
|
'instructions' => __('Text shown when active','acf'),
|
||||||
|
'type' => 'text',
|
||||||
|
'name' => 'ui_on_text',
|
||||||
|
'placeholder' => __('Yes', 'acf')
|
||||||
|
));
|
||||||
|
|
||||||
|
|
||||||
|
// on_text
|
||||||
|
acf_render_field_setting( $field, array(
|
||||||
|
'label' => __('Off Text','acf'),
|
||||||
|
'instructions' => __('Text shown when inactive','acf'),
|
||||||
|
'type' => 'text',
|
||||||
|
'name' => 'ui_off_text',
|
||||||
|
'placeholder' => __('No', 'acf')
|
||||||
|
));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -198,6 +264,8 @@ class acf_field_true_false extends acf_field {
|
||||||
|
|
||||||
// translate
|
// translate
|
||||||
$field['message'] = acf_translate( $field['message'] );
|
$field['message'] = acf_translate( $field['message'] );
|
||||||
|
$field['ui_on_text'] = acf_translate( $field['ui_on_text'] );
|
||||||
|
$field['ui_off_text'] = acf_translate( $field['ui_off_text'] );
|
||||||
|
|
||||||
|
|
||||||
// return
|
// return
|
||||||
|
|
|
||||||
|
|
@ -393,13 +393,9 @@ class acf_field_user extends acf_field {
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Allow Null?','acf'),
|
'label' => __('Allow Null?','acf'),
|
||||||
'instructions' => '',
|
'instructions' => '',
|
||||||
'type' => 'radio',
|
|
||||||
'name' => 'allow_null',
|
'name' => 'allow_null',
|
||||||
'choices' => array(
|
'type' => 'true_false',
|
||||||
1 => __("Yes",'acf'),
|
'ui' => 1,
|
||||||
0 => __("No",'acf'),
|
|
||||||
),
|
|
||||||
'layout' => 'horizontal',
|
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -407,13 +403,9 @@ class acf_field_user extends acf_field {
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Select multiple values?','acf'),
|
'label' => __('Select multiple values?','acf'),
|
||||||
'instructions' => '',
|
'instructions' => '',
|
||||||
'type' => 'radio',
|
|
||||||
'name' => 'multiple',
|
'name' => 'multiple',
|
||||||
'choices' => array(
|
'type' => 'true_false',
|
||||||
1 => __("Yes",'acf'),
|
'ui' => 1,
|
||||||
0 => __("No",'acf'),
|
|
||||||
),
|
|
||||||
'layout' => 'horizontal',
|
|
||||||
));
|
));
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -40,6 +40,7 @@ class acf_field_wysiwyg extends acf_field {
|
||||||
'toolbar' => 'full',
|
'toolbar' => 'full',
|
||||||
'media_upload' => 1,
|
'media_upload' => 1,
|
||||||
'default_value' => '',
|
'default_value' => '',
|
||||||
|
'delay' => 0
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -140,57 +141,52 @@ class acf_field_wysiwyg extends acf_field {
|
||||||
|
|
||||||
|
|
||||||
// vars
|
// vars
|
||||||
$toolbars = array();
|
|
||||||
$editor_id = 'acf_content';
|
$editor_id = 'acf_content';
|
||||||
|
|
||||||
|
|
||||||
if( version_compare($wp_version, '3.9', '>=' ) ) {
|
// toolbars
|
||||||
|
$toolbars = array();
|
||||||
|
$mce_buttons = 'formatselect, bold, italic, bullist, numlist, blockquote, alignleft, aligncenter, alignright, link, unlink, wp_more, spellchecker, fullscreen, wp_adv';
|
||||||
|
$mce_buttons_2 = 'strikethrough, hr, forecolor, pastetext, removeformat, charmap, outdent, indent, undo, redo, wp_help';
|
||||||
|
$teeny_mce_buttons = 'bold, italic, underline, blockquote, strikethrough, bullist, numlist, alignleft, aligncenter, alignright, undo, redo, link, unlink, fullscreen';
|
||||||
|
|
||||||
// Full
|
|
||||||
$toolbars['Full'] = array(
|
// WP < 3.9
|
||||||
|
if( acf_version_compare('wp', '<', '3.9') ) {
|
||||||
1 => apply_filters('mce_buttons', array('bold', 'italic', 'strikethrough', 'bullist', 'numlist', 'blockquote', 'hr', 'alignleft', 'aligncenter', 'alignright', 'link', 'unlink', 'wp_more', 'spellchecker', 'fullscreen', 'wp_adv' ), $editor_id),
|
|
||||||
|
|
||||||
2 => apply_filters('mce_buttons_2', array( 'formatselect', 'underline', 'alignjustify', 'forecolor', 'pastetext', 'removeformat', 'charmap', 'outdent', 'indent', 'undo', 'redo', 'wp_help' ), $editor_id),
|
|
||||||
|
|
||||||
3 => apply_filters('mce_buttons_3', array(), $editor_id),
|
|
||||||
|
|
||||||
4 => apply_filters('mce_buttons_4', array(), $editor_id),
|
|
||||||
|
|
||||||
);
|
|
||||||
|
|
||||||
|
$mce_buttons = 'bold, italic, strikethrough, bullist, numlist, blockquote, justifyleft, justifycenter, justifyright, link, unlink, wp_more, spellchecker, fullscreen, wp_adv';
|
||||||
// Basic
|
$mce_buttons_2 = 'formatselect, underline, justifyfull, forecolor, pastetext, pasteword, removeformat, charmap, outdent, indent, undo, redo, wp_help';
|
||||||
$toolbars['Basic'] = array(
|
$teeny_mce_buttons = 'bold, italic, underline, blockquote, strikethrough, bullist, numlist, justifyleft, justifycenter, justifyright, undo, redo, link, unlink, fullscreen';
|
||||||
|
|
||||||
1 => apply_filters('teeny_mce_buttons', array('bold', 'italic', 'underline', 'blockquote', 'strikethrough', 'bullist', 'numlist', 'alignleft', 'aligncenter', 'alignright', 'undo', 'redo', 'link', 'unlink', 'fullscreen'), $editor_id),
|
// WP < 4.7
|
||||||
|
} elseif( acf_version_compare('wp', '<', '4.7') ) {
|
||||||
);
|
|
||||||
|
$mce_buttons = 'bold, italic, strikethrough, bullist, numlist, blockquote, hr, alignleft, aligncenter, alignright, link, unlink, wp_more, spellchecker, fullscreen, wp_adv';
|
||||||
} else {
|
$mce_buttons_2 = 'formatselect, underline, alignjustify, forecolor, pastetext, removeformat, charmap, outdent, indent, undo, redo, wp_help';
|
||||||
|
//$teeny_mce_buttons = 'bold, italic, underline, blockquote, strikethrough, bullist, numlist, alignleft, aligncenter, alignright, undo, redo, link, unlink, fullscreen';
|
||||||
// Full
|
|
||||||
$toolbars['Full'] = array(
|
}
|
||||||
|
|
||||||
1 => apply_filters('mce_buttons', array('bold', 'italic', 'strikethrough', 'bullist', 'numlist', 'blockquote', 'justifyleft', 'justifycenter', 'justifyright', 'link', 'unlink', 'wp_more', 'spellchecker', 'fullscreen', 'wp_adv' ), $editor_id),
|
|
||||||
|
// explode
|
||||||
2 => apply_filters('mce_buttons_2', array( 'formatselect', 'underline', 'justifyfull', 'forecolor', 'pastetext', 'pasteword', 'removeformat', 'charmap', 'outdent', 'indent', 'undo', 'redo', 'wp_help' ), $editor_id),
|
$mce_buttons = explode(', ', $mce_buttons);
|
||||||
|
$mce_buttons_2 = explode(', ', $mce_buttons_2);
|
||||||
3 => apply_filters('mce_buttons_3', array(), $editor_id),
|
$teeny_mce_buttons = explode(', ', $teeny_mce_buttons);
|
||||||
|
|
||||||
4 => apply_filters('mce_buttons_4', array(), $editor_id),
|
|
||||||
|
// Full
|
||||||
);
|
$toolbars['Full'] = array(
|
||||||
|
1 => apply_filters('mce_buttons', $mce_buttons, $editor_id),
|
||||||
|
2 => apply_filters('mce_buttons_2', $mce_buttons_2, $editor_id),
|
||||||
// Basic
|
3 => apply_filters('mce_buttons_3', array(), $editor_id),
|
||||||
$toolbars['Basic'] = array(
|
4 => apply_filters('mce_buttons_4', array(), $editor_id)
|
||||||
|
);
|
||||||
1 => apply_filters( 'teeny_mce_buttons', array('bold', 'italic', 'underline', 'blockquote', 'strikethrough', 'bullist', 'numlist', 'justifyleft', 'justifycenter', 'justifyright', 'undo', 'redo', 'link', 'unlink', 'fullscreen'), $editor_id ),
|
|
||||||
|
|
||||||
);
|
// Basic
|
||||||
|
$toolbars['Basic'] = array(
|
||||||
}
|
1 => apply_filters('teeny_mce_buttons', $teeny_mce_buttons, $editor_id)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
// Filter for 3rd party
|
// Filter for 3rd party
|
||||||
|
|
@ -364,8 +360,24 @@ acf.fields.wysiwyg.toolbars = <?php echo json_encode($json); ?>;
|
||||||
// filter
|
// filter
|
||||||
$field['value'] = apply_filters( 'acf_the_editor_content', $field['value'], $default_editor );
|
$field['value'] = apply_filters( 'acf_the_editor_content', $field['value'], $default_editor );
|
||||||
|
|
||||||
|
|
||||||
|
// attr
|
||||||
|
$wrap = array(
|
||||||
|
'id' => 'wp-' . $id . '-wrap',
|
||||||
|
'class' => 'acf-editor-wrap wp-core-ui wp-editor-wrap ' . $switch_class,
|
||||||
|
'data-toolbar' => $field['toolbar']
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// delay
|
||||||
|
if( $field['delay'] ) {
|
||||||
|
|
||||||
|
$wrap['class'] .= ' delay';
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
<div id="wp-<?php echo $id; ?>-wrap" class="acf-editor-wrap wp-core-ui wp-editor-wrap <?php echo $switch_class; ?>" data-toolbar="<?php echo $field['toolbar']; ?>" data-upload="<?php echo $field['media_upload']; ?>">
|
<div <?php echo acf_esc_attr($wrap); ?>>
|
||||||
<div id="wp-<?php echo $id; ?>-editor-tools" class="wp-editor-tools hide-if-no-js">
|
<div id="wp-<?php echo $id; ?>-editor-tools" class="wp-editor-tools hide-if-no-js">
|
||||||
<?php if( $field['media_upload'] ): ?>
|
<?php if( $field['media_upload'] ): ?>
|
||||||
<div id="wp-<?php echo $id; ?>-media-buttons" class="wp-media-buttons">
|
<div id="wp-<?php echo $id; ?>-media-buttons" class="wp-media-buttons">
|
||||||
|
|
@ -374,12 +386,15 @@ acf.fields.wysiwyg.toolbars = <?php echo json_encode($json); ?>;
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
<?php if( user_can_richedit() && $show_tabs ): ?>
|
<?php if( user_can_richedit() && $show_tabs ): ?>
|
||||||
<div class="wp-editor-tabs">
|
<div class="wp-editor-tabs">
|
||||||
<button id="<?php echo $id; ?>-tmce" class="wp-switch-editor switch-tmce" <?php echo $button; ?> type="button"><?php echo __('Visual', 'acf'); ?></button>
|
<button id="<?php echo $id; ?>-tmce" class="wp-switch-editor switch-tmce" <?php echo $button; ?> type="button"><?php echo __('Visual', 'acf'); ?></button>
|
||||||
<button id="<?php echo $id; ?>-html" class="wp-switch-editor switch-html" <?php echo $button; ?> type="button"><?php echo _x( 'Text', 'Name for the Text editor tab (formerly HTML)', 'acf' ); ?></button>
|
<button id="<?php echo $id; ?>-html" class="wp-switch-editor switch-html" <?php echo $button; ?> type="button"><?php echo _x( 'Text', 'Name for the Text editor tab (formerly HTML)', 'acf' ); ?></button>
|
||||||
</div>
|
</div>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
</div>
|
</div>
|
||||||
<div id="wp-<?php echo $id; ?>-editor-container" class="wp-editor-container">
|
<div id="wp-<?php echo $id; ?>-editor-container" class="wp-editor-container">
|
||||||
|
<?php if( $field['delay'] ): ?>
|
||||||
|
<div class="acf-editor-toolbar"><?php _e('Click to initialize TinyMCE', 'acf'); ?></div>
|
||||||
|
<?php endif; ?>
|
||||||
<textarea id="<?php echo $id; ?>" class="wp-editor-area" name="<?php echo $field['name']; ?>" <?php if($height): ?>style="height:<?php echo $height; ?>px;"<?php endif; ?>><?php echo $field['value']; ?></textarea>
|
<textarea id="<?php echo $id; ?>" class="wp-editor-area" name="<?php echo $field['name']; ?>" <?php if($height): ?>style="height:<?php echo $height; ?>px;"<?php endif; ?>><?php echo $field['value']; ?></textarea>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -457,13 +472,19 @@ acf.fields.wysiwyg.toolbars = <?php echo json_encode($json); ?>;
|
||||||
acf_render_field_setting( $field, array(
|
acf_render_field_setting( $field, array(
|
||||||
'label' => __('Show Media Upload Buttons?','acf'),
|
'label' => __('Show Media Upload Buttons?','acf'),
|
||||||
'instructions' => '',
|
'instructions' => '',
|
||||||
'type' => 'radio',
|
|
||||||
'name' => 'media_upload',
|
'name' => 'media_upload',
|
||||||
'layout' => 'horizontal',
|
'type' => 'true_false',
|
||||||
'choices' => array(
|
'ui' => 1,
|
||||||
1 => __("Yes",'acf'),
|
));
|
||||||
0 => __("No",'acf'),
|
|
||||||
)
|
|
||||||
|
// delay
|
||||||
|
acf_render_field_setting( $field, array(
|
||||||
|
'label' => __('Delay initialization?','acf'),
|
||||||
|
'instructions' => __('TinyMCE will not be initalized until field is clicked','acf'),
|
||||||
|
'name' => 'delay',
|
||||||
|
'type' => 'true_false',
|
||||||
|
'ui' => 1,
|
||||||
));
|
));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -387,20 +387,15 @@ class acf_form_taxonomy {
|
||||||
function save_term( $term_id, $tt_id, $taxonomy ) {
|
function save_term( $term_id, $tt_id, $taxonomy ) {
|
||||||
|
|
||||||
// verify and remove nonce
|
// verify and remove nonce
|
||||||
if( ! acf_verify_nonce('taxonomy') ) {
|
if( !acf_verify_nonce('taxonomy') ) return $term_id;
|
||||||
|
|
||||||
|
|
||||||
|
// valied and show errors
|
||||||
|
acf_validate_save_post( true );
|
||||||
|
|
||||||
return $term_id;
|
|
||||||
|
// save
|
||||||
}
|
acf_save_post('term_' . $term_id);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// save data
|
|
||||||
if( acf_validate_save_post(true) ) {
|
|
||||||
|
|
||||||
acf_save_post("{$taxonomy}_{$term_id}");
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -420,11 +415,30 @@ class acf_form_taxonomy {
|
||||||
|
|
||||||
function delete_term( $term, $tt_id, $taxonomy, $deleted_term ) {
|
function delete_term( $term, $tt_id, $taxonomy, $deleted_term ) {
|
||||||
|
|
||||||
|
// bail early if termmeta table exists
|
||||||
|
if( acf_isset_termmeta() ) return $term;
|
||||||
|
|
||||||
|
|
||||||
|
// globals
|
||||||
global $wpdb;
|
global $wpdb;
|
||||||
|
|
||||||
$values = $wpdb->query($wpdb->prepare(
|
|
||||||
"DELETE FROM $wpdb->options WHERE option_name LIKE %s",
|
// vars
|
||||||
'%' . $taxonomy . '_' . $term . '%'
|
$search = $taxonomy . '_' . $term . '_%';
|
||||||
|
$_search = '_' . $search;
|
||||||
|
|
||||||
|
|
||||||
|
// escape '_'
|
||||||
|
// http://stackoverflow.com/questions/2300285/how-do-i-escape-in-sql-server
|
||||||
|
$search = str_replace('_', '\_', $search);
|
||||||
|
$_search = str_replace('_', '\_', $_search);
|
||||||
|
|
||||||
|
|
||||||
|
// delete
|
||||||
|
$result = $wpdb->query($wpdb->prepare(
|
||||||
|
"DELETE FROM $wpdb->options WHERE option_name LIKE %s OR option_name LIKE %s",
|
||||||
|
$search,
|
||||||
|
$_search
|
||||||
));
|
));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -215,7 +215,7 @@ class acf_form_user {
|
||||||
|
|
||||||
|
|
||||||
// show title
|
// show title
|
||||||
if( $user_form === 'register' ) $show_title = false;
|
//if( $user_form === 'register' ) $show_title = false;
|
||||||
|
|
||||||
|
|
||||||
// args
|
// args
|
||||||
|
|
@ -324,6 +324,19 @@ class acf_form_user {
|
||||||
|
|
||||||
<?php else: ?>
|
<?php else: ?>
|
||||||
|
|
||||||
|
#registerform h2 {
|
||||||
|
margin: 1em 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#registerform .acf-field .acf-label {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#registerform .acf-field .acf-label label {
|
||||||
|
font-weight: normal;
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
#registerform p.submit {
|
#registerform p.submit {
|
||||||
text-align: right;
|
text-align: right;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
BIN
lang/acf-ar.mo
BIN
lang/acf-ar.mo
Binary file not shown.
|
|
@ -2,14 +2,14 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Advanced Custom Fields Pro\n"
|
"Project-Id-Version: Advanced Custom Fields Pro\n"
|
||||||
"POT-Creation-Date: 2016-05-19 15:59+0200\n"
|
"POT-Creation-Date: 2016-05-19 15:59+0200\n"
|
||||||
"PO-Revision-Date: 2016-05-24 12:56+0200\n"
|
"PO-Revision-Date: 2016-11-03 17:07+1000\n"
|
||||||
"Last-Translator: \n"
|
"Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
|
||||||
"Language-Team: Adil el hallaoui <servicewb11@gmail.com>\n"
|
"Language-Team: Adil el hallaoui <servicewb11@gmail.com>\n"
|
||||||
"Language: ar\n"
|
"Language: ar\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"X-Generator: Poedit 1.8.2\n"
|
"X-Generator: Poedit 1.8.1\n"
|
||||||
"X-Poedit-Basepath: ..\n"
|
"X-Poedit-Basepath: ..\n"
|
||||||
"X-Poedit-WPHeader: acf.php\n"
|
"X-Poedit-WPHeader: acf.php\n"
|
||||||
"Plural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
|
"Plural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
|
||||||
|
|
@ -593,6 +593,10 @@ msgstr "حذف"
|
||||||
msgid "Error"
|
msgid "Error"
|
||||||
msgstr "خطأ"
|
msgstr "خطأ"
|
||||||
|
|
||||||
|
#: fields/oembed.php:220 fields/taxonomy.php:900
|
||||||
|
msgid "Error."
|
||||||
|
msgstr "خطأ."
|
||||||
|
|
||||||
#: admin/views/field-group-field.php:68
|
#: admin/views/field-group-field.php:68
|
||||||
msgid "Field type does not exist"
|
msgid "Field type does not exist"
|
||||||
msgstr "نوع حقل غير موجود"
|
msgstr "نوع حقل غير موجود"
|
||||||
|
|
@ -1267,12 +1271,8 @@ msgid "Site is up to date"
|
||||||
msgstr "الموقع حتى الآن"
|
msgstr "الموقع حتى الآن"
|
||||||
|
|
||||||
#: admin/views/update-network.php:62 admin/views/update.php:16
|
#: admin/views/update-network.php:62 admin/views/update.php:16
|
||||||
msgid "Database Upgrade complete"
|
msgid "Database Upgrade complete. <a href=\"%s\">Return to network dashboard</a>"
|
||||||
msgstr "ترقية قاعدة البيانات كاملة"
|
msgstr "ترقية قاعدة البيانات كاملة. <a href=\"%s\">العودة إلى لوحة معلومات الشبكة</a>"
|
||||||
|
|
||||||
#: admin/views/update-network.php:62
|
|
||||||
msgid "Return to network dashboard"
|
|
||||||
msgstr "العودة إلى لوحة معلومات الشبكة"
|
|
||||||
|
|
||||||
#: admin/views/update-network.php:101 admin/views/update-notice.php:35
|
#: admin/views/update-network.php:101 admin/views/update-notice.php:35
|
||||||
msgid ""
|
msgid ""
|
||||||
|
|
@ -1321,8 +1321,8 @@ msgid "See what's new"
|
||||||
msgstr "أنظر ما هو الجديد في"
|
msgstr "أنظر ما هو الجديد في"
|
||||||
|
|
||||||
#: admin/views/update.php:110
|
#: admin/views/update.php:110
|
||||||
msgid "No updates available"
|
msgid "No updates available."
|
||||||
msgstr "لا توجد تحديثات متوفرة"
|
msgstr "لا توجد تحديثات متوفرة."
|
||||||
|
|
||||||
#: api/api-helpers.php:937
|
#: api/api-helpers.php:937
|
||||||
msgid "Thumbnail"
|
msgid "Thumbnail"
|
||||||
|
|
@ -1873,8 +1873,8 @@ msgid "Enter URL"
|
||||||
msgstr "قم بإدخال عنوان URL"
|
msgstr "قم بإدخال عنوان URL"
|
||||||
|
|
||||||
#: fields/oembed.php:225
|
#: fields/oembed.php:225
|
||||||
msgid "No embed found for the given URL"
|
msgid "No embed found for the given URL."
|
||||||
msgstr "تضمين لا العثور على عنوان URL معين"
|
msgstr "تضمين لا العثور على عنوان URL معين."
|
||||||
|
|
||||||
#: fields/oembed.php:261 fields/oembed.php:272
|
#: fields/oembed.php:261 fields/oembed.php:272
|
||||||
msgid "Embed Size"
|
msgid "Embed Size"
|
||||||
|
|
@ -2260,12 +2260,8 @@ msgid "Options Updated"
|
||||||
msgstr "تم تحديث الإعدادات"
|
msgstr "تم تحديث الإعدادات"
|
||||||
|
|
||||||
#: pro/admin/options-page.php:282
|
#: pro/admin/options-page.php:282
|
||||||
msgid "No Custom Field Groups found for this options page"
|
msgid "No Custom Field Groups found for this options page. <a href=\"%s\">Create a Custom Field Group</a>"
|
||||||
msgstr "يتم العثور على أية \"مجموعات حقل مخصص\" لهذه الصفحة خيارات"
|
msgstr "يتم العثور على أية \"مجموعات حقل مخصص\" لهذه الصفحة خيارات. <a href=\"%s\">قم بإنشاء مجموعة حقل مخصص</a>"
|
||||||
|
|
||||||
#: pro/admin/options-page.php:282
|
|
||||||
msgid "Create a Custom Field Group"
|
|
||||||
msgstr "قم بإنشاء مجموعة حقل مخصص"
|
|
||||||
|
|
||||||
#: pro/admin/settings-updates.php:137
|
#: pro/admin/settings-updates.php:137
|
||||||
msgid "<b>Error</b>. Could not connect to update server"
|
msgid "<b>Error</b>. Could not connect to update server"
|
||||||
|
|
|
||||||
Binary file not shown.
|
|
@ -3,7 +3,7 @@ msgstr ""
|
||||||
"Project-Id-Version: Advanced Custom Fields\n"
|
"Project-Id-Version: Advanced Custom Fields\n"
|
||||||
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
||||||
"POT-Creation-Date: 2016-02-05 11:05+1000\n"
|
"POT-Creation-Date: 2016-02-05 11:05+1000\n"
|
||||||
"PO-Revision-Date: 2016-04-07 10:29+1000\n"
|
"PO-Revision-Date: 2016-11-03 17:07+1000\n"
|
||||||
"Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
|
"Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
|
||||||
"Language-Team: Elliot Condon <e@elliotcondon.com>\n"
|
"Language-Team: Elliot Condon <e@elliotcondon.com>\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
|
|
@ -578,6 +578,10 @@ msgstr "Изтриване"
|
||||||
msgid "Error"
|
msgid "Error"
|
||||||
msgstr "Грешка"
|
msgstr "Грешка"
|
||||||
|
|
||||||
|
#: fields/oembed.php:220 fields/taxonomy.php:900
|
||||||
|
msgid "Error."
|
||||||
|
msgstr "Грешка."
|
||||||
|
|
||||||
#: admin/views/field-group-field.php:68
|
#: admin/views/field-group-field.php:68
|
||||||
msgid "Field type does not exist"
|
msgid "Field type does not exist"
|
||||||
msgstr "Типът поле не съществува"
|
msgstr "Типът поле не съществува"
|
||||||
|
|
@ -1272,12 +1276,8 @@ msgid "Site is up to date"
|
||||||
msgstr "Сайтът няма нужда от обновяване"
|
msgstr "Сайтът няма нужда от обновяване"
|
||||||
|
|
||||||
#: admin/views/update-network.php:62 admin/views/update.php:16
|
#: admin/views/update-network.php:62 admin/views/update.php:16
|
||||||
msgid "Database Upgrade complete"
|
msgid "Database Upgrade complete. <a href=\"%s\">Return to network dashboard</a>"
|
||||||
msgstr "Обновяването на базата данни бе завършено"
|
msgstr "Обновяването на базата данни бе завършено. <a href=\"%s\">Връщане към мрежовото табло</a>"
|
||||||
|
|
||||||
#: admin/views/update-network.php:62
|
|
||||||
msgid "Return to network dashboard"
|
|
||||||
msgstr "Връщане към мрежовото табло"
|
|
||||||
|
|
||||||
#: admin/views/update-network.php:101 admin/views/update-notice.php:35
|
#: admin/views/update-network.php:101 admin/views/update-notice.php:35
|
||||||
msgid ""
|
msgid ""
|
||||||
|
|
@ -1326,8 +1326,8 @@ msgid "See what's new"
|
||||||
msgstr "Вижте какво е новото"
|
msgstr "Вижте какво е новото"
|
||||||
|
|
||||||
#: admin/views/update.php:110
|
#: admin/views/update.php:110
|
||||||
msgid "No updates available"
|
msgid "No updates available."
|
||||||
msgstr "Няма налични актуализации"
|
msgstr "Няма налични актуализации."
|
||||||
|
|
||||||
#: api/api-helpers.php:909
|
#: api/api-helpers.php:909
|
||||||
msgid "Thumbnail"
|
msgid "Thumbnail"
|
||||||
|
|
@ -1878,8 +1878,8 @@ msgid "Enter URL"
|
||||||
msgstr "Въведете URL адрес"
|
msgstr "Въведете URL адрес"
|
||||||
|
|
||||||
#: fields/oembed.php:225
|
#: fields/oembed.php:225
|
||||||
msgid "No embed found for the given URL"
|
msgid "No embed found for the given URL."
|
||||||
msgstr "Няма открито вграждане за посочения URL адрес"
|
msgstr "Няма открито вграждане за посочения URL адрес."
|
||||||
|
|
||||||
#: fields/oembed.php:261 fields/oembed.php:272
|
#: fields/oembed.php:261 fields/oembed.php:272
|
||||||
msgid "Embed Size"
|
msgid "Embed Size"
|
||||||
|
|
@ -2262,12 +2262,8 @@ msgid "Options Updated"
|
||||||
msgstr "Опциите бяха актуализирани"
|
msgstr "Опциите бяха актуализирани"
|
||||||
|
|
||||||
#: pro/admin/options-page.php:282
|
#: pro/admin/options-page.php:282
|
||||||
msgid "No Custom Field Groups found for this options page"
|
msgid "No Custom Field Groups found for this options page. <a href=\"%s\">Create a Custom Field Group</a>"
|
||||||
msgstr "Няма намерени групи полета за тази страница с опции"
|
msgstr "Няма намерени групи полета за тази страница с опции. <a href=\"%s\">Създаване на група полета</a>"
|
||||||
|
|
||||||
#: pro/admin/options-page.php:282
|
|
||||||
msgid "Create a Custom Field Group"
|
|
||||||
msgstr "Създаване на група полета"
|
|
||||||
|
|
||||||
#: pro/admin/settings-updates.php:137
|
#: pro/admin/settings-updates.php:137
|
||||||
msgid "<b>Error</b>. Could not connect to update server"
|
msgid "<b>Error</b>. Could not connect to update server"
|
||||||
|
|
|
||||||
Binary file not shown.
|
|
@ -3,7 +3,7 @@ msgstr ""
|
||||||
"Project-Id-Version: Advanced Custom Fields Pro v5.2.9\n"
|
"Project-Id-Version: Advanced Custom Fields Pro v5.2.9\n"
|
||||||
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
||||||
"POT-Creation-Date: 2015-08-11 23:09+0200\n"
|
"POT-Creation-Date: 2015-08-11 23:09+0200\n"
|
||||||
"PO-Revision-Date: 2016-04-07 10:29+1000\n"
|
"PO-Revision-Date: 2016-11-03 17:08+1000\n"
|
||||||
"Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
|
"Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
|
||||||
"Language-Team: webees.cz s.r.o. <jakubmachala@webees.cz>\n"
|
"Language-Team: webees.cz s.r.o. <jakubmachala@webees.cz>\n"
|
||||||
"Language: cs_CZ\n"
|
"Language: cs_CZ\n"
|
||||||
|
|
@ -579,6 +579,10 @@ msgstr "Smazat"
|
||||||
msgid "Error"
|
msgid "Error"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: fields/oembed.php:220 fields/taxonomy.php:900
|
||||||
|
msgid "Error."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: admin/views/field-group-field.php:68
|
#: admin/views/field-group-field.php:68
|
||||||
msgid "Field type does not exist"
|
msgid "Field type does not exist"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
@ -1224,11 +1228,7 @@ msgid "Site is up to date"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: admin/views/update-network.php:62 admin/views/update.php:16
|
#: admin/views/update-network.php:62 admin/views/update.php:16
|
||||||
msgid "Database Upgrade complete"
|
msgid "Database Upgrade complete. <a href=\"%s\">Return to network dashboard</a>"
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: admin/views/update-network.php:62
|
|
||||||
msgid "Return to network dashboard"
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: admin/views/update-network.php:101 admin/views/update-notice.php:35
|
#: admin/views/update-network.php:101 admin/views/update-notice.php:35
|
||||||
|
|
@ -1274,7 +1274,7 @@ msgid "See what's new"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: admin/views/update.php:110
|
#: admin/views/update.php:110
|
||||||
msgid "No updates available"
|
msgid "No updates available."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: api/api-helpers.php:821
|
#: api/api-helpers.php:821
|
||||||
|
|
@ -1797,7 +1797,7 @@ msgid "Enter URL"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: fields/oembed.php:212
|
#: fields/oembed.php:212
|
||||||
msgid "No embed found for the given URL"
|
msgid "No embed found for the given URL."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: fields/oembed.php:248 fields/oembed.php:259
|
#: fields/oembed.php:248 fields/oembed.php:259
|
||||||
|
|
@ -2200,13 +2200,9 @@ msgid "Options Updated"
|
||||||
msgstr "Nastavení aktualizováno"
|
msgstr "Nastavení aktualizováno"
|
||||||
|
|
||||||
#: pro/admin/options-page.php:304
|
#: pro/admin/options-page.php:304
|
||||||
msgid "No Custom Field Groups found for this options page"
|
msgid "No Custom Field Groups found for this options page. <a href=\"%s\">Create a Custom Field Group</a>"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: pro/admin/options-page.php:304
|
|
||||||
msgid "Create a Custom Field Group"
|
|
||||||
msgstr "Vytvořit vlastní skupinu polí"
|
|
||||||
|
|
||||||
#: pro/admin/settings-updates.php:137
|
#: pro/admin/settings-updates.php:137
|
||||||
msgid "<b>Error</b>. Could not connect to update server"
|
msgid "<b>Error</b>. Could not connect to update server"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
|
||||||
Binary file not shown.
|
|
@ -1,17 +1,17 @@
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Advanced Custom Fields Pro v5.4.0\n"
|
"Project-Id-Version: Advanced Custom Fields Pro v5.5.0\n"
|
||||||
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
||||||
"POT-Creation-Date: 2016-07-28 10:37+0200\n"
|
"POT-Creation-Date: 2016-10-14 08:58+0200\n"
|
||||||
"PO-Revision-Date: 2016-07-28 10:53+0200\n"
|
"PO-Revision-Date: 2016-11-03 17:08+1000\n"
|
||||||
"Last-Translator: Raphael Hüni <rafhun@gmail.com>\n"
|
"Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
|
||||||
"Language-Team: Raphael Hüni <rafhun@gmail.com>\n"
|
"Language-Team: Raphael Hüni <rafhun@gmail.com>\n"
|
||||||
"Language: de_CH\n"
|
"Language: de_CH\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Generator: Poedit 1.8.5\n"
|
"X-Generator: Poedit 1.8.1\n"
|
||||||
"X-Poedit-SourceCharset: UTF-8\n"
|
"X-Poedit-SourceCharset: UTF-8\n"
|
||||||
"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
|
"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
|
||||||
"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
|
"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
|
||||||
|
|
@ -28,109 +28,109 @@ msgid "Advanced Custom Fields"
|
||||||
msgstr "Advanced Custom Fields"
|
msgstr "Advanced Custom Fields"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: acf.php:271 admin/admin.php:61
|
#: acf.php:273 admin/admin.php:61
|
||||||
msgid "Field Groups"
|
msgid "Field Groups"
|
||||||
msgstr "Feld-Gruppen"
|
msgstr "Feld-Gruppen"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: acf.php:272
|
#: acf.php:274
|
||||||
msgid "Field Group"
|
msgid "Field Group"
|
||||||
msgstr "Feld-Gruppe"
|
msgstr "Feld-Gruppe"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: acf.php:273 acf.php:305 admin/admin.php:62
|
#: acf.php:275 acf.php:307 admin/admin.php:62
|
||||||
#: pro/fields/flexible-content.php:500
|
#: pro/fields/flexible-content.php:500
|
||||||
msgid "Add New"
|
msgid "Add New"
|
||||||
msgstr "Erstellen"
|
msgstr "Erstellen"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: acf.php:274
|
#: acf.php:276
|
||||||
msgid "Add New Field Group"
|
msgid "Add New Field Group"
|
||||||
msgstr "Neue Feld-Gruppe erstellen"
|
msgstr "Neue Feld-Gruppe erstellen"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: acf.php:275
|
#: acf.php:277
|
||||||
msgid "Edit Field Group"
|
msgid "Edit Field Group"
|
||||||
msgstr "Feld-Gruppe bearbeiten"
|
msgstr "Feld-Gruppe bearbeiten"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: acf.php:276
|
#: acf.php:278
|
||||||
msgid "New Field Group"
|
msgid "New Field Group"
|
||||||
msgstr "Neue Feld-Gruppe"
|
msgstr "Neue Feld-Gruppe"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: acf.php:277
|
#: acf.php:279
|
||||||
msgid "View Field Group"
|
msgid "View Field Group"
|
||||||
msgstr "Feld-Gruppe anzeigen"
|
msgstr "Feld-Gruppe anzeigen"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: acf.php:278
|
#: acf.php:280
|
||||||
msgid "Search Field Groups"
|
msgid "Search Field Groups"
|
||||||
msgstr "Feld-Gruppen suchen"
|
msgstr "Feld-Gruppen suchen"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: acf.php:279
|
#: acf.php:281
|
||||||
msgid "No Field Groups found"
|
msgid "No Field Groups found"
|
||||||
msgstr "Keine Feld-Gruppen gefunden"
|
msgstr "Keine Feld-Gruppen gefunden"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: acf.php:280
|
#: acf.php:282
|
||||||
msgid "No Field Groups found in Trash"
|
msgid "No Field Groups found in Trash"
|
||||||
msgstr "Keine Feld-Gruppen im Papierkorb gefunden"
|
msgstr "Keine Feld-Gruppen im Papierkorb gefunden"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: acf.php:303 admin/field-group.php:182 admin/field-group.php:280
|
#: acf.php:305 admin/field-group.php:182 admin/field-group.php:280
|
||||||
#: admin/field-groups.php:528 pro/fields/clone.php:662
|
#: admin/field-groups.php:528 pro/fields/clone.php:688
|
||||||
msgid "Fields"
|
msgid "Fields"
|
||||||
msgstr "Felder"
|
msgstr "Felder"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: acf.php:304
|
#: acf.php:306
|
||||||
msgid "Field"
|
msgid "Field"
|
||||||
msgstr "Feld"
|
msgstr "Feld"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: acf.php:306
|
#: acf.php:308
|
||||||
msgid "Add New Field"
|
msgid "Add New Field"
|
||||||
msgstr "Feld hinzufügen"
|
msgstr "Feld hinzufügen"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: acf.php:307
|
#: acf.php:309
|
||||||
msgid "Edit Field"
|
msgid "Edit Field"
|
||||||
msgstr "Feld bearbeiten"
|
msgstr "Feld bearbeiten"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: acf.php:308 admin/views/field-group-fields.php:54
|
#: acf.php:310 admin/views/field-group-fields.php:54
|
||||||
#: admin/views/settings-info.php:111
|
#: admin/views/settings-info.php:111
|
||||||
msgid "New Field"
|
msgid "New Field"
|
||||||
msgstr "Neues Feld"
|
msgstr "Neues Feld"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: acf.php:309
|
#: acf.php:311
|
||||||
msgid "View Field"
|
msgid "View Field"
|
||||||
msgstr "Feld anzeigen"
|
msgstr "Feld anzeigen"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: acf.php:310
|
#: acf.php:312
|
||||||
msgid "Search Fields"
|
msgid "Search Fields"
|
||||||
msgstr "Felder suchen"
|
msgstr "Felder suchen"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: acf.php:311
|
#: acf.php:313
|
||||||
msgid "No Fields found"
|
msgid "No Fields found"
|
||||||
msgstr "Keine Felder gefunden"
|
msgstr "Keine Felder gefunden"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: acf.php:312
|
#: acf.php:314
|
||||||
msgid "No Fields found in Trash"
|
msgid "No Fields found in Trash"
|
||||||
msgstr "Keine Feld-Gruppen im Papierkorb gefunden"
|
msgstr "Keine Feld-Gruppen im Papierkorb gefunden"
|
||||||
|
|
||||||
#: acf.php:351 admin/field-group.php:395 admin/field-groups.php:585
|
#: acf.php:353 admin/field-group.php:395 admin/field-groups.php:585
|
||||||
#: admin/views/field-group-options.php:13
|
#: admin/views/field-group-options.php:13
|
||||||
msgid "Disabled"
|
msgid "Disabled"
|
||||||
msgstr "Deaktiviert"
|
msgstr "Deaktiviert"
|
||||||
|
|
||||||
#: acf.php:356
|
#: acf.php:358
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Disabled <span class=\"count\">(%s)</span>"
|
msgid "Disabled <span class=\"count\">(%s)</span>"
|
||||||
msgid_plural "Disabled <span class=\"count\">(%s)</span>"
|
msgid_plural "Disabled <span class=\"count\">(%s)</span>"
|
||||||
|
|
@ -216,7 +216,7 @@ msgstr "kopieren"
|
||||||
#: admin/views/field-group-field-conditional-logic.php:62
|
#: admin/views/field-group-field-conditional-logic.php:62
|
||||||
#: admin/views/field-group-field-conditional-logic.php:162
|
#: admin/views/field-group-field-conditional-logic.php:162
|
||||||
#: admin/views/field-group-locations.php:59
|
#: admin/views/field-group-locations.php:59
|
||||||
#: admin/views/field-group-locations.php:135 api/api-helpers.php:3952
|
#: admin/views/field-group-locations.php:135 api/api-helpers.php:3973
|
||||||
msgid "or"
|
msgid "or"
|
||||||
msgstr "oder"
|
msgstr "oder"
|
||||||
|
|
||||||
|
|
@ -265,96 +265,96 @@ msgid "Active"
|
||||||
msgstr "Aktiviert"
|
msgstr "Aktiviert"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/field-group.php:842
|
#: admin/field-group.php:846
|
||||||
msgid "Front Page"
|
msgid "Front Page"
|
||||||
msgstr "Startseite"
|
msgstr "Startseite"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/field-group.php:843
|
#: admin/field-group.php:847
|
||||||
msgid "Posts Page"
|
msgid "Posts Page"
|
||||||
msgstr "Beitrags-Seite"
|
msgstr "Beitrags-Seite"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/field-group.php:844
|
#: admin/field-group.php:848
|
||||||
msgid "Top Level Page (no parent)"
|
msgid "Top Level Page (no parent)"
|
||||||
msgstr "Seite ohne übergeordnete Seiten"
|
msgstr "Seite ohne übergeordnete Seiten"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/field-group.php:845
|
#: admin/field-group.php:849
|
||||||
msgid "Parent Page (has children)"
|
msgid "Parent Page (has children)"
|
||||||
msgstr "Übergeordnete Seite (mit Unterseiten)"
|
msgstr "Übergeordnete Seite (mit Unterseiten)"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/field-group.php:846
|
#: admin/field-group.php:850
|
||||||
msgid "Child Page (has parent)"
|
msgid "Child Page (has parent)"
|
||||||
msgstr "Unterseite (mit übergeordneter Seite)"
|
msgstr "Unterseite (mit übergeordneter Seite)"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/field-group.php:862
|
#: admin/field-group.php:866
|
||||||
msgid "Default Template"
|
msgid "Default Template"
|
||||||
msgstr "Standard-Template"
|
msgstr "Standard-Template"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/field-group.php:885
|
#: admin/field-group.php:889
|
||||||
msgid "Logged in"
|
msgid "Logged in"
|
||||||
msgstr "ist angemeldet"
|
msgstr "ist angemeldet"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/field-group.php:886
|
#: admin/field-group.php:890
|
||||||
msgid "Viewing front end"
|
msgid "Viewing front end"
|
||||||
msgstr "ist im Front-End"
|
msgstr "ist im Front-End"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/field-group.php:887
|
#: admin/field-group.php:891
|
||||||
msgid "Viewing back end"
|
msgid "Viewing back end"
|
||||||
msgstr "ist im Back-End"
|
msgstr "ist im Back-End"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/field-group.php:906
|
#: admin/field-group.php:910
|
||||||
msgid "Super Admin"
|
msgid "Super Admin"
|
||||||
msgstr "Super-Admin"
|
msgstr "Super-Admin"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/field-group.php:917 admin/field-group.php:925
|
#: admin/field-group.php:921 admin/field-group.php:929
|
||||||
#: admin/field-group.php:939 admin/field-group.php:946
|
#: admin/field-group.php:943 admin/field-group.php:950
|
||||||
#: admin/field-group.php:963 admin/field-group.php:980 fields/file.php:241
|
#: admin/field-group.php:967 admin/field-group.php:984 fields/file.php:241
|
||||||
#: fields/image.php:237 pro/fields/gallery.php:676
|
#: fields/image.php:237 pro/fields/gallery.php:676
|
||||||
msgid "All"
|
msgid "All"
|
||||||
msgstr "Alle"
|
msgstr "Alle"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/field-group.php:926
|
#: admin/field-group.php:930
|
||||||
msgid "Add / Edit"
|
msgid "Add / Edit"
|
||||||
msgstr "Hinzufügen / Bearbeiten"
|
msgstr "Hinzufügen / Bearbeiten"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/field-group.php:927
|
#: admin/field-group.php:931
|
||||||
msgid "Register"
|
msgid "Register"
|
||||||
msgstr "Registrieren"
|
msgstr "Registrieren"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/field-group.php:1167
|
#: admin/field-group.php:1171
|
||||||
msgid "Move Complete."
|
msgid "Move Complete."
|
||||||
msgstr "Verschieben erfolgreich abgeschlossen."
|
msgstr "Verschieben erfolgreich abgeschlossen."
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/field-group.php:1168
|
#: admin/field-group.php:1172
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "The %s field can now be found in the %s field group"
|
msgid "The %s field can now be found in the %s field group"
|
||||||
msgstr "Das Feld \"%s\" wurde in die %s Feld-Gruppe verschoben"
|
msgstr "Das Feld \"%s\" wurde in die %s Feld-Gruppe verschoben"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/field-group.php:1170
|
#: admin/field-group.php:1174
|
||||||
msgid "Close Window"
|
msgid "Close Window"
|
||||||
msgstr "Schliessen"
|
msgstr "Schliessen"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/field-group.php:1205
|
#: admin/field-group.php:1209
|
||||||
msgid "Please select the destination for this field"
|
msgid "Please select the destination for this field"
|
||||||
msgstr "In welche Feld-Gruppe solle dieses Feld verschoben werden"
|
msgstr "In welche Feld-Gruppe solle dieses Feld verschoben werden"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/field-group.php:1212
|
#: admin/field-group.php:1216
|
||||||
msgid "Move Field"
|
msgid "Move Field"
|
||||||
msgstr "Feld verschieben"
|
msgstr "Feld verschieben"
|
||||||
|
|
||||||
|
|
@ -399,8 +399,8 @@ msgid "Sync available"
|
||||||
msgstr "Synchronisierung verfügbar"
|
msgstr "Synchronisierung verfügbar"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/field-groups.php:525 api/api-template.php:1077
|
#: admin/field-groups.php:525 api/api-template.php:1039
|
||||||
#: api/api-template.php:1290 pro/fields/gallery.php:370
|
#: pro/fields/gallery.php:370
|
||||||
msgid "Title"
|
msgid "Title"
|
||||||
msgstr "Titel"
|
msgstr "Titel"
|
||||||
|
|
||||||
|
|
@ -493,18 +493,24 @@ msgid "Duplicate"
|
||||||
msgstr "Duplizieren"
|
msgstr "Duplizieren"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/field-groups.php:751
|
#: admin/field-groups.php:717 fields/google-map.php:133
|
||||||
|
#: fields/relationship.php:742
|
||||||
|
msgid "Search"
|
||||||
|
msgstr "Suchen"
|
||||||
|
|
||||||
|
# @ acf
|
||||||
|
#: admin/field-groups.php:767
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Select %s"
|
msgid "Select %s"
|
||||||
msgstr "%s auswählen"
|
msgstr "%s auswählen"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/field-groups.php:759
|
#: admin/field-groups.php:775
|
||||||
msgid "Synchronise field group"
|
msgid "Synchronise field group"
|
||||||
msgstr "Synchronisiere Feld-Gruppe"
|
msgstr "Synchronisiere Feld-Gruppe"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/field-groups.php:759 admin/field-groups.php:776
|
#: admin/field-groups.php:775 admin/field-groups.php:792
|
||||||
msgid "Sync"
|
msgid "Sync"
|
||||||
msgstr "Synchronisieren"
|
msgstr "Synchronisieren"
|
||||||
|
|
||||||
|
|
@ -581,8 +587,8 @@ msgstr "Fehler beim Überprüfen der Anfrage"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/update.php:243 admin/views/update.php:110
|
#: admin/update.php:243 admin/views/update.php:110
|
||||||
msgid "No updates available"
|
msgid "No updates available."
|
||||||
msgstr "Keine Aktualisierungen verfügbar"
|
msgstr "Keine Aktualisierungen verfügbar."
|
||||||
|
|
||||||
#: admin/update.php:260
|
#: admin/update.php:260
|
||||||
msgid "Error loading update"
|
msgid "Error loading update"
|
||||||
|
|
@ -602,9 +608,9 @@ msgstr "Bedingungen für die Anzeige"
|
||||||
#: fields/select.php:483 fields/select.php:497 fields/select.php:511
|
#: fields/select.php:483 fields/select.php:497 fields/select.php:511
|
||||||
#: fields/tab.php:130 fields/taxonomy.php:785 fields/taxonomy.php:799
|
#: fields/tab.php:130 fields/taxonomy.php:785 fields/taxonomy.php:799
|
||||||
#: fields/taxonomy.php:813 fields/taxonomy.php:827 fields/user.php:399
|
#: fields/taxonomy.php:813 fields/taxonomy.php:827 fields/user.php:399
|
||||||
#: fields/user.php:413 fields/wysiwyg.php:418
|
#: fields/user.php:413 fields/wysiwyg.php:464
|
||||||
#: pro/admin/views/settings-updates.php:93 pro/fields/clone.php:716
|
#: pro/admin/views/settings-updates.php:93 pro/fields/clone.php:742
|
||||||
#: pro/fields/clone.php:734
|
#: pro/fields/clone.php:760
|
||||||
msgid "Yes"
|
msgid "Yes"
|
||||||
msgstr "Ja"
|
msgstr "Ja"
|
||||||
|
|
||||||
|
|
@ -617,9 +623,9 @@ msgstr "Ja"
|
||||||
#: fields/select.php:484 fields/select.php:498 fields/select.php:512
|
#: fields/select.php:484 fields/select.php:498 fields/select.php:512
|
||||||
#: fields/tab.php:131 fields/taxonomy.php:700 fields/taxonomy.php:786
|
#: fields/tab.php:131 fields/taxonomy.php:700 fields/taxonomy.php:786
|
||||||
#: fields/taxonomy.php:800 fields/taxonomy.php:814 fields/taxonomy.php:828
|
#: fields/taxonomy.php:800 fields/taxonomy.php:814 fields/taxonomy.php:828
|
||||||
#: fields/user.php:400 fields/user.php:414 fields/wysiwyg.php:419
|
#: fields/user.php:400 fields/user.php:414 fields/wysiwyg.php:465
|
||||||
#: pro/admin/views/settings-updates.php:103 pro/fields/clone.php:717
|
#: pro/admin/views/settings-updates.php:103 pro/fields/clone.php:743
|
||||||
#: pro/fields/clone.php:735
|
#: pro/fields/clone.php:761
|
||||||
msgid "No"
|
msgid "No"
|
||||||
msgstr "Nein"
|
msgstr "Nein"
|
||||||
|
|
||||||
|
|
@ -654,7 +660,7 @@ msgstr "Regel-Gruppe hinzufügen"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/views/field-group-field.php:50 pro/fields/flexible-content.php:346
|
#: admin/views/field-group-field.php:50 pro/fields/flexible-content.php:346
|
||||||
#: pro/fields/repeater.php:302
|
#: pro/fields/repeater.php:311
|
||||||
msgid "Drag to reorder"
|
msgid "Drag to reorder"
|
||||||
msgstr "Ziehen zum Sortieren"
|
msgstr "Ziehen zum Sortieren"
|
||||||
|
|
||||||
|
|
@ -700,6 +706,10 @@ msgstr "Löschen"
|
||||||
msgid "Error"
|
msgid "Error"
|
||||||
msgstr "Fehler"
|
msgstr "Fehler"
|
||||||
|
|
||||||
|
#: fields/oembed.php:220 fields/taxonomy.php:900
|
||||||
|
msgid "Error."
|
||||||
|
msgstr "Fehler."
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/views/field-group-field.php:69
|
#: admin/views/field-group-field.php:69
|
||||||
msgid "Field type does not exist"
|
msgid "Field type does not exist"
|
||||||
|
|
@ -1564,13 +1574,8 @@ msgstr "Seite ist aktuell"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/views/update-network.php:67 admin/views/update.php:16
|
#: admin/views/update-network.php:67 admin/views/update.php:16
|
||||||
msgid "Database Upgrade complete"
|
msgid "Database Upgrade complete. <a href=\"%s\">Return to network dashboard</a>"
|
||||||
msgstr "Datenbank-Aktualisierung fertiggestellt"
|
msgstr "Datenbank-Aktualisierung fertiggestellt. <a href=\"%s\">Zum Netzwerk Dashboard</a>"
|
||||||
|
|
||||||
# @ acf
|
|
||||||
#: admin/views/update-network.php:67
|
|
||||||
msgid "Return to network dashboard"
|
|
||||||
msgstr "Zum Netzwerk Dashboard"
|
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/views/update-network.php:106 admin/views/update-notice.php:35
|
#: admin/views/update-network.php:106 admin/views/update-notice.php:35
|
||||||
|
|
@ -1624,101 +1629,101 @@ msgid "See what's new"
|
||||||
msgstr "Was ist neu"
|
msgstr "Was ist neu"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: api/api-helpers.php:944
|
#: api/api-helpers.php:950
|
||||||
msgid "Thumbnail"
|
msgid "Thumbnail"
|
||||||
msgstr "Miniaturbild"
|
msgstr "Miniaturbild"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: api/api-helpers.php:945
|
#: api/api-helpers.php:951
|
||||||
msgid "Medium"
|
msgid "Medium"
|
||||||
msgstr "Mittel"
|
msgstr "Mittel"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: api/api-helpers.php:946
|
#: api/api-helpers.php:952
|
||||||
msgid "Large"
|
msgid "Large"
|
||||||
msgstr "Gross"
|
msgstr "Gross"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: api/api-helpers.php:995
|
#: api/api-helpers.php:1001
|
||||||
msgid "Full Size"
|
msgid "Full Size"
|
||||||
msgstr "Volle Grösse"
|
msgstr "Volle Grösse"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: api/api-helpers.php:1207 api/api-helpers.php:1770 pro/fields/clone.php:849
|
#: api/api-helpers.php:1213 api/api-helpers.php:1776 pro/fields/clone.php:879
|
||||||
msgid "(no title)"
|
msgid "(no title)"
|
||||||
msgstr "(ohne Titel)"
|
msgstr "(ohne Titel)"
|
||||||
|
|
||||||
#: api/api-helpers.php:1807 fields/page_link.php:284 fields/post_object.php:283
|
#: api/api-helpers.php:1813 fields/page_link.php:284
|
||||||
#: fields/taxonomy.php:989
|
#: fields/post_object.php:283 fields/taxonomy.php:989
|
||||||
msgid "Parent"
|
msgid "Parent"
|
||||||
msgstr "Eltern"
|
msgstr "Eltern"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: api/api-helpers.php:3873
|
#: api/api-helpers.php:3894
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Image width must be at least %dpx."
|
msgid "Image width must be at least %dpx."
|
||||||
msgstr "Die Breite des Bildes muss mindestens %dpx sein."
|
msgstr "Die Breite des Bildes muss mindestens %dpx sein."
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: api/api-helpers.php:3878
|
#: api/api-helpers.php:3899
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Image width must not exceed %dpx."
|
msgid "Image width must not exceed %dpx."
|
||||||
msgstr "Die Breite des Bildes darf %dpx nicht überschreiten."
|
msgstr "Die Breite des Bildes darf %dpx nicht überschreiten."
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: api/api-helpers.php:3894
|
#: api/api-helpers.php:3915
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Image height must be at least %dpx."
|
msgid "Image height must be at least %dpx."
|
||||||
msgstr "Die Höhe des Bildes muss mindestens %dpx sein."
|
msgstr "Die Höhe des Bildes muss mindestens %dpx sein."
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: api/api-helpers.php:3899
|
#: api/api-helpers.php:3920
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Image height must not exceed %dpx."
|
msgid "Image height must not exceed %dpx."
|
||||||
msgstr "Die Höhe des Bild darf %dpx nicht überschreiten."
|
msgstr "Die Höhe des Bild darf %dpx nicht überschreiten."
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: api/api-helpers.php:3917
|
#: api/api-helpers.php:3938
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "File size must be at least %s."
|
msgid "File size must be at least %s."
|
||||||
msgstr "Die Dateigrösse muss mindestens %s sein."
|
msgstr "Die Dateigrösse muss mindestens %s sein."
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: api/api-helpers.php:3922
|
#: api/api-helpers.php:3943
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "File size must must not exceed %s."
|
msgid "File size must must not exceed %s."
|
||||||
msgstr "Die Dateigrösse darf %s nicht überschreiten."
|
msgstr "Die Dateigrösse darf %s nicht überschreiten."
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: api/api-helpers.php:3956
|
#: api/api-helpers.php:3977
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "File type must be %s."
|
msgid "File type must be %s."
|
||||||
msgstr "Der Dateityp muss %s sein."
|
msgstr "Der Dateityp muss %s sein."
|
||||||
|
|
||||||
#: api/api-template.php:1092
|
# @ acf
|
||||||
|
#: api/api-template.php:1048 core/field.php:133
|
||||||
|
msgid "Content"
|
||||||
|
msgstr "Inhalt"
|
||||||
|
|
||||||
|
#: api/api-template.php:1056
|
||||||
|
msgid "Validate Email"
|
||||||
|
msgstr "E-Mail bestätigen"
|
||||||
|
|
||||||
|
#: api/api-template.php:1106
|
||||||
msgid "Spam Detected"
|
msgid "Spam Detected"
|
||||||
msgstr "Spam erkannt"
|
msgstr "Spam erkannt"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: api/api-template.php:1235 pro/api/api-options-page.php:50
|
#: api/api-template.php:1309 pro/api/api-options-page.php:50
|
||||||
#: pro/fields/gallery.php:588
|
#: pro/fields/gallery.php:588
|
||||||
msgid "Update"
|
msgid "Update"
|
||||||
msgstr "Aktualisieren"
|
msgstr "Aktualisieren"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: api/api-template.php:1236
|
#: api/api-template.php:1310
|
||||||
msgid "Post updated"
|
msgid "Post updated"
|
||||||
msgstr "Beitrag aktualisiert"
|
msgstr "Beitrag aktualisiert"
|
||||||
|
|
||||||
# @ acf
|
|
||||||
#: api/api-template.php:1304 core/field.php:133
|
|
||||||
msgid "Content"
|
|
||||||
msgstr "Inhalt"
|
|
||||||
|
|
||||||
#: api/api-template.php:1369
|
|
||||||
msgid "Validate Email"
|
|
||||||
msgstr "E-Mail bestätigen"
|
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: core/field.php:132
|
#: core/field.php:132
|
||||||
msgid "Basic"
|
msgid "Basic"
|
||||||
|
|
@ -1741,8 +1746,8 @@ msgstr "jQuery"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: core/field.php:137 fields/checkbox.php:224 fields/radio.php:293
|
#: core/field.php:137 fields/checkbox.php:224 fields/radio.php:293
|
||||||
#: pro/fields/clone.php:692 pro/fields/flexible-content.php:495
|
#: pro/fields/clone.php:718 pro/fields/flexible-content.php:495
|
||||||
#: pro/fields/flexible-content.php:544 pro/fields/repeater.php:459
|
#: pro/fields/flexible-content.php:544 pro/fields/repeater.php:468
|
||||||
msgid "Layout"
|
msgid "Layout"
|
||||||
msgstr "Layout"
|
msgstr "Layout"
|
||||||
|
|
||||||
|
|
@ -1762,7 +1767,7 @@ msgid "Validation successful"
|
||||||
msgstr "Überprüfung erfolgreich"
|
msgstr "Überprüfung erfolgreich"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: core/input.php:261 core/validation.php:306 forms/widget.php:234
|
#: core/input.php:261 core/validation.php:326 forms/widget.php:234
|
||||||
msgid "Validation failed"
|
msgid "Validation failed"
|
||||||
msgstr "Überprüfung fehlgeschlagen"
|
msgstr "Überprüfung fehlgeschlagen"
|
||||||
|
|
||||||
|
|
@ -1803,7 +1808,7 @@ msgid "Uploaded to this post"
|
||||||
msgstr "Zu diesem Beitrag hochgeladen"
|
msgstr "Zu diesem Beitrag hochgeladen"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: core/validation.php:207
|
#: core/validation.php:211
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "%s value is required"
|
msgid "%s value is required"
|
||||||
msgstr "%s Wert ist notwendig"
|
msgstr "%s Wert ist notwendig"
|
||||||
|
|
@ -1841,10 +1846,10 @@ msgid "red : Red"
|
||||||
msgstr "rot : Rot"
|
msgstr "rot : Rot"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/checkbox.php:215 fields/color_picker.php:147 fields/email.php:124
|
#: fields/checkbox.php:215 fields/color_picker.php:147 fields/email.php:133
|
||||||
#: fields/number.php:150 fields/radio.php:284 fields/select.php:455
|
#: fields/number.php:145 fields/radio.php:284 fields/select.php:455
|
||||||
#: fields/text.php:148 fields/textarea.php:145 fields/true_false.php:115
|
#: fields/text.php:142 fields/textarea.php:139 fields/true_false.php:115
|
||||||
#: fields/url.php:117 fields/wysiwyg.php:379
|
#: fields/url.php:114 fields/wysiwyg.php:425
|
||||||
msgid "Default Value"
|
msgid "Default Value"
|
||||||
msgstr "Standardwert"
|
msgstr "Standardwert"
|
||||||
|
|
||||||
|
|
@ -1960,8 +1965,8 @@ msgstr "Das Datums-Format für die Anzeige in der Bearbeitungs-Ansicht"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/date_picker.php:210 fields/date_time_picker.php:200
|
#: fields/date_picker.php:210 fields/date_time_picker.php:200
|
||||||
#: fields/post_object.php:455 fields/relationship.php:783 fields/select.php:520
|
#: fields/post_object.php:455 fields/relationship.php:783
|
||||||
#: fields/time_picker.php:140
|
#: fields/select.php:520 fields/time_picker.php:140
|
||||||
msgid "Return Format"
|
msgid "Return Format"
|
||||||
msgstr "Rückgabewert"
|
msgstr "Rückgabewert"
|
||||||
|
|
||||||
|
|
@ -2061,45 +2066,45 @@ msgid "Email"
|
||||||
msgstr "E-Mail"
|
msgstr "E-Mail"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/email.php:125 fields/number.php:151 fields/radio.php:285
|
#: fields/email.php:134 fields/number.php:146 fields/radio.php:285
|
||||||
#: fields/text.php:149 fields/textarea.php:146 fields/url.php:118
|
#: fields/text.php:143 fields/textarea.php:140 fields/url.php:115
|
||||||
#: fields/wysiwyg.php:380
|
#: fields/wysiwyg.php:426
|
||||||
msgid "Appears when creating a new post"
|
msgid "Appears when creating a new post"
|
||||||
msgstr "Erscheint bei der Erstellung eines neuen Beitrags"
|
msgstr "Erscheint bei der Erstellung eines neuen Beitrags"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/email.php:133 fields/number.php:159 fields/password.php:137
|
#: fields/email.php:142 fields/number.php:154 fields/password.php:134
|
||||||
#: fields/text.php:157 fields/textarea.php:154 fields/url.php:126
|
#: fields/text.php:151 fields/textarea.php:148 fields/url.php:123
|
||||||
msgid "Placeholder Text"
|
msgid "Placeholder Text"
|
||||||
msgstr "Platzhalter-Text"
|
msgstr "Platzhalter-Text"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/email.php:134 fields/number.php:160 fields/password.php:138
|
#: fields/email.php:143 fields/number.php:155 fields/password.php:135
|
||||||
#: fields/text.php:158 fields/textarea.php:155 fields/url.php:127
|
#: fields/text.php:152 fields/textarea.php:149 fields/url.php:124
|
||||||
msgid "Appears within the input"
|
msgid "Appears within the input"
|
||||||
msgstr "Platzhalter-Text solange keine Eingabe im Feld vorgenommen wurde"
|
msgstr "Platzhalter-Text solange keine Eingabe im Feld vorgenommen wurde"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/email.php:142 fields/number.php:168 fields/password.php:146
|
#: fields/email.php:151 fields/number.php:163 fields/password.php:143
|
||||||
#: fields/text.php:166
|
#: fields/text.php:160
|
||||||
msgid "Prepend"
|
msgid "Prepend"
|
||||||
msgstr "Voranstellen"
|
msgstr "Voranstellen"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/email.php:143 fields/number.php:169 fields/password.php:147
|
#: fields/email.php:152 fields/number.php:164 fields/password.php:144
|
||||||
#: fields/text.php:167
|
#: fields/text.php:161
|
||||||
msgid "Appears before the input"
|
msgid "Appears before the input"
|
||||||
msgstr "Wird dem Eingabefeld vorangestellt"
|
msgstr "Wird dem Eingabefeld vorangestellt"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/email.php:151 fields/number.php:177 fields/password.php:155
|
#: fields/email.php:160 fields/number.php:172 fields/password.php:152
|
||||||
#: fields/text.php:175
|
#: fields/text.php:169
|
||||||
msgid "Append"
|
msgid "Append"
|
||||||
msgstr "Anhängen"
|
msgstr "Anhängen"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/email.php:152 fields/number.php:178 fields/password.php:156
|
#: fields/email.php:161 fields/number.php:173 fields/password.php:153
|
||||||
#: fields/text.php:176
|
#: fields/text.php:170
|
||||||
msgid "Appears after the input"
|
msgid "Appears after the input"
|
||||||
msgstr "Wird dem Eingabefeld hinten angestellt"
|
msgstr "Wird dem Eingabefeld hinten angestellt"
|
||||||
|
|
||||||
|
|
@ -2208,11 +2213,6 @@ msgstr "Lokalisiere"
|
||||||
msgid "Sorry, this browser does not support geolocation"
|
msgid "Sorry, this browser does not support geolocation"
|
||||||
msgstr "Dieser Browser unterstützt keine Geo-Lokation"
|
msgstr "Dieser Browser unterstützt keine Geo-Lokation"
|
||||||
|
|
||||||
# @ acf
|
|
||||||
#: fields/google-map.php:133 fields/relationship.php:742
|
|
||||||
msgid "Search"
|
|
||||||
msgstr "Suchen"
|
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/google-map.php:134
|
#: fields/google-map.php:134
|
||||||
msgid "Clear location"
|
msgid "Clear location"
|
||||||
|
|
@ -2344,27 +2344,27 @@ msgid "Message"
|
||||||
msgstr "Nachricht"
|
msgstr "Nachricht"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/message.php:125 fields/textarea.php:182
|
#: fields/message.php:125 fields/textarea.php:176
|
||||||
msgid "New Lines"
|
msgid "New Lines"
|
||||||
msgstr "Neue Zeilen"
|
msgstr "Neue Zeilen"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/message.php:126 fields/textarea.php:183
|
#: fields/message.php:126 fields/textarea.php:177
|
||||||
msgid "Controls how new lines are rendered"
|
msgid "Controls how new lines are rendered"
|
||||||
msgstr "Legt fest wie Zeilenumbrüche gehandhabt werden"
|
msgstr "Legt fest wie Zeilenumbrüche gehandhabt werden"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/message.php:130 fields/textarea.php:187
|
#: fields/message.php:130 fields/textarea.php:181
|
||||||
msgid "Automatically add paragraphs"
|
msgid "Automatically add paragraphs"
|
||||||
msgstr "Absätze automatisch hinzufügen"
|
msgstr "Absätze automatisch hinzufügen"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/message.php:131 fields/textarea.php:188
|
#: fields/message.php:131 fields/textarea.php:182
|
||||||
msgid "Automatically add <br>"
|
msgid "Automatically add <br>"
|
||||||
msgstr "Zeilenumbrüche ( <br> ) automatisch hinzufügen"
|
msgstr "Zeilenumbrüche ( <br> ) automatisch hinzufügen"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/message.php:132 fields/textarea.php:189
|
#: fields/message.php:132 fields/textarea.php:183
|
||||||
msgid "No Formatting"
|
msgid "No Formatting"
|
||||||
msgstr "Keine Formatierung"
|
msgstr "Keine Formatierung"
|
||||||
|
|
||||||
|
|
@ -2386,33 +2386,33 @@ msgid "Number"
|
||||||
msgstr "Numerisch"
|
msgstr "Numerisch"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/number.php:186
|
#: fields/number.php:181
|
||||||
msgid "Minimum Value"
|
msgid "Minimum Value"
|
||||||
msgstr "Mindestwert"
|
msgstr "Mindestwert"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/number.php:195
|
#: fields/number.php:190
|
||||||
msgid "Maximum Value"
|
msgid "Maximum Value"
|
||||||
msgstr "Maximalwert"
|
msgstr "Maximalwert"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/number.php:204
|
#: fields/number.php:199
|
||||||
msgid "Step Size"
|
msgid "Step Size"
|
||||||
msgstr "Schrittweite"
|
msgstr "Schrittweite"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/number.php:242
|
#: fields/number.php:237
|
||||||
msgid "Value must be a number"
|
msgid "Value must be a number"
|
||||||
msgstr "Wert muss eine Zahl sein"
|
msgstr "Wert muss eine Zahl sein"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/number.php:260
|
#: fields/number.php:255
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Value must be equal to or higher than %d"
|
msgid "Value must be equal to or higher than %d"
|
||||||
msgstr "Wert muss grösser oder gleich %d sein"
|
msgstr "Wert muss grösser oder gleich %d sein"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/number.php:268
|
#: fields/number.php:263
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Value must be equal to or lower than %d"
|
msgid "Value must be equal to or lower than %d"
|
||||||
msgstr "Wert muss kleiner oder gleich %d sein"
|
msgstr "Wert muss kleiner oder gleich %d sein"
|
||||||
|
|
@ -2429,8 +2429,8 @@ msgstr "URL eingeben"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/oembed.php:225
|
#: fields/oembed.php:225
|
||||||
msgid "No embed found for the given URL"
|
msgid "No embed found for the given URL."
|
||||||
msgstr "Keine Inhalte für die eingegebene URL gefunden"
|
msgstr "Keine Inhalte für die eingegebene URL gefunden."
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/oembed.php:261 fields/oembed.php:272
|
#: fields/oembed.php:261 fields/oembed.php:272
|
||||||
|
|
@ -2834,12 +2834,12 @@ msgid "Text"
|
||||||
msgstr "Text einzeilig"
|
msgstr "Text einzeilig"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/text.php:184 fields/textarea.php:163
|
#: fields/text.php:178 fields/textarea.php:157
|
||||||
msgid "Character Limit"
|
msgid "Character Limit"
|
||||||
msgstr "Zeichenbegrenzung"
|
msgstr "Zeichenbegrenzung"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/text.php:185 fields/textarea.php:164
|
#: fields/text.php:179 fields/textarea.php:158
|
||||||
msgid "Leave blank for no limit"
|
msgid "Leave blank for no limit"
|
||||||
msgstr "Ein leeres Eingabefeld bedeutet keine Begrenzung"
|
msgstr "Ein leeres Eingabefeld bedeutet keine Begrenzung"
|
||||||
|
|
||||||
|
|
@ -2849,12 +2849,12 @@ msgid "Text Area"
|
||||||
msgstr "Text mehrzeilig"
|
msgstr "Text mehrzeilig"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/textarea.php:172
|
#: fields/textarea.php:166
|
||||||
msgid "Rows"
|
msgid "Rows"
|
||||||
msgstr "Zeilenanzahl"
|
msgstr "Zeilenanzahl"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/textarea.php:173
|
#: fields/textarea.php:167
|
||||||
msgid "Sets the textarea height"
|
msgid "Sets the textarea height"
|
||||||
msgstr "Definiert die Höhe des Textfelds"
|
msgstr "Definiert die Höhe des Textfelds"
|
||||||
|
|
||||||
|
|
@ -2878,7 +2878,7 @@ msgid "Url"
|
||||||
msgstr "URL"
|
msgstr "URL"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/url.php:168
|
#: fields/url.php:165
|
||||||
msgid "Value must be a valid URL"
|
msgid "Value must be a valid URL"
|
||||||
msgstr "Bitte eine gültige URL eingeben"
|
msgstr "Bitte eine gültige URL eingeben"
|
||||||
|
|
||||||
|
|
@ -2893,48 +2893,48 @@ msgid "All user roles"
|
||||||
msgstr "Alle Benutzerrollen"
|
msgstr "Alle Benutzerrollen"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/wysiwyg.php:37
|
#: fields/wysiwyg.php:36
|
||||||
msgid "Wysiwyg Editor"
|
msgid "Wysiwyg Editor"
|
||||||
msgstr "WYSIWYG-Editor"
|
msgstr "WYSIWYG-Editor"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/wysiwyg.php:331
|
#: fields/wysiwyg.php:377
|
||||||
msgid "Visual"
|
msgid "Visual"
|
||||||
msgstr "Visuell"
|
msgstr "Visuell"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/wysiwyg.php:332
|
#: fields/wysiwyg.php:378
|
||||||
msgctxt "Name for the Text editor tab (formerly HTML)"
|
msgctxt "Name for the Text editor tab (formerly HTML)"
|
||||||
msgid "Text"
|
msgid "Text"
|
||||||
msgstr "Text"
|
msgstr "Text"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/wysiwyg.php:388
|
#: fields/wysiwyg.php:434
|
||||||
msgid "Tabs"
|
msgid "Tabs"
|
||||||
msgstr "Tabs"
|
msgstr "Tabs"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/wysiwyg.php:393
|
#: fields/wysiwyg.php:439
|
||||||
msgid "Visual & Text"
|
msgid "Visual & Text"
|
||||||
msgstr "Visuell & Text"
|
msgstr "Visuell & Text"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/wysiwyg.php:394
|
#: fields/wysiwyg.php:440
|
||||||
msgid "Visual Only"
|
msgid "Visual Only"
|
||||||
msgstr "Nur Visuell"
|
msgstr "Nur Visuell"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/wysiwyg.php:395
|
#: fields/wysiwyg.php:441
|
||||||
msgid "Text Only"
|
msgid "Text Only"
|
||||||
msgstr "Nur Text"
|
msgstr "Nur Text"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/wysiwyg.php:402
|
#: fields/wysiwyg.php:448
|
||||||
msgid "Toolbar"
|
msgid "Toolbar"
|
||||||
msgstr "Werkzeugleiste"
|
msgstr "Werkzeugleiste"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: fields/wysiwyg.php:412
|
#: fields/wysiwyg.php:458
|
||||||
msgid "Show Media Upload Buttons?"
|
msgid "Show Media Upload Buttons?"
|
||||||
msgstr "Button zum Hochladen von Medien anzeigen?"
|
msgstr "Button zum Hochladen von Medien anzeigen?"
|
||||||
|
|
||||||
|
|
@ -2983,13 +2983,8 @@ msgstr "Veröffentlichen"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: pro/admin/options-page.php:315
|
#: pro/admin/options-page.php:315
|
||||||
msgid "No Custom Field Groups found for this options page"
|
msgid "No Custom Field Groups found for this options page. <a href=\"%s\">Create a Custom Field Group</a>"
|
||||||
msgstr "Keine Feld-Gruppen für die Options-Seite gefunden"
|
msgstr "Keine Feld-Gruppen für die Options-Seite gefunden. <a href=\"%s\">Erstelle eine Feld-Gruppe</a>"
|
||||||
|
|
||||||
# @ acf
|
|
||||||
#: pro/admin/options-page.php:315
|
|
||||||
msgid "Create a Custom Field Group"
|
|
||||||
msgstr "Erstelle eine Feld-Gruppe"
|
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: pro/admin/settings-updates.php:87
|
#: pro/admin/settings-updates.php:87
|
||||||
|
|
@ -3074,6 +3069,14 @@ msgstr "Aktualisierungs-Hinweis"
|
||||||
msgid "Options"
|
msgid "Options"
|
||||||
msgstr "Optionen"
|
msgstr "Optionen"
|
||||||
|
|
||||||
|
#: pro/api/api-pro.php:328
|
||||||
|
msgid ""
|
||||||
|
"Error validating license URL (website does not match). Please re-activate "
|
||||||
|
"your license"
|
||||||
|
msgstr ""
|
||||||
|
"Fehler bei der Überprüfung der Lizenz URL (Webseite stimmt nicht überein). "
|
||||||
|
"Bitte reaktiviere deine Lizenz"
|
||||||
|
|
||||||
#: pro/core/updates.php:206
|
#: pro/core/updates.php:206
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid ""
|
msgid ""
|
||||||
|
|
@ -3091,70 +3094,78 @@ msgctxt "noun"
|
||||||
msgid "Clone"
|
msgid "Clone"
|
||||||
msgstr "Klonen"
|
msgstr "Klonen"
|
||||||
|
|
||||||
#: pro/fields/clone.php:663
|
#: pro/fields/clone.php:689
|
||||||
msgid "Select one or more fields you wish to clone"
|
msgid "Select one or more fields you wish to clone"
|
||||||
msgstr "Wähle eines oder mehrere Felder aus, das/die du klonen willst"
|
msgstr "Wähle eines oder mehrere Felder aus, das/die du klonen willst"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: pro/fields/clone.php:678
|
#: pro/fields/clone.php:704
|
||||||
msgid "Display"
|
msgid "Display"
|
||||||
msgstr "Anzeige"
|
msgstr "Anzeige"
|
||||||
|
|
||||||
#: pro/fields/clone.php:679
|
#: pro/fields/clone.php:705
|
||||||
msgid "Specify the style used to render the clone field"
|
msgid "Specify the style used to render the clone field"
|
||||||
msgstr "Gib an, wie die geklonten Felder ausgegeben werden sollen"
|
msgstr "Gib an, wie die geklonten Felder ausgegeben werden sollen"
|
||||||
|
|
||||||
#: pro/fields/clone.php:684
|
#: pro/fields/clone.php:710
|
||||||
msgid "Group (displays selected fields in a group within this field)"
|
msgid "Group (displays selected fields in a group within this field)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Gruppe (zeigt die ausgewählten Felder in einer Gruppe innerhalb dieses Felds "
|
"Gruppe (zeigt die ausgewählten Felder in einer Gruppe innerhalb dieses Felds "
|
||||||
"an)"
|
"an)"
|
||||||
|
|
||||||
#: pro/fields/clone.php:685
|
#: pro/fields/clone.php:711
|
||||||
msgid "Seamless (replaces this field with selected fields)"
|
msgid "Seamless (replaces this field with selected fields)"
|
||||||
msgstr "Nahtlos (ersetzt dieses Feld mit den ausgewählten Feldern)"
|
msgstr "Nahtlos (ersetzt dieses Feld mit den ausgewählten Feldern)"
|
||||||
|
|
||||||
#: pro/fields/clone.php:693
|
#: pro/fields/clone.php:719
|
||||||
msgid "Specify the style used to render the selected fields"
|
msgid "Specify the style used to render the selected fields"
|
||||||
msgstr "Gib an, wie die ausgewählten Felder angezeigt werden sollen"
|
msgstr "Gib an, wie die ausgewählten Felder angezeigt werden sollen"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: pro/fields/clone.php:698 pro/fields/flexible-content.php:555
|
#: pro/fields/clone.php:724 pro/fields/flexible-content.php:555
|
||||||
#: pro/fields/repeater.php:467
|
#: pro/fields/repeater.php:476
|
||||||
msgid "Block"
|
msgid "Block"
|
||||||
msgstr "Block"
|
msgstr "Block"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: pro/fields/clone.php:699 pro/fields/flexible-content.php:554
|
#: pro/fields/clone.php:725 pro/fields/flexible-content.php:554
|
||||||
#: pro/fields/repeater.php:466
|
#: pro/fields/repeater.php:475
|
||||||
msgid "Table"
|
msgid "Table"
|
||||||
msgstr "Tabelle"
|
msgstr "Tabelle"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: pro/fields/clone.php:700 pro/fields/flexible-content.php:556
|
#: pro/fields/clone.php:726 pro/fields/flexible-content.php:556
|
||||||
#: pro/fields/repeater.php:468
|
#: pro/fields/repeater.php:477
|
||||||
msgid "Row"
|
msgid "Row"
|
||||||
msgstr "Reihe"
|
msgstr "Reihe"
|
||||||
|
|
||||||
#: pro/fields/clone.php:706
|
#: pro/fields/clone.php:732
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Labels will be displayed as %s"
|
msgid "Labels will be displayed as %s"
|
||||||
msgstr "Bezeichnungen werden angezeigt als %s"
|
msgstr "Bezeichnungen werden angezeigt als %s"
|
||||||
|
|
||||||
#: pro/fields/clone.php:709
|
#: pro/fields/clone.php:735
|
||||||
msgid "Prefix Field Labels"
|
msgid "Prefix Field Labels"
|
||||||
msgstr "Präfix für Feld Bezeichnungen"
|
msgstr "Präfix für Feld Bezeichnungen"
|
||||||
|
|
||||||
#: pro/fields/clone.php:724
|
#: pro/fields/clone.php:750
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Values will be saved as %s"
|
msgid "Values will be saved as %s"
|
||||||
msgstr "Werte werden gespeichert als %s"
|
msgstr "Werte werden gespeichert als %s"
|
||||||
|
|
||||||
#: pro/fields/clone.php:727
|
#: pro/fields/clone.php:753
|
||||||
msgid "Prefix Field Names"
|
msgid "Prefix Field Names"
|
||||||
msgstr "Präfix für Feld Namen"
|
msgstr "Präfix für Feld Namen"
|
||||||
|
|
||||||
#: pro/fields/clone.php:883
|
#: pro/fields/clone.php:875
|
||||||
|
msgid "Unknown field"
|
||||||
|
msgstr "Unbekanntes Feld"
|
||||||
|
|
||||||
|
#: pro/fields/clone.php:914
|
||||||
|
msgid "Unknown field group"
|
||||||
|
msgstr "Unbekannte Feld-Gruppe"
|
||||||
|
|
||||||
|
#: pro/fields/clone.php:918
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "All fields from %s field group"
|
msgid "All fields from %s field group"
|
||||||
msgstr "Alle Felder der %s Feld-Gruppe"
|
msgstr "Alle Felder der %s Feld-Gruppe"
|
||||||
|
|
@ -3230,7 +3241,7 @@ msgstr "Layout hinzufügen"
|
||||||
msgid "Remove layout"
|
msgid "Remove layout"
|
||||||
msgstr "Layout entfernen"
|
msgstr "Layout entfernen"
|
||||||
|
|
||||||
#: pro/fields/flexible-content.php:356 pro/fields/repeater.php:304
|
#: pro/fields/flexible-content.php:356 pro/fields/repeater.php:313
|
||||||
msgid "Click to toggle"
|
msgid "Click to toggle"
|
||||||
msgstr "Zum Auswählen anklicken"
|
msgstr "Zum Auswählen anklicken"
|
||||||
|
|
||||||
|
|
@ -3270,7 +3281,7 @@ msgid "Max"
|
||||||
msgstr "Max"
|
msgstr "Max"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: pro/fields/flexible-content.php:612 pro/fields/repeater.php:475
|
#: pro/fields/flexible-content.php:612 pro/fields/repeater.php:484
|
||||||
msgid "Button Label"
|
msgid "Button Label"
|
||||||
msgstr "Button-Beschriftung"
|
msgstr "Button-Beschriftung"
|
||||||
|
|
||||||
|
|
@ -3389,37 +3400,37 @@ msgid "Maximum rows reached ({max} rows)"
|
||||||
msgstr "Maximum der Einträge mit ({max} Reihen) erreicht"
|
msgstr "Maximum der Einträge mit ({max} Reihen) erreicht"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: pro/fields/repeater.php:349
|
#: pro/fields/repeater.php:358
|
||||||
msgid "Add row"
|
msgid "Add row"
|
||||||
msgstr "Eintrag hinzufügen"
|
msgstr "Eintrag hinzufügen"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: pro/fields/repeater.php:350
|
#: pro/fields/repeater.php:359
|
||||||
msgid "Remove row"
|
msgid "Remove row"
|
||||||
msgstr "Eintrag löschen"
|
msgstr "Eintrag löschen"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: pro/fields/repeater.php:398
|
#: pro/fields/repeater.php:407
|
||||||
msgid "Sub Fields"
|
msgid "Sub Fields"
|
||||||
msgstr "Wiederholungsfelder"
|
msgstr "Wiederholungsfelder"
|
||||||
|
|
||||||
#: pro/fields/repeater.php:428
|
#: pro/fields/repeater.php:437
|
||||||
msgid "Collapsed"
|
msgid "Collapsed"
|
||||||
msgstr "Zugeklappt"
|
msgstr "Zugeklappt"
|
||||||
|
|
||||||
#: pro/fields/repeater.php:429
|
#: pro/fields/repeater.php:438
|
||||||
msgid "Select a sub field to show when row is collapsed"
|
msgid "Select a sub field to show when row is collapsed"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Wähle welches der Wiederholungsfelder im zugeklappten Zustand angezeigt "
|
"Wähle welches der Wiederholungsfelder im zugeklappten Zustand angezeigt "
|
||||||
"werden soll"
|
"werden soll"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: pro/fields/repeater.php:439
|
#: pro/fields/repeater.php:448
|
||||||
msgid "Minimum Rows"
|
msgid "Minimum Rows"
|
||||||
msgstr "Minimum der Einträge"
|
msgstr "Minimum der Einträge"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: pro/fields/repeater.php:449
|
#: pro/fields/repeater.php:458
|
||||||
msgid "Maximum Rows"
|
msgid "Maximum Rows"
|
||||||
msgstr "Maximum der Einträge"
|
msgstr "Maximum der Einträge"
|
||||||
|
|
||||||
|
|
|
||||||
Binary file not shown.
1056
lang/acf-de_DE.po
1056
lang/acf-de_DE.po
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
|
|
@ -3,7 +3,7 @@ msgstr ""
|
||||||
"Project-Id-Version: Advanced Custom Fields Pro v5.2.9\n"
|
"Project-Id-Version: Advanced Custom Fields Pro v5.2.9\n"
|
||||||
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
||||||
"POT-Creation-Date: 2015-08-11 23:12+0200\n"
|
"POT-Creation-Date: 2015-08-11 23:12+0200\n"
|
||||||
"PO-Revision-Date: 2016-04-07 10:30+1000\n"
|
"PO-Revision-Date: 2016-11-03 17:09+1000\n"
|
||||||
"Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
|
"Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
|
||||||
"Language-Team: Héctor Garrofé <info@hectorgarrofe.com>\n"
|
"Language-Team: Héctor Garrofé <info@hectorgarrofe.com>\n"
|
||||||
"Language: es_ES\n"
|
"Language: es_ES\n"
|
||||||
|
|
@ -579,6 +579,10 @@ msgstr "Borrar"
|
||||||
msgid "Error"
|
msgid "Error"
|
||||||
msgstr "Error"
|
msgstr "Error"
|
||||||
|
|
||||||
|
#: fields/oembed.php:220 fields/taxonomy.php:900
|
||||||
|
msgid "Error."
|
||||||
|
msgstr "Error."
|
||||||
|
|
||||||
#: admin/views/field-group-field.php:68
|
#: admin/views/field-group-field.php:68
|
||||||
msgid "Field type does not exist"
|
msgid "Field type does not exist"
|
||||||
msgstr "Tipo de campo inexistente"
|
msgstr "Tipo de campo inexistente"
|
||||||
|
|
@ -1286,12 +1290,8 @@ msgid "Site is up to date"
|
||||||
msgstr "El sitio está actualizado"
|
msgstr "El sitio está actualizado"
|
||||||
|
|
||||||
#: admin/views/update-network.php:62 admin/views/update.php:16
|
#: admin/views/update-network.php:62 admin/views/update.php:16
|
||||||
msgid "Database Upgrade complete"
|
msgid "Database Upgrade complete. <a href=\"%s\">Return to network dashboard</a>"
|
||||||
msgstr "Actualización de base de datos completa"
|
msgstr "Actualización de base de datos completa. <a href=\"%s\">Regresar al Escritorio de Red</a>"
|
||||||
|
|
||||||
#: admin/views/update-network.php:62
|
|
||||||
msgid "Return to network dashboard"
|
|
||||||
msgstr "Regresar al Escritorio de Red"
|
|
||||||
|
|
||||||
#: admin/views/update-network.php:101 admin/views/update-notice.php:35
|
#: admin/views/update-network.php:101 admin/views/update-notice.php:35
|
||||||
msgid ""
|
msgid ""
|
||||||
|
|
@ -1340,8 +1340,8 @@ msgid "See what's new"
|
||||||
msgstr "Mira qué hay de nuevo"
|
msgstr "Mira qué hay de nuevo"
|
||||||
|
|
||||||
#: admin/views/update.php:110
|
#: admin/views/update.php:110
|
||||||
msgid "No updates available"
|
msgid "No updates available."
|
||||||
msgstr "No hay actualizaciones disponibles"
|
msgstr "No hay actualizaciones disponibles."
|
||||||
|
|
||||||
#: api/api-helpers.php:821
|
#: api/api-helpers.php:821
|
||||||
msgid "Thumbnail"
|
msgid "Thumbnail"
|
||||||
|
|
@ -1868,8 +1868,8 @@ msgid "Enter URL"
|
||||||
msgstr "Ingresa URL"
|
msgstr "Ingresa URL"
|
||||||
|
|
||||||
#: fields/oembed.php:212
|
#: fields/oembed.php:212
|
||||||
msgid "No embed found for the given URL"
|
msgid "No embed found for the given URL."
|
||||||
msgstr "No se encontró embed para la URL proporcionada"
|
msgstr "No se encontró embed para la URL proporcionada."
|
||||||
|
|
||||||
#: fields/oembed.php:248 fields/oembed.php:259
|
#: fields/oembed.php:248 fields/oembed.php:259
|
||||||
msgid "Embed Size"
|
msgid "Embed Size"
|
||||||
|
|
@ -2280,14 +2280,8 @@ msgid "Options Updated"
|
||||||
msgstr "Opciones Actualizadas"
|
msgstr "Opciones Actualizadas"
|
||||||
|
|
||||||
#: pro/admin/options-page.php:304
|
#: pro/admin/options-page.php:304
|
||||||
msgid "No Custom Field Groups found for this options page"
|
msgid "No Custom Field Groups found for this options page. <a href=\"%s\">Create a Custom Field Group</a>"
|
||||||
msgstr ""
|
msgstr "No se encontraron grupos de campos personalizados para esta página de opciones. <a href=\"%s\">Crear Grupo de Campos Personalizados</a>"
|
||||||
"No se encontraron grupos de campos personalizados para esta página de "
|
|
||||||
"opciones"
|
|
||||||
|
|
||||||
#: pro/admin/options-page.php:304
|
|
||||||
msgid "Create a Custom Field Group"
|
|
||||||
msgstr "Crear Grupo de Campos Personalizados"
|
|
||||||
|
|
||||||
#: pro/admin/settings-updates.php:137
|
#: pro/admin/settings-updates.php:137
|
||||||
msgid "<b>Error</b>. Could not connect to update server"
|
msgid "<b>Error</b>. Could not connect to update server"
|
||||||
|
|
|
||||||
Binary file not shown.
|
|
@ -3,7 +3,7 @@ msgstr ""
|
||||||
"Project-Id-Version: Advanced Custom Fields Pro v5.2.9\n"
|
"Project-Id-Version: Advanced Custom Fields Pro v5.2.9\n"
|
||||||
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
||||||
"POT-Creation-Date: 2016-08-06 19:58+0430\n"
|
"POT-Creation-Date: 2016-08-06 19:58+0430\n"
|
||||||
"PO-Revision-Date: 2016-08-06 20:09+0430\n"
|
"PO-Revision-Date: 2016-11-03 17:09+1000\n"
|
||||||
"Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
|
"Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
|
||||||
"Language-Team: Kamel Kimiaei Fard <Kamel.Kimiaei.Fard@gmail.com>\n"
|
"Language-Team: Kamel Kimiaei Fard <Kamel.Kimiaei.Fard@gmail.com>\n"
|
||||||
"Language: fa\n"
|
"Language: fa\n"
|
||||||
|
|
@ -11,7 +11,7 @@ msgstr ""
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||||
"X-Generator: Poedit 1.8.8\n"
|
"X-Generator: Poedit 1.8.1\n"
|
||||||
"X-Poedit-SourceCharset: UTF-8\n"
|
"X-Poedit-SourceCharset: UTF-8\n"
|
||||||
"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
|
"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
|
||||||
"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
|
"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
|
||||||
|
|
@ -480,8 +480,8 @@ msgid "Error validating request"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: admin/update.php:243 admin/views/update.php:110
|
#: admin/update.php:243 admin/views/update.php:110
|
||||||
msgid "No updates available"
|
msgid "No updates available."
|
||||||
msgstr "بهروزرسانی موجود نیست"
|
msgstr "بهروزرسانی موجود نیست."
|
||||||
|
|
||||||
#: admin/update.php:260
|
#: admin/update.php:260
|
||||||
msgid "Error loading update"
|
msgid "Error loading update"
|
||||||
|
|
@ -582,6 +582,10 @@ msgstr "حذف"
|
||||||
msgid "Error"
|
msgid "Error"
|
||||||
msgstr "خطا"
|
msgstr "خطا"
|
||||||
|
|
||||||
|
#: fields/oembed.php:220 fields/taxonomy.php:900
|
||||||
|
msgid "Error."
|
||||||
|
msgstr "خطا."
|
||||||
|
|
||||||
#: admin/views/field-group-field.php:69
|
#: admin/views/field-group-field.php:69
|
||||||
msgid "Field type does not exist"
|
msgid "Field type does not exist"
|
||||||
msgstr "نوع زمینه وجود ندارد"
|
msgstr "نوع زمینه وجود ندارد"
|
||||||
|
|
@ -1273,12 +1277,8 @@ msgid "Site is up to date"
|
||||||
msgstr "سایت به روز است"
|
msgstr "سایت به روز است"
|
||||||
|
|
||||||
#: admin/views/update-network.php:67 admin/views/update.php:16
|
#: admin/views/update-network.php:67 admin/views/update.php:16
|
||||||
msgid "Database Upgrade complete"
|
msgid "Database Upgrade complete. <a href=\"%s\">Return to network dashboard</a>"
|
||||||
msgstr "به روزرسانی دیتابیس انجام شد"
|
msgstr "به روزرسانی دیتابیس انجام شد. <a href=\"%s\">بازگشت به پیشخوان شبکه</a>"
|
||||||
|
|
||||||
#: admin/views/update-network.php:67
|
|
||||||
msgid "Return to network dashboard"
|
|
||||||
msgstr "بازگشت به پیشخوان شبکه"
|
|
||||||
|
|
||||||
#: admin/views/update-network.php:106 admin/views/update-notice.php:35
|
#: admin/views/update-network.php:106 admin/views/update-notice.php:35
|
||||||
msgid ""
|
msgid ""
|
||||||
|
|
@ -1342,8 +1342,8 @@ msgstr "اندازه کامل"
|
||||||
msgid "(no title)"
|
msgid "(no title)"
|
||||||
msgstr "(بدون عنوان)"
|
msgstr "(بدون عنوان)"
|
||||||
|
|
||||||
#: api/api-helpers.php:1807 fields/page_link.php:284 fields/post_object.php:283
|
#: api/api-helpers.php:1807 fields/page_link.php:284
|
||||||
#: fields/taxonomy.php:989
|
#: fields/post_object.php:283 fields/taxonomy.php:989
|
||||||
msgid "Parent"
|
msgid "Parent"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|
@ -1608,8 +1608,8 @@ msgid "The format displayed when editing a post"
|
||||||
msgstr "قالب در زمان نمایش نوشته دیده خواهد شد"
|
msgstr "قالب در زمان نمایش نوشته دیده خواهد شد"
|
||||||
|
|
||||||
#: fields/date_picker.php:210 fields/date_time_picker.php:200
|
#: fields/date_picker.php:210 fields/date_time_picker.php:200
|
||||||
#: fields/post_object.php:455 fields/relationship.php:783 fields/select.php:520
|
#: fields/post_object.php:455 fields/relationship.php:783
|
||||||
#: fields/time_picker.php:140
|
#: fields/select.php:520 fields/time_picker.php:140
|
||||||
msgid "Return Format"
|
msgid "Return Format"
|
||||||
msgstr "فرمت بازگشت"
|
msgstr "فرمت بازگشت"
|
||||||
|
|
||||||
|
|
@ -1997,8 +1997,8 @@ msgid "Enter URL"
|
||||||
msgstr "آدرس را وارد کنید"
|
msgstr "آدرس را وارد کنید"
|
||||||
|
|
||||||
#: fields/oembed.php:225
|
#: fields/oembed.php:225
|
||||||
msgid "No embed found for the given URL"
|
msgid "No embed found for the given URL."
|
||||||
msgstr "امکان جاسازی برای آدرس وارد شده یافت نشد"
|
msgstr "امکان جاسازی برای آدرس وارد شده یافت نشد."
|
||||||
|
|
||||||
#: fields/oembed.php:261 fields/oembed.php:272
|
#: fields/oembed.php:261 fields/oembed.php:272
|
||||||
msgid "Embed Size"
|
msgid "Embed Size"
|
||||||
|
|
@ -2463,12 +2463,8 @@ msgid "Publish"
|
||||||
msgstr "انتشار"
|
msgstr "انتشار"
|
||||||
|
|
||||||
#: pro/admin/options-page.php:315
|
#: pro/admin/options-page.php:315
|
||||||
msgid "No Custom Field Groups found for this options page"
|
msgid "No Custom Field Groups found for this options page. <a href=\"%s\">Create a Custom Field Group</a>"
|
||||||
msgstr "هیچ گروه زمینه دلخواهی برای این صفحه تنظیمات یافت نشد"
|
msgstr "هیچ گروه زمینه دلخواهی برای این صفحه تنظیمات یافت نشد. <a href=\"%s\">ساخت گروه زمینه دلخواه</a>"
|
||||||
|
|
||||||
#: pro/admin/options-page.php:315
|
|
||||||
msgid "Create a Custom Field Group"
|
|
||||||
msgstr "ساخت گروه زمینه دلخواه"
|
|
||||||
|
|
||||||
#: pro/admin/settings-updates.php:87
|
#: pro/admin/settings-updates.php:87
|
||||||
msgid "<b>Error</b>. Could not connect to update server"
|
msgid "<b>Error</b>. Could not connect to update server"
|
||||||
|
|
|
||||||
BIN
lang/acf-fi.mo
BIN
lang/acf-fi.mo
Binary file not shown.
|
|
@ -3,14 +3,14 @@ msgstr ""
|
||||||
"Project-Id-Version: Advanced Custom Fields Pro v5.2.9\n"
|
"Project-Id-Version: Advanced Custom Fields Pro v5.2.9\n"
|
||||||
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
||||||
"POT-Creation-Date: 2016-09-24 00:01+0300\n"
|
"POT-Creation-Date: 2016-09-24 00:01+0300\n"
|
||||||
"PO-Revision-Date: 2016-09-24 00:03+0300\n"
|
"PO-Revision-Date: 2016-11-03 17:09+1000\n"
|
||||||
"Last-Translator: Sauli Rajala <sauli.rajala@valu.fi>\n"
|
"Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
|
||||||
"Language-Team: \n"
|
"Language-Team: \n"
|
||||||
"Language: fi\n"
|
"Language: fi\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"X-Generator: Poedit 1.8.2\n"
|
"X-Generator: Poedit 1.8.1\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Poedit-SourceCharset: UTF-8\n"
|
"X-Poedit-SourceCharset: UTF-8\n"
|
||||||
"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
|
"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
|
||||||
|
|
@ -490,8 +490,8 @@ msgid "Error validating request"
|
||||||
msgstr "Virhe pyynnön käsittelyssä"
|
msgstr "Virhe pyynnön käsittelyssä"
|
||||||
|
|
||||||
#: admin/update.php:243 admin/views/update.php:110
|
#: admin/update.php:243 admin/views/update.php:110
|
||||||
msgid "No updates available"
|
msgid "No updates available."
|
||||||
msgstr "Päivityksiä ei ole saatavilla"
|
msgstr "Päivityksiä ei ole saatavilla."
|
||||||
|
|
||||||
#: admin/update.php:260
|
#: admin/update.php:260
|
||||||
msgid "Error loading update"
|
msgid "Error loading update"
|
||||||
|
|
@ -592,6 +592,10 @@ msgstr "Poista"
|
||||||
msgid "Error"
|
msgid "Error"
|
||||||
msgstr "Virhe"
|
msgstr "Virhe"
|
||||||
|
|
||||||
|
#: fields/oembed.php:220 fields/taxonomy.php:900
|
||||||
|
msgid "Error."
|
||||||
|
msgstr "Virhe."
|
||||||
|
|
||||||
#: admin/views/field-group-field.php:69
|
#: admin/views/field-group-field.php:69
|
||||||
msgid "Field type does not exist"
|
msgid "Field type does not exist"
|
||||||
msgstr "Kenttätyyppi ei ole olemassa"
|
msgstr "Kenttätyyppi ei ole olemassa"
|
||||||
|
|
@ -1293,12 +1297,8 @@ msgid "Site is up to date"
|
||||||
msgstr "Sivusto on ajan tasalla"
|
msgstr "Sivusto on ajan tasalla"
|
||||||
|
|
||||||
#: admin/views/update-network.php:67 admin/views/update.php:16
|
#: admin/views/update-network.php:67 admin/views/update.php:16
|
||||||
msgid "Database Upgrade complete"
|
msgid "Database Upgrade complete. <a href=\"%s\">Return to network dashboard</a>"
|
||||||
msgstr "Tietokanta on päivitetty"
|
msgstr "Tietokanta on päivitetty. <a href=\"%s\">Palaa verkon hallinnan ohjausnäkymään</a>"
|
||||||
|
|
||||||
#: admin/views/update-network.php:67
|
|
||||||
msgid "Return to network dashboard"
|
|
||||||
msgstr "Palaa verkon hallinnan ohjausnäkymään"
|
|
||||||
|
|
||||||
#: admin/views/update-network.php:106 admin/views/update-notice.php:35
|
#: admin/views/update-network.php:106 admin/views/update-notice.php:35
|
||||||
msgid ""
|
msgid ""
|
||||||
|
|
@ -2015,8 +2015,8 @@ msgid "Enter URL"
|
||||||
msgstr "Syötä URL"
|
msgstr "Syötä URL"
|
||||||
|
|
||||||
#: fields/oembed.php:225
|
#: fields/oembed.php:225
|
||||||
msgid "No embed found for the given URL"
|
msgid "No embed found for the given URL."
|
||||||
msgstr "Upotettavaa ei löytynyt annetusta URL-osoitteesta"
|
msgstr "Upotettavaa ei löytynyt annetusta URL-osoitteesta."
|
||||||
|
|
||||||
#: fields/oembed.php:261 fields/oembed.php:272
|
#: fields/oembed.php:261 fields/oembed.php:272
|
||||||
msgid "Embed Size"
|
msgid "Embed Size"
|
||||||
|
|
@ -2486,12 +2486,8 @@ msgid "Publish"
|
||||||
msgstr "Julkaistu"
|
msgstr "Julkaistu"
|
||||||
|
|
||||||
#: pro/admin/options-page.php:315
|
#: pro/admin/options-page.php:315
|
||||||
msgid "No Custom Field Groups found for this options page"
|
msgid "No Custom Field Groups found for this options page. <a href=\"%s\">Create a Custom Field Group</a>"
|
||||||
msgstr "Yhtään lisäkenttäryhmää ei löytynyt tälle asetussivulle"
|
msgstr "Yhtään lisäkenttäryhmää ei löytynyt tälle asetussivulle. <a href=\"%s\">Luo lisäkenttäryhmä</a>"
|
||||||
|
|
||||||
#: pro/admin/options-page.php:315
|
|
||||||
msgid "Create a Custom Field Group"
|
|
||||||
msgstr "Luo lisäkenttäryhmä"
|
|
||||||
|
|
||||||
#: pro/admin/settings-updates.php:87
|
#: pro/admin/settings-updates.php:87
|
||||||
msgid "<b>Error</b>. Could not connect to update server"
|
msgid "<b>Error</b>. Could not connect to update server"
|
||||||
|
|
|
||||||
Binary file not shown.
|
|
@ -3,15 +3,15 @@ msgstr ""
|
||||||
"Project-Id-Version: Advanced Custom Fields Pro v5.2.9\n"
|
"Project-Id-Version: Advanced Custom Fields Pro v5.2.9\n"
|
||||||
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
||||||
"POT-Creation-Date: 2016-06-17 13:45+0200\n"
|
"POT-Creation-Date: 2016-06-17 13:45+0200\n"
|
||||||
"PO-Revision-Date: 2016-06-17 14:36+0200\n"
|
"PO-Revision-Date: 2016-11-03 17:09+1000\n"
|
||||||
"Last-Translator: Maxime BERNARD-JACQUET <maxime@smoothie-creative.com>\n"
|
"Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
|
||||||
"Language-Team: Dysign <maxime@dysign.fr>\n"
|
"Language-Team: Dysign <maxime@dysign.fr>\n"
|
||||||
"Language: fr_FR\n"
|
"Language: fr_FR\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||||
"X-Generator: Poedit 1.8.6\n"
|
"X-Generator: Poedit 1.8.1\n"
|
||||||
"X-Poedit-SourceCharset: UTF-8\n"
|
"X-Poedit-SourceCharset: UTF-8\n"
|
||||||
"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
|
"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
|
||||||
"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
|
"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
|
||||||
|
|
@ -541,8 +541,8 @@ msgstr "Erreur : la requête n’a pas pu être validée"
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/update.php:243 admin/views/update.php:110
|
#: admin/update.php:243 admin/views/update.php:110
|
||||||
msgid "No updates available"
|
msgid "No updates available."
|
||||||
msgstr "Aucune mise à jour disponible"
|
msgstr "Aucune mise à jour disponible."
|
||||||
|
|
||||||
#: admin/update.php:260
|
#: admin/update.php:260
|
||||||
msgid "Error loading update"
|
msgid "Error loading update"
|
||||||
|
|
@ -645,6 +645,10 @@ msgstr "Supprimer"
|
||||||
msgid "Error"
|
msgid "Error"
|
||||||
msgstr "Erreur"
|
msgstr "Erreur"
|
||||||
|
|
||||||
|
#: fields/oembed.php:220 fields/taxonomy.php:900
|
||||||
|
msgid "Error."
|
||||||
|
msgstr "Erreur."
|
||||||
|
|
||||||
# @ acf
|
# @ acf
|
||||||
#: admin/views/field-group-field.php:68
|
#: admin/views/field-group-field.php:68
|
||||||
msgid "Field type does not exist"
|
msgid "Field type does not exist"
|
||||||
|
|
@ -1416,12 +1420,8 @@ msgid "Site is up to date"
|
||||||
msgstr "Site à jour"
|
msgstr "Site à jour"
|
||||||
|
|
||||||
#: admin/views/update-network.php:67 admin/views/update.php:16
|
#: admin/views/update-network.php:67 admin/views/update.php:16
|
||||||
msgid "Database Upgrade complete"
|
msgid "Database Upgrade complete. <a href=\"%s\">Return to network dashboard</a>"
|
||||||
msgstr "Mise à niveau de la base de données effectuée"
|
msgstr "Mise à niveau de la base de données effectuée. <a href=\"%s\">Retourner au panneau d'administration du réseau</a>"
|
||||||
|
|
||||||
#: admin/views/update-network.php:67
|
|
||||||
msgid "Return to network dashboard"
|
|
||||||
msgstr "Retourner au panneau d'administration du réseau"
|
|
||||||
|
|
||||||
#: admin/views/update-network.php:106 admin/views/update-notice.php:35
|
#: admin/views/update-network.php:106 admin/views/update-notice.php:35
|
||||||
msgid ""
|
msgid ""
|
||||||
|
|
@ -2178,8 +2178,8 @@ msgid "Enter URL"
|
||||||
msgstr "Entrez l'URL"
|
msgstr "Entrez l'URL"
|
||||||
|
|
||||||
#: fields/oembed.php:225
|
#: fields/oembed.php:225
|
||||||
msgid "No embed found for the given URL"
|
msgid "No embed found for the given URL."
|
||||||
msgstr "Aucune instruction d'intégration trouvée à cette adresse"
|
msgstr "Aucune instruction d'intégration trouvée à cette adresse."
|
||||||
|
|
||||||
#: fields/oembed.php:261 fields/oembed.php:272
|
#: fields/oembed.php:261 fields/oembed.php:272
|
||||||
msgid "Embed Size"
|
msgid "Embed Size"
|
||||||
|
|
@ -2674,13 +2674,8 @@ msgstr "Publier"
|
||||||
|
|
||||||
# @ default
|
# @ default
|
||||||
#: pro/admin/options-page.php:315
|
#: pro/admin/options-page.php:315
|
||||||
msgid "No Custom Field Groups found for this options page"
|
msgid "No Custom Field Groups found for this options page. <a href=\"%s\">Create a Custom Field Group</a>"
|
||||||
msgstr "Aucun groupe de champs trouvé pour cette page options"
|
msgstr "Aucun groupe de champs trouvé pour cette page options. <a href=\"%s\">Créer un groupe de champs</a>"
|
||||||
|
|
||||||
# @ acf
|
|
||||||
#: pro/admin/options-page.php:315
|
|
||||||
msgid "Create a Custom Field Group"
|
|
||||||
msgstr "Créer un groupe de champs"
|
|
||||||
|
|
||||||
#: pro/admin/settings-updates.php:125
|
#: pro/admin/settings-updates.php:125
|
||||||
msgid "<b>Error</b>. Could not connect to update server"
|
msgid "<b>Error</b>. Could not connect to update server"
|
||||||
|
|
|
||||||
Binary file not shown.
|
|
@ -577,6 +577,10 @@ msgstr "מחיקה"
|
||||||
msgid "Error"
|
msgid "Error"
|
||||||
msgstr "שגיאה"
|
msgstr "שגיאה"
|
||||||
|
|
||||||
|
#: fields/oembed.php:220 fields/taxonomy.php:900
|
||||||
|
msgid "Error."
|
||||||
|
msgstr "שגיאה."
|
||||||
|
|
||||||
#: admin/views/field-group-field.php:68
|
#: admin/views/field-group-field.php:68
|
||||||
msgid "Field type does not exist"
|
msgid "Field type does not exist"
|
||||||
msgstr "סוג השדה לא נמצא"
|
msgstr "סוג השדה לא נמצא"
|
||||||
|
|
@ -1245,11 +1249,7 @@ msgid "Site is up to date"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: admin/views/update-network.php:62 admin/views/update.php:16
|
#: admin/views/update-network.php:62 admin/views/update.php:16
|
||||||
msgid "Database Upgrade complete"
|
msgid "Database Upgrade complete. <a href=\"%s\">Return to network dashboard</a>"
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: admin/views/update-network.php:62
|
|
||||||
msgid "Return to network dashboard"
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: admin/views/update-network.php:101 admin/views/update-notice.php:35
|
#: admin/views/update-network.php:101 admin/views/update-notice.php:35
|
||||||
|
|
@ -1299,7 +1299,7 @@ msgid "See what's new"
|
||||||
msgstr "בואו לראות מה חדש"
|
msgstr "בואו לראות מה חדש"
|
||||||
|
|
||||||
#: admin/views/update.php:110
|
#: admin/views/update.php:110
|
||||||
msgid "No updates available"
|
msgid "No updates available."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: api/api-helpers.php:821
|
#: api/api-helpers.php:821
|
||||||
|
|
@ -1822,8 +1822,8 @@ msgid "Enter URL"
|
||||||
msgstr "הקלד כתובת URL"
|
msgstr "הקלד כתובת URL"
|
||||||
|
|
||||||
#: fields/oembed.php:212
|
#: fields/oembed.php:212
|
||||||
msgid "No embed found for the given URL"
|
msgid "No embed found for the given URL."
|
||||||
msgstr "לא נמצא קוד הטמעה לכתובת ה-URL הנתונה"
|
msgstr "לא נמצא קוד הטמעה לכתובת ה-URL הנתונה."
|
||||||
|
|
||||||
#: fields/oembed.php:248 fields/oembed.php:259
|
#: fields/oembed.php:248 fields/oembed.php:259
|
||||||
msgid "Embed Size"
|
msgid "Embed Size"
|
||||||
|
|
@ -2229,12 +2229,8 @@ msgid "Options Updated"
|
||||||
msgstr "האפשרויות עודכנו"
|
msgstr "האפשרויות עודכנו"
|
||||||
|
|
||||||
#: pro/admin/options-page.php:304
|
#: pro/admin/options-page.php:304
|
||||||
msgid "No Custom Field Groups found for this options page"
|
msgid "No Custom Field Groups found for this options page. <a href=\"%s\">Create a Custom Field Group</a>"
|
||||||
msgstr "אף קבוצת שדות לא נמצאה בפח"
|
msgstr "אף קבוצת שדות לא נמצאה בפח. <a href=\"%s\">יצירת קבוצת שדות מיוחדים</a>"
|
||||||
|
|
||||||
#: pro/admin/options-page.php:304
|
|
||||||
msgid "Create a Custom Field Group"
|
|
||||||
msgstr "יצירת קבוצת שדות מיוחדים"
|
|
||||||
|
|
||||||
#: pro/admin/settings-updates.php:137
|
#: pro/admin/settings-updates.php:137
|
||||||
msgid "<b>Error</b>. Could not connect to update server"
|
msgid "<b>Error</b>. Could not connect to update server"
|
||||||
|
|
|
||||||
Binary file not shown.
|
|
@ -3,7 +3,7 @@ msgstr ""
|
||||||
"Project-Id-Version: Advanced Custom Fields Pro v5.2.9\n"
|
"Project-Id-Version: Advanced Custom Fields Pro v5.2.9\n"
|
||||||
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
||||||
"POT-Creation-Date: 2015-08-11 23:26+0200\n"
|
"POT-Creation-Date: 2015-08-11 23:26+0200\n"
|
||||||
"PO-Revision-Date: 2016-04-07 10:30+1000\n"
|
"PO-Revision-Date: 2016-11-03 17:11+1000\n"
|
||||||
"Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
|
"Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
|
||||||
"Language-Team: Elliot Condon <e@elliotcondon.com>\n"
|
"Language-Team: Elliot Condon <e@elliotcondon.com>\n"
|
||||||
"Language: hu_HU\n"
|
"Language: hu_HU\n"
|
||||||
|
|
@ -578,6 +578,10 @@ msgstr "Törlés"
|
||||||
msgid "Error"
|
msgid "Error"
|
||||||
msgstr "Hiba"
|
msgstr "Hiba"
|
||||||
|
|
||||||
|
#: fields/oembed.php:220 fields/taxonomy.php:900
|
||||||
|
msgid "Error."
|
||||||
|
msgstr "Hiba."
|
||||||
|
|
||||||
#: admin/views/field-group-field.php:68
|
#: admin/views/field-group-field.php:68
|
||||||
msgid "Field type does not exist"
|
msgid "Field type does not exist"
|
||||||
msgstr "Mezőtípus nem létezik"
|
msgstr "Mezőtípus nem létezik"
|
||||||
|
|
@ -1282,11 +1286,7 @@ msgid "Site is up to date"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: admin/views/update-network.php:62 admin/views/update.php:16
|
#: admin/views/update-network.php:62 admin/views/update.php:16
|
||||||
msgid "Database Upgrade complete"
|
msgid "Database Upgrade complete. <a href=\"%s\">Return to network dashboard</a>"
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: admin/views/update-network.php:62
|
|
||||||
msgid "Return to network dashboard"
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: admin/views/update-network.php:101 admin/views/update-notice.php:35
|
#: admin/views/update-network.php:101 admin/views/update-notice.php:35
|
||||||
|
|
@ -1337,7 +1337,7 @@ msgid "See what's new"
|
||||||
msgstr "Újdonságok áttekintése"
|
msgstr "Újdonságok áttekintése"
|
||||||
|
|
||||||
#: admin/views/update.php:110
|
#: admin/views/update.php:110
|
||||||
msgid "No updates available"
|
msgid "No updates available."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: api/api-helpers.php:821
|
#: api/api-helpers.php:821
|
||||||
|
|
@ -1865,8 +1865,8 @@ msgid "Enter URL"
|
||||||
msgstr "URL megadása"
|
msgstr "URL megadása"
|
||||||
|
|
||||||
#: fields/oembed.php:212
|
#: fields/oembed.php:212
|
||||||
msgid "No embed found for the given URL"
|
msgid "No embed found for the given URL."
|
||||||
msgstr "Nem található beágyazható elem a megadott URL-en"
|
msgstr "Nem található beágyazható elem a megadott URL-en."
|
||||||
|
|
||||||
#: fields/oembed.php:248 fields/oembed.php:259
|
#: fields/oembed.php:248 fields/oembed.php:259
|
||||||
msgid "Embed Size"
|
msgid "Embed Size"
|
||||||
|
|
@ -2279,12 +2279,8 @@ msgid "Options Updated"
|
||||||
msgstr "Beállítások elmentve"
|
msgstr "Beállítások elmentve"
|
||||||
|
|
||||||
#: pro/admin/options-page.php:304
|
#: pro/admin/options-page.php:304
|
||||||
msgid "No Custom Field Groups found for this options page"
|
msgid "No Custom Field Groups found for this options page. <a href=\"%s\">Create a Custom Field Group</a>"
|
||||||
msgstr "Nincsenek mezőcsoportok ehhez a beállítás oldalhoz."
|
msgstr "Nincsenek mezőcsoportok ehhez a beállítás oldalhoz. <a href=\"%s\">Mezőcsoport hozzáadása</a>"
|
||||||
|
|
||||||
#: pro/admin/options-page.php:304
|
|
||||||
msgid "Create a Custom Field Group"
|
|
||||||
msgstr "Mezőcsoport hozzáadása"
|
|
||||||
|
|
||||||
#: pro/admin/settings-updates.php:137
|
#: pro/admin/settings-updates.php:137
|
||||||
msgid "<b>Error</b>. Could not connect to update server"
|
msgid "<b>Error</b>. Could not connect to update server"
|
||||||
|
|
|
||||||
Binary file not shown.
|
|
@ -3,7 +3,7 @@ msgstr ""
|
||||||
"Project-Id-Version: Advanced Custom Fields\n"
|
"Project-Id-Version: Advanced Custom Fields\n"
|
||||||
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
||||||
"POT-Creation-Date: 2016-01-25 09:18-0800\n"
|
"POT-Creation-Date: 2016-01-25 09:18-0800\n"
|
||||||
"PO-Revision-Date: 2016-04-07 10:30+1000\n"
|
"PO-Revision-Date: 2016-11-03 17:12+1000\n"
|
||||||
"Language-Team: Elliot Condon <e@elliotcondon.com>\n"
|
"Language-Team: Elliot Condon <e@elliotcondon.com>\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
|
@ -574,6 +574,10 @@ msgstr "Hapus"
|
||||||
msgid "Error"
|
msgid "Error"
|
||||||
msgstr "Error"
|
msgstr "Error"
|
||||||
|
|
||||||
|
#: fields/oembed.php:220 fields/taxonomy.php:900
|
||||||
|
msgid "Error."
|
||||||
|
msgstr "Error."
|
||||||
|
|
||||||
#: admin/views/field-group-field.php:69
|
#: admin/views/field-group-field.php:69
|
||||||
msgid "Field type does not exist"
|
msgid "Field type does not exist"
|
||||||
msgstr "Jenis bidang tidak ada"
|
msgstr "Jenis bidang tidak ada"
|
||||||
|
|
@ -1270,12 +1274,8 @@ msgid "Site is up to date"
|
||||||
msgstr "Situs ini up-to-date"
|
msgstr "Situs ini up-to-date"
|
||||||
|
|
||||||
#: admin/views/update-network.php:62 admin/views/update.php:16
|
#: admin/views/update-network.php:62 admin/views/update.php:16
|
||||||
msgid "Database Upgrade complete"
|
msgid "Database Upgrade complete. <a href=\"%s\">Return to network dashboard</a>"
|
||||||
msgstr "Upgrade database selesai"
|
msgstr "Upgrade database selesai. <a href=\"%s\">Kembali ke dasbor jaringan</a>"
|
||||||
|
|
||||||
#: admin/views/update-network.php:62
|
|
||||||
msgid "Return to network dashboard"
|
|
||||||
msgstr "Kembali ke dasbor jaringan"
|
|
||||||
|
|
||||||
#: admin/views/update-network.php:101 admin/views/update-notice.php:35
|
#: admin/views/update-network.php:101 admin/views/update-notice.php:35
|
||||||
msgid ""
|
msgid ""
|
||||||
|
|
@ -1324,7 +1324,7 @@ msgid "See what's new"
|
||||||
msgstr "Lihat apa yang baru"
|
msgstr "Lihat apa yang baru"
|
||||||
|
|
||||||
#: admin/views/update.php:110
|
#: admin/views/update.php:110
|
||||||
msgid "No updates available"
|
msgid "No updates available."
|
||||||
msgstr "pembaruan tidak tersedia ."
|
msgstr "pembaruan tidak tersedia ."
|
||||||
|
|
||||||
#: api/api-helpers.php:909
|
#: api/api-helpers.php:909
|
||||||
|
|
@ -1871,8 +1871,8 @@ msgid "Enter URL"
|
||||||
msgstr "Masukkan URL"
|
msgstr "Masukkan URL"
|
||||||
|
|
||||||
#: fields/oembed.php:225
|
#: fields/oembed.php:225
|
||||||
msgid "No embed found for the given URL"
|
msgid "No embed found for the given URL."
|
||||||
msgstr "Tidak ada embed ditemukan dari URL yang diberikan"
|
msgstr "Tidak ada embed ditemukan dari URL yang diberikan."
|
||||||
|
|
||||||
#: fields/oembed.php:261 fields/oembed.php:272
|
#: fields/oembed.php:261 fields/oembed.php:272
|
||||||
msgid "Embed Size"
|
msgid "Embed Size"
|
||||||
|
|
@ -2254,12 +2254,8 @@ msgid "Options Updated"
|
||||||
msgstr "Pilihan Diperbarui"
|
msgstr "Pilihan Diperbarui"
|
||||||
|
|
||||||
#: pro/admin/options-page.php:304
|
#: pro/admin/options-page.php:304
|
||||||
msgid "No Custom Field Groups found for this options page"
|
msgid "No Custom Field Groups found for this options page. <a href=\"%s\">Create a Custom Field Group</a>"
|
||||||
msgstr "Tidak ada Grup Bidang Kustom ditemukan untuk halaman pilihan ini"
|
msgstr "Tidak ada Grup Bidang Kustom ditemukan untuk halaman pilihan ini. <a href=\"%s\">Buat Grup Bidang Kustom</a>"
|
||||||
|
|
||||||
#: pro/admin/options-page.php:304
|
|
||||||
msgid "Create a Custom Field Group"
|
|
||||||
msgstr "Buat Grup Bidang Kustom"
|
|
||||||
|
|
||||||
#: pro/admin/settings-updates.php:137
|
#: pro/admin/settings-updates.php:137
|
||||||
msgid "<b>Error</b>. Could not connect to update server"
|
msgid "<b>Error</b>. Could not connect to update server"
|
||||||
|
|
|
||||||
Binary file not shown.
1040
lang/acf-it_IT.po
1040
lang/acf-it_IT.po
File diff suppressed because it is too large
Load Diff
BIN
lang/acf-ja.mo
BIN
lang/acf-ja.mo
Binary file not shown.
|
|
@ -3,7 +3,7 @@ msgstr ""
|
||||||
"Project-Id-Version: Advanced Custom Fields Pro v5.2.9\n"
|
"Project-Id-Version: Advanced Custom Fields Pro v5.2.9\n"
|
||||||
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
||||||
"POT-Creation-Date: 2015-08-11 23:33+0200\n"
|
"POT-Creation-Date: 2015-08-11 23:33+0200\n"
|
||||||
"PO-Revision-Date: 2016-04-07 10:30+1000\n"
|
"PO-Revision-Date: 2016-11-03 17:12+1000\n"
|
||||||
"Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
|
"Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
|
||||||
"Language-Team: shogo kato <s_kato@crete.co.jp>\n"
|
"Language-Team: shogo kato <s_kato@crete.co.jp>\n"
|
||||||
"Language: ja_JP\n"
|
"Language: ja_JP\n"
|
||||||
|
|
@ -574,6 +574,10 @@ msgstr "削除"
|
||||||
msgid "Error"
|
msgid "Error"
|
||||||
msgstr "エラー"
|
msgstr "エラー"
|
||||||
|
|
||||||
|
#: fields/oembed.php:220 fields/taxonomy.php:900
|
||||||
|
msgid "Error."
|
||||||
|
msgstr "エラー."
|
||||||
|
|
||||||
#: admin/views/field-group-field.php:68
|
#: admin/views/field-group-field.php:68
|
||||||
msgid "Field type does not exist"
|
msgid "Field type does not exist"
|
||||||
msgstr "フィールドタイプが存在しません"
|
msgstr "フィールドタイプが存在しません"
|
||||||
|
|
@ -1263,11 +1267,7 @@ msgid "Site is up to date"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: admin/views/update-network.php:62 admin/views/update.php:16
|
#: admin/views/update-network.php:62 admin/views/update.php:16
|
||||||
msgid "Database Upgrade complete"
|
msgid "Database Upgrade complete. <a href=\"%s\">Return to network dashboard</a>"
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: admin/views/update-network.php:62
|
|
||||||
msgid "Return to network dashboard"
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: admin/views/update-network.php:101 admin/views/update-notice.php:35
|
#: admin/views/update-network.php:101 admin/views/update-notice.php:35
|
||||||
|
|
@ -1317,7 +1317,7 @@ msgid "See what's new"
|
||||||
msgstr "新着情報を見る"
|
msgstr "新着情報を見る"
|
||||||
|
|
||||||
#: admin/views/update.php:110
|
#: admin/views/update.php:110
|
||||||
msgid "No updates available"
|
msgid "No updates available."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: api/api-helpers.php:821
|
#: api/api-helpers.php:821
|
||||||
|
|
@ -1840,8 +1840,8 @@ msgid "Enter URL"
|
||||||
msgstr "URLを入力"
|
msgstr "URLを入力"
|
||||||
|
|
||||||
#: fields/oembed.php:212
|
#: fields/oembed.php:212
|
||||||
msgid "No embed found for the given URL"
|
msgid "No embed found for the given URL."
|
||||||
msgstr "指定されたURLには埋め込む内容がありません"
|
msgstr "指定されたURLには埋め込む内容がありません."
|
||||||
|
|
||||||
#: fields/oembed.php:248 fields/oembed.php:259
|
#: fields/oembed.php:248 fields/oembed.php:259
|
||||||
msgid "Embed Size"
|
msgid "Embed Size"
|
||||||
|
|
@ -2248,12 +2248,8 @@ msgid "Options Updated"
|
||||||
msgstr "オプションを更新しました"
|
msgstr "オプションを更新しました"
|
||||||
|
|
||||||
#: pro/admin/options-page.php:304
|
#: pro/admin/options-page.php:304
|
||||||
msgid "No Custom Field Groups found for this options page"
|
msgid "No Custom Field Groups found for this options page. <a href=\"%s\">Create a Custom Field Group</a>"
|
||||||
msgstr "このオプションページにカスタムフィールドグループがありません"
|
msgstr "このオプションページにカスタムフィールドグループがありません. <a href=\"%s\">カスタムフィールドグループを作成</a>"
|
||||||
|
|
||||||
#: pro/admin/options-page.php:304
|
|
||||||
msgid "Create a Custom Field Group"
|
|
||||||
msgstr "カスタムフィールドグループを作成"
|
|
||||||
|
|
||||||
#: pro/admin/settings-updates.php:137
|
#: pro/admin/settings-updates.php:137
|
||||||
msgid "<b>Error</b>. Could not connect to update server"
|
msgid "<b>Error</b>. Could not connect to update server"
|
||||||
|
|
|
||||||
Binary file not shown.
1908
lang/acf-nb_NO.po
1908
lang/acf-nb_NO.po
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue