plugin updates
This commit is contained in:
@@ -44,6 +44,31 @@ require_once ABSPATH . 'wp-admin/admin-header.php';
|
|||||||
<div class="about__section changelog has-subtle-background-color">
|
<div class="about__section changelog has-subtle-background-color">
|
||||||
<div class="column">
|
<div class="column">
|
||||||
<h2><?php _e( 'Maintenance and Security Release' ); ?></h2>
|
<h2><?php _e( 'Maintenance and Security Release' ); ?></h2>
|
||||||
|
<p>
|
||||||
|
<?php
|
||||||
|
printf(
|
||||||
|
/* translators: 1: WordPress version number, 2: Plural number of bugs. */
|
||||||
|
_n(
|
||||||
|
'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bug.',
|
||||||
|
'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bugs.',
|
||||||
|
3
|
||||||
|
),
|
||||||
|
'6.5.5',
|
||||||
|
'3'
|
||||||
|
);
|
||||||
|
?>
|
||||||
|
<?php
|
||||||
|
printf(
|
||||||
|
/* translators: %s: HelpHub URL. */
|
||||||
|
__( 'For more information, see <a href="%s">the release notes</a>.' ),
|
||||||
|
sprintf(
|
||||||
|
/* translators: %s: WordPress version. */
|
||||||
|
esc_url( __( 'https://wordpress.org/support/wordpress-version/version-%s/' ) ),
|
||||||
|
sanitize_title( '6.5.5' )
|
||||||
|
)
|
||||||
|
);
|
||||||
|
?>
|
||||||
|
</p>
|
||||||
<p>
|
<p>
|
||||||
<?php
|
<?php
|
||||||
printf(
|
printf(
|
||||||
|
|||||||
@@ -917,7 +917,7 @@ function install_plugin_information() {
|
|||||||
* }
|
* }
|
||||||
* @param bool $compatible_php The result of a PHP compatibility check.
|
* @param bool $compatible_php The result of a PHP compatibility check.
|
||||||
* @param bool $compatible_wp The result of a WP compatibility check.
|
* @param bool $compatible_wp The result of a WP compatibility check.
|
||||||
* @return string $button The markup for the dependency row button.
|
* @return string The markup for the dependency row button. An empty string if the user does not have capabilities.
|
||||||
*/
|
*/
|
||||||
function wp_get_plugin_action_button( $name, $data, $compatible_php, $compatible_wp ) {
|
function wp_get_plugin_action_button( $name, $data, $compatible_php, $compatible_wp ) {
|
||||||
$button = '';
|
$button = '';
|
||||||
@@ -947,16 +947,6 @@ function wp_get_plugin_action_button( $name, $data, $compatible_php, $compatible
|
|||||||
$all_plugin_dependencies_installed = $installed_plugin_dependencies_count === $plugin_dependencies_count;
|
$all_plugin_dependencies_installed = $installed_plugin_dependencies_count === $plugin_dependencies_count;
|
||||||
$all_plugin_dependencies_active = $active_plugin_dependencies_count === $plugin_dependencies_count;
|
$all_plugin_dependencies_active = $active_plugin_dependencies_count === $plugin_dependencies_count;
|
||||||
|
|
||||||
sprintf(
|
|
||||||
'<a class="install-now button" data-slug="%s" href="%s" aria-label="%s" data-name="%s">%s</a>',
|
|
||||||
esc_attr( $data->slug ),
|
|
||||||
esc_url( $status['url'] ),
|
|
||||||
/* translators: %s: Plugin name and version. */
|
|
||||||
esc_attr( sprintf( _x( 'Install %s now', 'plugin' ), $name ) ),
|
|
||||||
esc_attr( $name ),
|
|
||||||
_x( 'Install Now', 'plugin' )
|
|
||||||
);
|
|
||||||
|
|
||||||
if ( current_user_can( 'install_plugins' ) || current_user_can( 'update_plugins' ) ) {
|
if ( current_user_can( 'install_plugins' ) || current_user_can( 'update_plugins' ) ) {
|
||||||
switch ( $status['status'] ) {
|
switch ( $status['status'] ) {
|
||||||
case 'install':
|
case 'install':
|
||||||
@@ -1053,7 +1043,7 @@ function wp_get_plugin_action_button( $name, $data, $compatible_php, $compatible
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
return $button;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return $button;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,7 +9,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: Customize WordPress with powerful, professional and intuitive fields.
|
* Description: Customize WordPress with powerful, professional and intuitive fields.
|
||||||
* Version: 6.3.1.2
|
* Version: 6.3.3
|
||||||
* Author: WP Engine
|
* Author: WP Engine
|
||||||
* Author URI: https://wpengine.com/?utm_source=wordpress.org&utm_medium=referral&utm_campaign=plugin_directory&utm_content=advanced_custom_fields
|
* Author URI: https://wpengine.com/?utm_source=wordpress.org&utm_medium=referral&utm_campaign=plugin_directory&utm_content=advanced_custom_fields
|
||||||
* Update URI: https://www.advancedcustomfields.com/pro
|
* Update URI: https://www.advancedcustomfields.com/pro
|
||||||
@@ -36,7 +36,7 @@ if ( ! class_exists( 'ACF' ) ) {
|
|||||||
*
|
*
|
||||||
* @var string
|
* @var string
|
||||||
*/
|
*/
|
||||||
public $version = '6.3.1.2';
|
public $version = '6.3.3';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The plugin settings array.
|
* The plugin settings array.
|
||||||
|
|||||||
+2
-1
@@ -2441,7 +2441,8 @@ html[dir=rtl] .acf-field-object.open > .handle {
|
|||||||
.acf-taxonomy-select-id,
|
.acf-taxonomy-select-id,
|
||||||
.acf-relationship-select-id,
|
.acf-relationship-select-id,
|
||||||
.acf-post_object-select-id,
|
.acf-post_object-select-id,
|
||||||
.acf-page_link-select-id {
|
.acf-page_link-select-id,
|
||||||
|
.acf-user-select-id {
|
||||||
color: #98A2B3;
|
color: #98A2B3;
|
||||||
padding-left: 10px;
|
padding-left: 10px;
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
@@ -1269,6 +1269,12 @@ html[dir=rtl] .acf-button-group label:last-child {
|
|||||||
border-radius: 120px;
|
border-radius: 120px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.acf-true-false:has(.acf-switch) label {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
/* in media modal */
|
/* in media modal */
|
||||||
.compat-item .acf-true-false .message {
|
.compat-item .acf-true-false .message {
|
||||||
float: none;
|
float: none;
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
+11
-13
@@ -3059,21 +3059,16 @@ __webpack_require__.r(__webpack_exports__);
|
|||||||
/* harmony export */ });
|
/* harmony export */ });
|
||||||
/* harmony import */ var _toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toPropertyKey.js */ "./node_modules/@babel/runtime/helpers/esm/toPropertyKey.js");
|
/* harmony import */ var _toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toPropertyKey.js */ "./node_modules/@babel/runtime/helpers/esm/toPropertyKey.js");
|
||||||
|
|
||||||
function _defineProperty(obj, key, value) {
|
function _defineProperty(e, r, t) {
|
||||||
key = (0,_toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__["default"])(key);
|
return (r = (0,_toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__["default"])(r)) in e ? Object.defineProperty(e, r, {
|
||||||
if (key in obj) {
|
value: t,
|
||||||
Object.defineProperty(obj, key, {
|
enumerable: !0,
|
||||||
value: value,
|
configurable: !0,
|
||||||
enumerable: true,
|
writable: !0
|
||||||
configurable: true,
|
}) : e[r] = t, e;
|
||||||
writable: true
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
obj[key] = value;
|
|
||||||
}
|
|
||||||
return obj;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ "./node_modules/@babel/runtime/helpers/esm/toPrimitive.js":
|
/***/ "./node_modules/@babel/runtime/helpers/esm/toPrimitive.js":
|
||||||
@@ -3100,6 +3095,7 @@ function toPrimitive(t, r) {
|
|||||||
return ("string" === r ? String : Number)(t);
|
return ("string" === r ? String : Number)(t);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ "./node_modules/@babel/runtime/helpers/esm/toPropertyKey.js":
|
/***/ "./node_modules/@babel/runtime/helpers/esm/toPropertyKey.js":
|
||||||
@@ -3122,6 +3118,7 @@ function toPropertyKey(t) {
|
|||||||
return "symbol" == (0,_typeof_js__WEBPACK_IMPORTED_MODULE_0__["default"])(i) ? i : i + "";
|
return "symbol" == (0,_typeof_js__WEBPACK_IMPORTED_MODULE_0__["default"])(i) ? i : i + "";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ "./node_modules/@babel/runtime/helpers/esm/typeof.js":
|
/***/ "./node_modules/@babel/runtime/helpers/esm/typeof.js":
|
||||||
@@ -3145,6 +3142,7 @@ function _typeof(o) {
|
|||||||
}, _typeof(o);
|
}, _typeof(o);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/***/ })
|
/***/ })
|
||||||
|
|
||||||
/******/ });
|
/******/ });
|
||||||
|
|||||||
+1
-1
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
@@ -777,6 +777,7 @@
|
|||||||
ajaxData: function (data) {
|
ajaxData: function (data) {
|
||||||
ajaxData.paged = data.paged;
|
ajaxData.paged = data.paged;
|
||||||
ajaxData.s = data.s;
|
ajaxData.s = data.s;
|
||||||
|
ajaxData.conditional_logic = true;
|
||||||
ajaxData.include = $.isNumeric(data.s) ? Number(data.s) : '';
|
ajaxData.include = $.isNumeric(data.s) ? Number(data.s) : '';
|
||||||
return acf.prepareForAjax(ajaxData);
|
return acf.prepareForAjax(ajaxData);
|
||||||
},
|
},
|
||||||
@@ -4464,15 +4465,15 @@
|
|||||||
this.set('timeout', setTimeout(callback, 300));
|
this.set('timeout', setTimeout(callback, 300));
|
||||||
},
|
},
|
||||||
search: function (url) {
|
search: function (url) {
|
||||||
// ajax
|
const ajaxData = {
|
||||||
var ajaxData = {
|
|
||||||
action: 'acf/fields/oembed/search',
|
action: 'acf/fields/oembed/search',
|
||||||
s: url,
|
s: url,
|
||||||
field_key: this.get('key')
|
field_key: this.get('key'),
|
||||||
|
nonce: this.get('nonce')
|
||||||
};
|
};
|
||||||
|
|
||||||
// clear existing timeout
|
// clear existing timeout
|
||||||
var xhr = this.get('xhr');
|
let xhr = this.get('xhr');
|
||||||
if (xhr) {
|
if (xhr) {
|
||||||
xhr.abort();
|
xhr.abort();
|
||||||
}
|
}
|
||||||
@@ -4481,7 +4482,7 @@
|
|||||||
this.showLoading();
|
this.showLoading();
|
||||||
|
|
||||||
// query
|
// query
|
||||||
var xhr = $.ajax({
|
xhr = $.ajax({
|
||||||
url: acf.get('ajaxurl'),
|
url: acf.get('ajaxurl'),
|
||||||
data: acf.prepareForAjax(ajaxData),
|
data: acf.prepareForAjax(ajaxData),
|
||||||
type: 'post',
|
type: 'post',
|
||||||
@@ -4892,6 +4893,7 @@
|
|||||||
// extra
|
// extra
|
||||||
ajaxData.action = 'acf/fields/relationship/query';
|
ajaxData.action = 'acf/fields/relationship/query';
|
||||||
ajaxData.field_key = this.get('key');
|
ajaxData.field_key = this.get('key');
|
||||||
|
ajaxData.nonce = this.get('nonce');
|
||||||
|
|
||||||
// Filter.
|
// Filter.
|
||||||
ajaxData = acf.applyFilters('relationship_ajax_data', ajaxData, this);
|
ajaxData = acf.applyFilters('relationship_ajax_data', ajaxData, this);
|
||||||
@@ -5673,7 +5675,8 @@
|
|||||||
// ajax
|
// ajax
|
||||||
var ajaxData = {
|
var ajaxData = {
|
||||||
action: 'acf/fields/taxonomy/add_term',
|
action: 'acf/fields/taxonomy/add_term',
|
||||||
field_key: field.get('key')
|
field_key: field.get('key'),
|
||||||
|
nonce: field.get('nonce')
|
||||||
};
|
};
|
||||||
|
|
||||||
// get HTML
|
// get HTML
|
||||||
@@ -5724,6 +5727,7 @@
|
|||||||
var ajaxData = {
|
var ajaxData = {
|
||||||
action: 'acf/fields/taxonomy/add_term',
|
action: 'acf/fields/taxonomy/add_term',
|
||||||
field_key: field.get('key'),
|
field_key: field.get('key'),
|
||||||
|
nonce: field.get('nonce'),
|
||||||
term_name: $name.val(),
|
term_name: $name.val(),
|
||||||
term_parent: $parent.length ? $parent.val() : 0
|
term_parent: $parent.length ? $parent.val() : 0
|
||||||
};
|
};
|
||||||
@@ -6109,16 +6113,6 @@
|
|||||||
type: 'user'
|
type: 'user'
|
||||||
});
|
});
|
||||||
acf.registerFieldType(Field);
|
acf.registerFieldType(Field);
|
||||||
acf.addFilter('select2_ajax_data', function (data, args, $input, field, select2) {
|
|
||||||
if (!field || 'user' !== field.get('type')) {
|
|
||||||
return data;
|
|
||||||
}
|
|
||||||
const query_nonce = field.get('queryNonce');
|
|
||||||
if (query_nonce && query_nonce.toString().length) {
|
|
||||||
data.user_query_nonce = query_nonce;
|
|
||||||
}
|
|
||||||
return data;
|
|
||||||
});
|
|
||||||
})(jQuery);
|
})(jQuery);
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
@@ -9245,6 +9239,9 @@
|
|||||||
var field = this.get('field');
|
var field = this.get('field');
|
||||||
if (field) {
|
if (field) {
|
||||||
ajaxData.field_key = field.get('key');
|
ajaxData.field_key = field.get('key');
|
||||||
|
if (field.get('nonce')) {
|
||||||
|
ajaxData.nonce = field.get('nonce');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// callback
|
// callback
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
@@ -3306,30 +3306,25 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* acf.prepareForAjax
|
* Prepares AJAX data prior to being sent.
|
||||||
*
|
*
|
||||||
* description
|
* @since 5.6.5
|
||||||
*
|
*
|
||||||
* @date 4/1/18
|
* @param {Object} data The data to prepare
|
||||||
* @since 5.6.5
|
* @return {Object} The prepared data.
|
||||||
*
|
|
||||||
* @param type $var Description. Default.
|
|
||||||
* @return type Description.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
acf.prepareForAjax = function (data) {
|
acf.prepareForAjax = function (data) {
|
||||||
// required
|
// Set a default nonce if we don't have one already.
|
||||||
data.nonce = acf.get('nonce');
|
if ('undefined' === typeof data.nonce) {
|
||||||
|
data.nonce = acf.get('nonce');
|
||||||
|
}
|
||||||
data.post_id = acf.get('post_id');
|
data.post_id = acf.get('post_id');
|
||||||
|
|
||||||
// language
|
|
||||||
if (acf.has('language')) {
|
if (acf.has('language')) {
|
||||||
data.lang = acf.get('language');
|
data.lang = acf.get('language');
|
||||||
}
|
}
|
||||||
|
|
||||||
// filter for 3rd party customization
|
// Filter for 3rd party customization.
|
||||||
data = acf.applyFilters('prepare_for_ajax', data);
|
data = acf.applyFilters('prepare_for_ajax', data);
|
||||||
// return
|
|
||||||
return data;
|
return data;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
+1459
-71
File diff suppressed because it is too large
Load Diff
+1
-1
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
+10
-7
@@ -1002,9 +1002,9 @@
|
|||||||
|
|
||||||
// step 2
|
// step 2
|
||||||
var step2 = this.proxy(function () {
|
var step2 = this.proxy(function () {
|
||||||
// ajax
|
const ajaxData = {
|
||||||
var ajaxData = {
|
|
||||||
action: 'acf/fields/gallery/get_attachment',
|
action: 'acf/fields/gallery/get_attachment',
|
||||||
|
nonce: this.get('nonce'),
|
||||||
field_key: this.get('key'),
|
field_key: this.get('key'),
|
||||||
id: id
|
id: id
|
||||||
};
|
};
|
||||||
@@ -1086,9 +1086,9 @@
|
|||||||
|
|
||||||
// step 1
|
// step 1
|
||||||
var step1 = this.proxy(function () {
|
var step1 = this.proxy(function () {
|
||||||
// vars
|
const ajaxData = {
|
||||||
var ajaxData = {
|
|
||||||
action: 'acf/fields/gallery/get_sort_order',
|
action: 'acf/fields/gallery/get_sort_order',
|
||||||
|
nonce: this.get('nonce'),
|
||||||
field_key: this.get('key'),
|
field_key: this.get('key'),
|
||||||
ids: ids,
|
ids: ids,
|
||||||
sort: val
|
sort: val
|
||||||
@@ -1134,14 +1134,16 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
// serialize data
|
// serialize data
|
||||||
var ajaxData = acf.serialize(this.$sideData());
|
const ajaxData = acf.serialize(this.$sideData());
|
||||||
|
|
||||||
// loading
|
// loading
|
||||||
$submit.addClass('disabled');
|
$submit.addClass('disabled');
|
||||||
$submit.before('<i class="acf-loading"></i> ');
|
$submit.before('<i class="acf-loading"></i> ');
|
||||||
|
|
||||||
// append AJAX action
|
// Append AJAX action and nonce.
|
||||||
ajaxData.action = 'acf/fields/gallery/update_attachment';
|
ajaxData.action = 'acf/fields/gallery/update_attachment';
|
||||||
|
ajaxData.nonce = this.get('nonce');
|
||||||
|
ajaxData.field_key = this.get('key');
|
||||||
|
|
||||||
// ajax
|
// ajax
|
||||||
$.ajax({
|
$.ajax({
|
||||||
@@ -1876,7 +1878,8 @@
|
|||||||
field_key: this.get('key'),
|
field_key: this.get('key'),
|
||||||
field_name: this.get('orig_name'),
|
field_name: this.get('orig_name'),
|
||||||
rows_per_page: parseInt(this.get('per_page')),
|
rows_per_page: parseInt(this.get('per_page')),
|
||||||
refresh: clearChanged
|
refresh: clearChanged,
|
||||||
|
nonce: this.get('nonce')
|
||||||
});
|
});
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url: ajaxurl,
|
url: ajaxurl,
|
||||||
|
|||||||
+1
-1
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
+2
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
+2
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
+2
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
+2
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -889,7 +889,7 @@ function acf_render_field_instructions( $field, $tooltip = false ) {
|
|||||||
$instructions = acf_esc_html( $field['instructions'] );
|
$instructions = acf_esc_html( $field['instructions'] );
|
||||||
|
|
||||||
if ( $tooltip ) {
|
if ( $tooltip ) {
|
||||||
printf( '<div class="acf-tip"><i tabindex="0" class="acf-icon acf-icon-help acf-js-tooltip" title="%s">?</i></div>', $instructions ); //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- escaped earlier in function.
|
printf( '<div class="acf-tip"><i tabindex="0" class="acf-icon acf-icon-help acf-js-tooltip" title="%s">?</i></div>', esc_attr( $instructions ) ); //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- escaped earlier in function.
|
||||||
} else {
|
} else {
|
||||||
printf( '<p class="description">%s</p>', $instructions ); //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- escaped earlier in function.
|
printf( '<p class="description">%s</p>', $instructions ); //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- escaped earlier in function.
|
||||||
}
|
}
|
||||||
|
|||||||
+163
-90
@@ -525,19 +525,35 @@ if ( ! class_exists( 'ACF_Admin_Internal_Post_Type_List' ) ) :
|
|||||||
* @since 6.0
|
* @since 6.0
|
||||||
*/
|
*/
|
||||||
public function check_activate() {
|
public function check_activate() {
|
||||||
// phpcs:disable WordPress.Security.NonceVerification.Recommended -- Used for redirect notice.
|
// Verify capability.
|
||||||
// Display notice on success redirect.
|
if ( ! acf_current_user_can_admin() ) {
|
||||||
if ( isset( $_GET['acfactivatecomplete'] ) ) {
|
return;
|
||||||
$ids = array_map( 'intval', explode( ',', $_GET['acfactivatecomplete'] ) ); // phpcs:ignore WordPress.Security.ValidatedSanitizedInput.InputNotSanitized -- Sanitized with intval().
|
}
|
||||||
// phpcs:enable WordPress.Security.NonceVerification.Recommended
|
|
||||||
// Generate text.
|
|
||||||
$text = $this->get_action_notice_text( 'acfactivatecomplete', count( $ids ) );
|
|
||||||
|
|
||||||
// Append links to text.
|
$args = acf_request_args(
|
||||||
$links = array();
|
array(
|
||||||
foreach ( $ids as $id ) {
|
'acfactivatecomplete' => '',
|
||||||
$links[] = '<a href="' . get_edit_post_link( $id ) . '">' . get_the_title( $id ) . '</a>';
|
'acfactivate' => '',
|
||||||
|
'post' => '',
|
||||||
|
'action2' => '',
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
if ( ! empty( $args['acfactivatecomplete'] ) ) {
|
||||||
|
check_admin_referer( 'bulk-posts' );
|
||||||
|
|
||||||
|
$activated = array_map( 'intval', explode( ',', $args['acfactivatecomplete'] ) );
|
||||||
|
$text = $this->get_action_notice_text( 'acfactivatecomplete', count( $activated ) );
|
||||||
|
$links = array();
|
||||||
|
|
||||||
|
foreach ( $activated as $activated_id ) {
|
||||||
|
$links[] = sprintf(
|
||||||
|
'<a href="%1$s">%2$s</a>',
|
||||||
|
get_edit_post_link( $activated_id ),
|
||||||
|
get_the_title( $activated_id )
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
$text .= ' ' . implode( ', ', $links );
|
$text .= ' ' . implode( ', ', $links );
|
||||||
|
|
||||||
// Add notice.
|
// Add notice.
|
||||||
@@ -546,26 +562,28 @@ if ( ! class_exists( 'ACF_Admin_Internal_Post_Type_List' ) ) :
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Find items to activate.
|
// Find items to activate.
|
||||||
$ids = array();
|
$to_activate = array();
|
||||||
if ( isset( $_GET['acfactivate'] ) ) {
|
if ( ! empty( $args['acfactivate'] ) ) {
|
||||||
$ids[] = intval( $_GET['acfactivate'] );
|
$to_activate[] = intval( $args['acfactivate'] );
|
||||||
} elseif ( isset( $_GET['post'], $_GET['action2'] ) && $_GET['action2'] === 'acfactivate' ) {
|
} elseif ( ! empty( $args['post'] ) && 'acfactivate' === $args['action2'] ) {
|
||||||
$ids = array_map( 'intval', $_GET['post'] );
|
$to_activate = array_map( 'intval', $args['post'] );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( $ids ) {
|
if ( ! empty( $to_activate ) ) {
|
||||||
check_admin_referer( 'bulk-posts' );
|
check_admin_referer( 'bulk-posts' );
|
||||||
|
|
||||||
// Activate the field groups and return an array of IDs that were activated.
|
$activated_ids = array();
|
||||||
$new_ids = array();
|
$nonce = wp_create_nonce( 'bulk-posts' );
|
||||||
foreach ( $ids as $id ) {
|
|
||||||
|
foreach ( $to_activate as $id ) {
|
||||||
$post_type = get_post_type( $id );
|
$post_type = get_post_type( $id );
|
||||||
|
|
||||||
if ( $post_type && acf_update_internal_post_type_active_status( $id, true, $post_type ) ) {
|
if ( $post_type && acf_update_internal_post_type_active_status( $id, true, $post_type ) ) {
|
||||||
$new_ids[] = $id;
|
$activated_ids[] = $id;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
wp_safe_redirect( $this->get_admin_url( '&acfactivatecomplete=' . implode( ',', $new_ids ) ) );
|
wp_safe_redirect( $this->get_admin_url( '&_wpnonce=' . $nonce . '&acfactivatecomplete=' . implode( ',', $activated_ids ) ) );
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -576,19 +594,36 @@ if ( ! class_exists( 'ACF_Admin_Internal_Post_Type_List' ) ) :
|
|||||||
* @since 6.0
|
* @since 6.0
|
||||||
*/
|
*/
|
||||||
public function check_deactivate() {
|
public function check_deactivate() {
|
||||||
// phpcs:disable WordPress.Security.NonceVerification.Recommended -- Used for redirect notice.
|
// Verify capability.
|
||||||
// Display notice on success redirect.
|
if ( ! acf_current_user_can_admin() ) {
|
||||||
if ( isset( $_GET['acfdeactivatecomplete'] ) ) {
|
return;
|
||||||
$ids = array_map( 'intval', explode( ',', $_GET['acfdeactivatecomplete'] ) ); // phpcs:ignore WordPress.Security.ValidatedSanitizedInput.InputNotSanitized -- Sanitized with intval().
|
}
|
||||||
// phpcs:enable WordPress.Security.NonceVerification.Recommended
|
|
||||||
// Generate text.
|
|
||||||
$text = $this->get_action_notice_text( 'acfdeactivatecomplete', count( $ids ) );
|
|
||||||
|
|
||||||
// Append links to text.
|
$args = acf_request_args(
|
||||||
$links = array();
|
array(
|
||||||
foreach ( $ids as $id ) {
|
'acfdeactivatecomplete' => '',
|
||||||
$links[] = '<a href="' . get_edit_post_link( $id ) . '">' . get_the_title( $id ) . '</a>';
|
'acfdeactivate' => '',
|
||||||
|
'post' => '',
|
||||||
|
'action2' => '',
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
// Display notice on success redirect.
|
||||||
|
if ( ! empty( $args['acfdeactivatecomplete'] ) ) {
|
||||||
|
check_admin_referer( 'bulk-posts' );
|
||||||
|
|
||||||
|
$deactivated = array_map( 'intval', explode( ',', $args['acfdeactivatecomplete'] ) );
|
||||||
|
$text = $this->get_action_notice_text( 'acfdeactivatecomplete', count( $deactivated ) );
|
||||||
|
$links = array();
|
||||||
|
|
||||||
|
foreach ( $deactivated as $deactivated_id ) {
|
||||||
|
$links[] = sprintf(
|
||||||
|
'<a href="%1$s">%2$s</a>',
|
||||||
|
get_edit_post_link( $deactivated_id ),
|
||||||
|
get_the_title( $deactivated_id )
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
$text .= ' ' . implode( ', ', $links );
|
$text .= ' ' . implode( ', ', $links );
|
||||||
|
|
||||||
// Add notice.
|
// Add notice.
|
||||||
@@ -596,27 +631,28 @@ if ( ! class_exists( 'ACF_Admin_Internal_Post_Type_List' ) ) :
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Find items to activate.
|
// Find items to deactivate.
|
||||||
$ids = array();
|
$to_deactivate = array();
|
||||||
if ( isset( $_GET['acfdeactivate'] ) ) {
|
if ( ! empty( $args['acfdeactivate'] ) ) {
|
||||||
$ids[] = intval( $_GET['acfdeactivate'] );
|
$to_deactivate[] = intval( $args['acfdeactivate'] );
|
||||||
} elseif ( isset( $_GET['post'], $_GET['action2'] ) && $_GET['action2'] === 'acfdeactivate' ) {
|
} elseif ( ! empty( $args['post'] ) && 'acfdeactivate' === $args['action2'] ) {
|
||||||
$ids = array_map( 'intval', $_GET['post'] );
|
$to_deactivate = array_map( 'intval', $args['post'] );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( $ids ) {
|
if ( ! empty( $to_deactivate ) ) {
|
||||||
check_admin_referer( 'bulk-posts' );
|
check_admin_referer( 'bulk-posts' );
|
||||||
|
|
||||||
// Activate the field groups and return an array of IDs.
|
$deactivated_ids = array();
|
||||||
$new_ids = array();
|
$nonce = wp_create_nonce( 'bulk-posts' );
|
||||||
foreach ( $ids as $id ) {
|
|
||||||
|
foreach ( $to_deactivate as $id ) {
|
||||||
$post_type = get_post_type( $id );
|
$post_type = get_post_type( $id );
|
||||||
if ( $post_type && acf_update_internal_post_type_active_status( $id, false, $post_type ) ) {
|
if ( $post_type && acf_update_internal_post_type_active_status( $id, false, $post_type ) ) {
|
||||||
$new_ids[] = $id;
|
$deactivated_ids[] = $id;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
wp_safe_redirect( $this->get_admin_url( '&acfdeactivatecomplete=' . implode( ',', $new_ids ) ) );
|
wp_safe_redirect( $this->get_admin_url( '&_wpnonce=' . $nonce . '&acfdeactivatecomplete=' . implode( ',', $deactivated_ids ) ) );
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -627,46 +663,63 @@ if ( ! class_exists( 'ACF_Admin_Internal_Post_Type_List' ) ) :
|
|||||||
* @since 5.9.0
|
* @since 5.9.0
|
||||||
*/
|
*/
|
||||||
public function check_duplicate() {
|
public function check_duplicate() {
|
||||||
// phpcs:disable WordPress.Security.NonceVerification.Recommended -- Used for redirect notice.
|
// Verify capability.
|
||||||
// Display notice on success redirect.
|
if ( ! acf_current_user_can_admin() ) {
|
||||||
if ( isset( $_GET['acfduplicatecomplete'] ) ) {
|
return;
|
||||||
$ids = array_map( 'intval', explode( ',', $_GET['acfduplicatecomplete'] ) ); // phpcs:ignore WordPress.Security.ValidatedSanitizedInput.InputNotSanitized -- Sanitized with intval().
|
}
|
||||||
// phpcs:enable WordPress.Security.NonceVerification.Recommended
|
|
||||||
// Generate text.
|
|
||||||
$text = $this->get_action_notice_text( 'acfduplicatecomplete', count( $ids ) );
|
|
||||||
|
|
||||||
// Append links to text.
|
$args = acf_request_args(
|
||||||
$links = array();
|
array(
|
||||||
foreach ( $ids as $id ) {
|
'acfduplicatecomplete' => '',
|
||||||
$links[] = '<a href="' . get_edit_post_link( $id ) . '">' . get_the_title( $id ) . '</a>';
|
'acfduplicate' => '',
|
||||||
|
'post' => '',
|
||||||
|
'action2' => '',
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
// Display notice on success redirect.
|
||||||
|
if ( ! empty( $args['acfduplicatecomplete'] ) ) {
|
||||||
|
check_admin_referer( 'bulk-posts' );
|
||||||
|
|
||||||
|
$duplicated = array_map( 'intval', explode( ',', $args['acfduplicatecomplete'] ) );
|
||||||
|
$text = $this->get_action_notice_text( 'acfduplicatecomplete', count( $duplicated ) );
|
||||||
|
$links = array();
|
||||||
|
|
||||||
|
foreach ( $duplicated as $duplicated_id ) {
|
||||||
|
$links[] = sprintf(
|
||||||
|
'<a href="%1$s">%2$s</a>',
|
||||||
|
get_edit_post_link( $duplicated_id ),
|
||||||
|
get_the_title( $duplicated_id )
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
$text .= ' ' . implode( ', ', $links );
|
$text .= ' ' . implode( ', ', $links );
|
||||||
|
|
||||||
// Add notice.
|
|
||||||
acf_add_admin_notice( $text, 'success' );
|
acf_add_admin_notice( $text, 'success' );
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Find items to duplicate.
|
// Find items to duplicate.
|
||||||
$ids = array();
|
$to_duplicate = array();
|
||||||
if ( isset( $_GET['acfduplicate'] ) ) {
|
if ( ! empty( $args['acfduplicate'] ) ) {
|
||||||
$ids[] = intval( $_GET['acfduplicate'] );
|
$to_duplicate[] = intval( $args['acfduplicate'] );
|
||||||
} elseif ( isset( $_GET['post'], $_GET['action2'] ) && $_GET['action2'] === 'acfduplicate' ) {
|
} elseif ( ! empty( $args['post'] ) && 'acfduplicate' === $args['action2'] ) {
|
||||||
$ids = array_map( 'intval', $_GET['post'] );
|
$to_duplicate = array_map( 'intval', $args['post'] );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( $ids ) {
|
if ( ! empty( $to_duplicate ) ) {
|
||||||
check_admin_referer( 'bulk-posts' );
|
check_admin_referer( 'bulk-posts' );
|
||||||
|
|
||||||
// Duplicate field groups and generate array of new IDs.
|
$duplicated_ids = array();
|
||||||
$new_ids = array();
|
$nonce = wp_create_nonce( 'bulk-posts' );
|
||||||
foreach ( $ids as $id ) {
|
|
||||||
$field_group = acf_duplicate_field_group( $id );
|
foreach ( $to_duplicate as $id ) {
|
||||||
$new_ids[] = $field_group['ID'];
|
$field_group = acf_duplicate_field_group( $id );
|
||||||
|
$duplicated_ids[] = $field_group['ID'];
|
||||||
}
|
}
|
||||||
|
|
||||||
// Redirect.
|
// Redirect.
|
||||||
wp_safe_redirect( $this->get_admin_url( '&acfduplicatecomplete=' . implode( ',', $new_ids ) ) );
|
wp_safe_redirect( $this->get_admin_url( '&_wpnonce=' . $nonce . '&acfduplicatecomplete=' . implode( ',', $duplicated_ids ) ) );
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -677,19 +730,36 @@ if ( ! class_exists( 'ACF_Admin_Internal_Post_Type_List' ) ) :
|
|||||||
* @since 5.9.0
|
* @since 5.9.0
|
||||||
*/
|
*/
|
||||||
public function check_sync() {
|
public function check_sync() {
|
||||||
// phpcs:disable WordPress.Security.NonceVerification.Recommended
|
// Verify capability.
|
||||||
// Display notice on success redirect.
|
if ( ! acf_current_user_can_admin() ) {
|
||||||
if ( isset( $_GET['acfsynccomplete'] ) ) {
|
return;
|
||||||
$ids = array_map( 'intval', explode( ',', $_GET['acfsynccomplete'] ) ); // phpcs:ignore WordPress.Security.ValidatedSanitizedInput.InputNotSanitized -- Sanitized with intval().
|
}
|
||||||
// phpcs:enable WordPress.Security.NonceVerification.Recommended
|
|
||||||
// Generate text.
|
|
||||||
$text = $this->get_action_notice_text( 'acfsynccomplete', count( $ids ) );
|
|
||||||
|
|
||||||
// Append links to text.
|
$args = acf_request_args(
|
||||||
$links = array();
|
array(
|
||||||
foreach ( $ids as $id ) {
|
'acfsynccomplete' => '',
|
||||||
$links[] = '<a href="' . get_edit_post_link( $id ) . '">' . get_the_title( $id ) . '</a>';
|
'acfsync' => '',
|
||||||
|
'post' => '',
|
||||||
|
'action2' => '',
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
// Display notice on success redirect.
|
||||||
|
if ( ! empty( $args['acfsynccomplete'] ) ) {
|
||||||
|
check_admin_referer( 'bulk-posts' );
|
||||||
|
|
||||||
|
$synced = array_map( 'intval', explode( ',', $args['acfsynccomplete'] ) );
|
||||||
|
$text = $this->get_action_notice_text( 'acfsynccomplete', count( $synced ) );
|
||||||
|
$links = array();
|
||||||
|
|
||||||
|
foreach ( $synced as $synced_id ) {
|
||||||
|
$links[] = sprintf(
|
||||||
|
'<a href="%1$s">%2$s</a>',
|
||||||
|
get_edit_post_link( $synced_id ),
|
||||||
|
get_the_title( $synced_id )
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
$text .= ' ' . implode( ', ', $links );
|
$text .= ' ' . implode( ', ', $links );
|
||||||
|
|
||||||
// Add notice.
|
// Add notice.
|
||||||
@@ -699,21 +769,23 @@ if ( ! class_exists( 'ACF_Admin_Internal_Post_Type_List' ) ) :
|
|||||||
|
|
||||||
// Find items to sync.
|
// Find items to sync.
|
||||||
$keys = array();
|
$keys = array();
|
||||||
if ( isset( $_GET['acfsync'] ) ) {
|
if ( ! empty( $args['acfsync'] ) ) {
|
||||||
$keys[] = sanitize_text_field( $_GET['acfsync'] );
|
$keys[] = sanitize_text_field( $args['acfsync'] );
|
||||||
} elseif ( isset( $_GET['post'], $_GET['action2'] ) && $_GET['action2'] === 'acfsync' ) {
|
} elseif ( ! empty( $args['post'] ) && 'acfsync' === $args['action2'] ) {
|
||||||
$keys = array_map( 'sanitize_text_field', $_GET['post'] );
|
$keys = array_map( 'sanitize_text_field', $args['post'] );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( $keys && $this->sync ) {
|
if ( $keys && $this->sync ) {
|
||||||
check_admin_referer( 'bulk-posts' );
|
check_admin_referer( 'bulk-posts' );
|
||||||
|
|
||||||
// Disabled "Local JSON" controller to prevent the .json file from being modified during import.
|
// Disable "Local JSON" controller to prevent the .json file from being modified during import.
|
||||||
acf_update_setting( 'json', false );
|
acf_update_setting( 'json', false );
|
||||||
|
|
||||||
// Sync field groups and generate array of new IDs.
|
// Sync the items and generate array of new IDs.
|
||||||
$files = acf_get_local_json_files( $this->post_type );
|
$files = acf_get_local_json_files( $this->post_type );
|
||||||
$new_ids = array();
|
$nonce = wp_create_nonce( 'bulk-posts' );
|
||||||
|
$synced = array();
|
||||||
|
|
||||||
foreach ( $this->sync as $key => $post ) {
|
foreach ( $this->sync as $key => $post ) {
|
||||||
if ( $post['key'] && in_array( $post['key'], $keys ) ) {
|
if ( $post['key'] && in_array( $post['key'], $keys ) ) {
|
||||||
// Import.
|
// Import.
|
||||||
@@ -723,14 +795,15 @@ if ( ! class_exists( 'ACF_Admin_Internal_Post_Type_List' ) ) :
|
|||||||
// Ignore.
|
// Ignore.
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
$local_post = json_decode( file_get_contents( $files[ $key ] ), true );
|
$local_post = json_decode( file_get_contents( $files[ $key ] ), true );
|
||||||
$local_post['ID'] = $post['ID'];
|
$local_post['ID'] = $post['ID'];
|
||||||
$result = acf_import_internal_post_type( $local_post, $this->post_type );
|
$result = acf_import_internal_post_type( $local_post, $this->post_type );
|
||||||
$new_ids[] = $result['ID'];
|
$synced[] = $result['ID'];
|
||||||
}
|
}
|
||||||
|
|
||||||
// Redirect.
|
// Redirect.
|
||||||
wp_safe_redirect( $this->get_current_admin_url( '&acfsynccomplete=' . implode( ',', $new_ids ) ) );
|
wp_safe_redirect( $this->get_current_admin_url( '&_wpnonce=' . $nonce . '&acfsynccomplete=' . implode( ',', $synced ) ) );
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
+2
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
+2
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
+2
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
+1
-1
@@ -23,7 +23,7 @@ $acf_getting_started = sprintf(
|
|||||||
<div class="acf-no-field-groups-wrapper">
|
<div class="acf-no-field-groups-wrapper">
|
||||||
<div class="acf-no-field-groups-inner acf-field-group-pro-features-content">
|
<div class="acf-no-field-groups-inner acf-field-group-pro-features-content">
|
||||||
<img src="<?php echo esc_url( acf_get_url( 'assets/images/empty-post-types.svg' ) ); ?>" />
|
<img src="<?php echo esc_url( acf_get_url( 'assets/images/empty-post-types.svg' ) ); ?>" />
|
||||||
<h2><?php echo acf_esc_html( 'Upgrade to ACF PRO to create options pages in just a few clicks', 'acf' ); ?></h2>
|
<h2><?php echo acf_esc_html( __( 'Upgrade to ACF PRO to create options pages in just a few clicks', 'acf' ) ); ?></h2>
|
||||||
<p><?php echo acf_esc_html( $acf_options_pages_desc ); ?></p>
|
<p><?php echo acf_esc_html( $acf_options_pages_desc ); ?></p>
|
||||||
<div class="acf-ui-options-page-pro-features-actions">
|
<div class="acf-ui-options-page-pro-features-actions">
|
||||||
<a target="_blank" href="<?php echo $acf_learn_more_link; ?>" class="acf-btn acf-btn-muted"><?php esc_html_e( 'Learn More', 'acf' ); ?> <i class="acf-icon acf-icon-arrow-up-right"></i></a><?php //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- escaped on generation. ?>
|
<a target="_blank" href="<?php echo $acf_learn_more_link; ?>" class="acf-btn acf-btn-muted"><?php esc_html_e( 'Learn More', 'acf' ); ?> <i class="acf-icon acf-icon-arrow-up-right"></i></a><?php //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- escaped on generation. ?>
|
||||||
|
|||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
+2
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
+7
-7
@@ -15,17 +15,17 @@ if ( ! class_exists( 'ACF_Ajax_Check_Screen' ) ) :
|
|||||||
var $public = false;
|
var $public = false;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* get_response
|
|
||||||
*
|
|
||||||
* Returns the response data to sent back.
|
* Returns the response data to sent back.
|
||||||
*
|
*
|
||||||
* @date 31/7/18
|
* @since 5.7.2
|
||||||
* @since 5.7.2
|
|
||||||
*
|
*
|
||||||
* @param array $request The request args.
|
* @param array $request The request args.
|
||||||
* @return mixed The response data or WP_Error.
|
* @return array|WP_Error The response data or WP_Error.
|
||||||
*/
|
*/
|
||||||
function get_response( $request ) {
|
public function get_response( $request ) {
|
||||||
|
if ( ! current_user_can( 'edit_posts' ) ) {
|
||||||
|
return new WP_Error( 'acf_invalid_permissions', __( 'Sorry, you do not have permission to do that.', 'acf' ) );
|
||||||
|
}
|
||||||
|
|
||||||
// vars
|
// vars
|
||||||
$args = wp_parse_args(
|
$args = wp_parse_args(
|
||||||
|
|||||||
+5
@@ -32,6 +32,11 @@ if ( ! class_exists( 'ACF_Ajax_Local_JSON_Diff' ) ) :
|
|||||||
* @return array|WP_Error The response data or WP_Error.
|
* @return array|WP_Error The response data or WP_Error.
|
||||||
*/
|
*/
|
||||||
public function get_response( $request ) {
|
public function get_response( $request ) {
|
||||||
|
// Bail early if the current user can't access the ACF admin.
|
||||||
|
if ( ! acf_current_user_can_admin() ) {
|
||||||
|
return new WP_Error( 'acf_not_allowed', __( 'Sorry, you are not allowed to do that.', 'acf' ), array( 'status' => 403 ) );
|
||||||
|
}
|
||||||
|
|
||||||
$json = array();
|
$json = array();
|
||||||
|
|
||||||
// Extract props.
|
// Extract props.
|
||||||
|
|||||||
+33
@@ -11,6 +11,39 @@ if ( ! class_exists( 'ACF_Ajax_Query_Users' ) ) :
|
|||||||
/** @var string The AJAX action name. */
|
/** @var string The AJAX action name. */
|
||||||
var $action = 'acf/ajax/query_users';
|
var $action = 'acf/ajax/query_users';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Verifies the request.
|
||||||
|
*
|
||||||
|
* @since 6.3.2
|
||||||
|
*
|
||||||
|
* @param array $request The request args.
|
||||||
|
* @return (bool|WP_Error) True on success, WP_Error on fail.
|
||||||
|
*/
|
||||||
|
public function verify_request( $request ) {
|
||||||
|
if ( empty( $request['nonce'] ) || empty( $request['field_key'] ) ) {
|
||||||
|
return new WP_Error( 'acf_invalid_args', __( 'Invalid request args.', 'acf' ), array( 'status' => 404 ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
$nonce = $request['nonce'];
|
||||||
|
$action = $request['field_key'];
|
||||||
|
|
||||||
|
if ( isset( $request['conditional_logic'] ) && true === (bool) $request['conditional_logic'] ) {
|
||||||
|
if ( ! acf_current_user_can_admin() ) {
|
||||||
|
return new WP_Error( 'acf_invalid_permissions', __( 'Sorry, you do not have permission to do that.', 'acf' ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
// Use the standard ACF admin nonce.
|
||||||
|
$nonce = '';
|
||||||
|
$action = '';
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( ! acf_verify_ajax( $nonce, $action ) ) {
|
||||||
|
return new WP_Error( 'acf_invalid_nonce', __( 'Invalid nonce.', 'acf' ), array( 'status' => 404 ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* init_request
|
* init_request
|
||||||
*
|
*
|
||||||
|
|||||||
+8
-7
@@ -12,17 +12,17 @@ if ( ! class_exists( 'ACF_Ajax_Upgrade' ) ) :
|
|||||||
var $action = 'acf/ajax/upgrade';
|
var $action = 'acf/ajax/upgrade';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* get_response
|
|
||||||
*
|
|
||||||
* Returns the response data to sent back.
|
* Returns the response data to sent back.
|
||||||
*
|
*
|
||||||
* @date 31/7/18
|
* @since 5.7.2
|
||||||
* @since 5.7.2
|
|
||||||
*
|
*
|
||||||
* @param array $request The request args.
|
* @param array $request The request args.
|
||||||
* @return mixed The response data or WP_Error.
|
* @return boolean|WP_Error True if successful, or WP_Error on failure.
|
||||||
*/
|
*/
|
||||||
function get_response( $request ) {
|
public function get_response( $request ) {
|
||||||
|
if ( ! current_user_can( acf_get_setting( 'capability' ) ) ) {
|
||||||
|
return new WP_Error( 'upgrade_error', __( 'Sorry, you don\'t have permission to do that.', 'acf' ) );
|
||||||
|
}
|
||||||
|
|
||||||
// Switch blog.
|
// Switch blog.
|
||||||
if ( isset( $request['blog_id'] ) ) {
|
if ( isset( $request['blog_id'] ) ) {
|
||||||
@@ -47,6 +47,7 @@ if ( ! class_exists( 'ACF_Ajax_Upgrade' ) ) :
|
|||||||
if ( $error ) {
|
if ( $error ) {
|
||||||
return new WP_Error( 'upgrade_error', $error );
|
return new WP_Error( 'upgrade_error', $error );
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+16
-5
@@ -8,11 +8,19 @@ if ( ! class_exists( 'ACF_Ajax_User_Setting' ) ) :
|
|||||||
|
|
||||||
class ACF_Ajax_User_Setting extends ACF_Ajax {
|
class ACF_Ajax_User_Setting extends ACF_Ajax {
|
||||||
|
|
||||||
/** @var string The AJAX action name. */
|
/**
|
||||||
var $action = 'acf/ajax/user_setting';
|
* The AJAX action name.
|
||||||
|
*
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
public $action = 'acf/ajax/user_setting';
|
||||||
|
|
||||||
/** @var boolean Prevents access for non-logged in users. */
|
/**
|
||||||
var $public = true;
|
* Prevents access for non-logged in users.
|
||||||
|
*
|
||||||
|
* @var boolean
|
||||||
|
*/
|
||||||
|
public $public = false;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* get_response
|
* get_response
|
||||||
@@ -25,7 +33,10 @@ if ( ! class_exists( 'ACF_Ajax_User_Setting' ) ) :
|
|||||||
* @param array $request The request args.
|
* @param array $request The request args.
|
||||||
* @return mixed The response data or WP_Error.
|
* @return mixed The response data or WP_Error.
|
||||||
*/
|
*/
|
||||||
function get_response( $request ) {
|
public function get_response( $request ) {
|
||||||
|
if ( ! acf_current_user_can_admin() ) {
|
||||||
|
return new WP_Error( 'acf_invalid_permissions', __( 'Sorry, you do not have permission to do that.', 'acf' ) );
|
||||||
|
}
|
||||||
|
|
||||||
// update
|
// update
|
||||||
if ( $this->has( 'value' ) ) {
|
if ( $this->has( 'value' ) ) {
|
||||||
|
|||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -682,27 +682,32 @@ function acf_verify_nonce( $value ) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* acf_verify_ajax
|
* Returns true if the current AJAX request is valid.
|
||||||
*
|
|
||||||
* This function will return true if the current AJAX request is valid
|
|
||||||
* It's action will also allow WPML to set the lang and avoid AJAX get_posts issues
|
* It's action will also allow WPML to set the lang and avoid AJAX get_posts issues
|
||||||
*
|
*
|
||||||
* @since 5.2.3
|
* @since 5.2.3
|
||||||
*
|
*
|
||||||
* @param n/a
|
* @param string $nonce The nonce to check.
|
||||||
* @return (boolean)
|
* @param string $action The action of the nonce.
|
||||||
|
* @return boolean
|
||||||
*/
|
*/
|
||||||
function acf_verify_ajax() {
|
function acf_verify_ajax( $nonce = '', $action = '' ) {
|
||||||
|
// Bail early if we don't have a nonce to check.
|
||||||
// bail early if not acf nonce
|
if ( empty( $nonce ) && empty( $_REQUEST['nonce'] ) ) {
|
||||||
if ( empty( $_REQUEST['nonce'] ) || ! wp_verify_nonce( sanitize_text_field( $_REQUEST['nonce'] ), 'acf_nonce' ) ) {
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// action for 3rd party customization
|
$nonce_to_check = ! empty( $nonce ) ? $nonce : $_REQUEST['nonce']; // phpcs:ignore WordPress.Security -- We're verifying a nonce here.
|
||||||
|
$nonce_action = ! empty( $action ) ? $action : 'acf_nonce';
|
||||||
|
|
||||||
|
// Bail if nonce can't be verified.
|
||||||
|
if ( ! wp_verify_nonce( sanitize_text_field( $nonce_to_check ), $nonce_action ) ) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Action for 3rd party customization (WPML).
|
||||||
do_action( 'acf/verify_ajax' );
|
do_action( 'acf/verify_ajax' );
|
||||||
|
|
||||||
// return
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1361,22 +1366,26 @@ function acf_get_grouped_posts( $args ) {
|
|||||||
return $data;
|
return $data;
|
||||||
}
|
}
|
||||||
|
|
||||||
function _acf_orderby_post_type( $ordeby, $wp_query ) {
|
/**
|
||||||
|
* The internal ACF function to add order by post types for use in `acf_get_grouped_posts`
|
||||||
// global
|
*
|
||||||
|
* @param string $orderby The current orderby value for a query.
|
||||||
|
* @param object $wp_query The WP_Query.
|
||||||
|
* @return string The potentially modified orderby string.
|
||||||
|
*/
|
||||||
|
function _acf_orderby_post_type( $orderby, $wp_query ) {
|
||||||
global $wpdb;
|
global $wpdb;
|
||||||
|
|
||||||
// get post types
|
|
||||||
$post_types = $wp_query->get( 'post_type' );
|
$post_types = $wp_query->get( 'post_type' );
|
||||||
|
|
||||||
// prepend SQL
|
// Prepend the SQL.
|
||||||
if ( is_array( $post_types ) ) {
|
if ( is_array( $post_types ) ) {
|
||||||
|
$post_types = array_map( 'esc_sql', $post_types );
|
||||||
$post_types = implode( "','", $post_types );
|
$post_types = implode( "','", $post_types );
|
||||||
$ordeby = "FIELD({$wpdb->posts}.post_type,'$post_types')," . $ordeby;
|
$orderby = "FIELD({$wpdb->posts}.post_type,'$post_types')," . $orderby;
|
||||||
}
|
}
|
||||||
|
|
||||||
// return
|
return $orderby;
|
||||||
return $ordeby;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function acf_get_post_title( $post = 0, $is_search = false ) {
|
function acf_get_post_title( $post = 0, $is_search = false ) {
|
||||||
@@ -3109,28 +3118,19 @@ function acf_is_row_collapsed( $field_key = '', $row_index = 0 ) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* acf_get_attachment_image
|
* Return an image tag for the provided attachment ID
|
||||||
*
|
*
|
||||||
* description
|
* @since 5.5.0
|
||||||
|
* @deprecated 6.3.2
|
||||||
*
|
*
|
||||||
* @since 5.5.0
|
* @param integer $attachment_id The attachment ID
|
||||||
*
|
* @param string $size The image size to use in the image tag.
|
||||||
* @param $post_id (int)
|
* @return false
|
||||||
* @return $post_id (int)
|
|
||||||
*/
|
*/
|
||||||
function acf_get_attachment_image( $attachment_id = 0, $size = 'thumbnail' ) {
|
function acf_get_attachment_image( $attachment_id = 0, $size = 'thumbnail' ) {
|
||||||
|
// report function as deprecated
|
||||||
// vars
|
_deprecated_function( __FUNCTION__, '6.3.2' );
|
||||||
$url = wp_get_attachment_image_src( $attachment_id, 'thumbnail' );
|
return false;
|
||||||
$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 . '" />';
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -475,7 +475,7 @@ if ( ! class_exists( 'ACF_Assets' ) ) :
|
|||||||
'validation' => acf_get_form_data( 'validation' ),
|
'validation' => acf_get_form_data( 'validation' ),
|
||||||
'editor' => acf_is_block_editor() ? 'block' : 'classic',
|
'editor' => acf_is_block_editor() ? 'block' : 'classic',
|
||||||
'is_pro' => acf_is_pro(),
|
'is_pro' => acf_is_pro(),
|
||||||
'debug' => acf_is_beta() || defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG,
|
'debug' => acf_is_beta() || ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ),
|
||||||
);
|
);
|
||||||
|
|
||||||
acf_localize_data( $data_to_localize );
|
acf_localize_data( $data_to_localize );
|
||||||
|
|||||||
+346
-234
@@ -165,10 +165,17 @@ if ( ! class_exists( 'acf_field_icon_picker' ) ) :
|
|||||||
?>
|
?>
|
||||||
<div class="acf-icon-picker-tab" data-category="<?php echo esc_attr( $name ); ?>">
|
<div class="acf-icon-picker-tab" data-category="<?php echo esc_attr( $name ); ?>">
|
||||||
<div class="acf-icon-picker-media-library">
|
<div class="acf-icon-picker-media-library">
|
||||||
|
<?php
|
||||||
|
$button_style = 'display: none;';
|
||||||
|
|
||||||
|
if ( in_array( $field['value']['type'], array( 'media_library', 'dashicons' ), true ) && ! empty( $field['value']['value'] ) ) {
|
||||||
|
$button_style = '';
|
||||||
|
}
|
||||||
|
?>
|
||||||
<button
|
<button
|
||||||
aria-label="<?php esc_attr_e( 'Click to change the icon in the Media Library', 'acf' ); ?>"
|
aria-label="<?php esc_attr_e( 'Click to change the icon in the Media Library', 'acf' ); ?>"
|
||||||
class="acf-icon-picker-media-library-preview"
|
class="acf-icon-picker-media-library-preview"
|
||||||
style="<?php echo esc_attr( 'media_library' === $field['value']['type'] || 'dashicons' === $field['value']['type'] && ! empty( $field['value']['value'] ) ? '' : 'display: none;' ); ?>"
|
style="<?php echo esc_attr( $button_style ); ?>"
|
||||||
>
|
>
|
||||||
<div class="acf-icon-picker-media-library-preview-img" style="<?php echo esc_attr( 'media_library' !== $field['value']['type'] ? 'display: none;' : '' ); ?>">
|
<div class="acf-icon-picker-media-library-preview-img" style="<?php echo esc_attr( 'media_library' !== $field['value']['type'] ? 'display: none;' : '' ); ?>">
|
||||||
<?php
|
<?php
|
||||||
@@ -375,239 +382,344 @@ if ( ! class_exists( 'acf_field_icon_picker' ) ) :
|
|||||||
*/
|
*/
|
||||||
public function get_dashicons() {
|
public function get_dashicons() {
|
||||||
$dashicons = array(
|
$dashicons = array(
|
||||||
'dashicons-admin-generic' => esc_html__( 'Generic icon', 'acf' ),
|
'dashicons-admin-appearance' => esc_html__( 'Appearance Icon', 'acf' ),
|
||||||
'dashicons-admin-appearance' => esc_html__( 'Appearance icon', 'acf' ),
|
'dashicons-admin-collapse' => esc_html__( 'Collapse Icon', 'acf' ),
|
||||||
'dashicons-admin-collapse' => esc_html__( 'Collapse icon', 'acf' ),
|
'dashicons-admin-comments' => esc_html__( 'Comments Icon', 'acf' ),
|
||||||
'dashicons-admin-comments' => esc_html__( 'Comments icon', 'acf' ),
|
'dashicons-admin-customizer' => esc_html__( 'Customizer Icon', 'acf' ),
|
||||||
'dashicons-admin-customizer' => esc_html__( 'Customizer icon', 'acf' ),
|
'dashicons-admin-generic' => esc_html__( 'Generic Icon', 'acf' ),
|
||||||
'dashicons-admin-home' => esc_html__( 'Home icon', 'acf' ),
|
'dashicons-admin-home' => esc_html__( 'Home Icon', 'acf' ),
|
||||||
'dashicons-admin-links' => esc_html__( 'Links icon', 'acf' ),
|
'dashicons-admin-links' => esc_html__( 'Links Icon', 'acf' ),
|
||||||
'dashicons-admin-media' => esc_html__( 'Media icon', 'acf' ),
|
'dashicons-admin-media' => esc_html__( 'Media Icon', 'acf' ),
|
||||||
'dashicons-admin-multisite' => esc_html__( 'Multisite icon', 'acf' ),
|
'dashicons-admin-multisite' => esc_html__( 'Multisite Icon', 'acf' ),
|
||||||
'dashicons-admin-network' => esc_html__( 'Network icon', 'acf' ),
|
'dashicons-admin-network' => esc_html__( 'Network Icon', 'acf' ),
|
||||||
'dashicons-admin-page' => esc_html__( 'Page icon', 'acf' ),
|
'dashicons-admin-page' => esc_html__( 'Page Icon', 'acf' ),
|
||||||
'dashicons-admin-plugins' => esc_html__( 'Plugins icon', 'acf' ),
|
'dashicons-admin-plugins' => esc_html__( 'Plugins Icon', 'acf' ),
|
||||||
'dashicons-admin-post' => esc_html__( 'Post icon', 'acf' ),
|
'dashicons-admin-post' => esc_html__( 'Post Icon', 'acf' ),
|
||||||
'dashicons-admin-settings' => esc_html__( 'Settings icon', 'acf' ),
|
'dashicons-admin-settings' => esc_html__( 'Settings Icon', 'acf' ),
|
||||||
'dashicons-admin-site' => esc_html__( 'Site icon', 'acf' ),
|
'dashicons-admin-site' => esc_html__( 'Site Icon', 'acf' ),
|
||||||
'dashicons-admin-tools' => esc_html__( 'Tools icon', 'acf' ),
|
'dashicons-admin-site-alt' => esc_html__( 'Site (alt) Icon', 'acf' ),
|
||||||
'dashicons-admin-users' => esc_html__( 'Users icon', 'acf' ),
|
'dashicons-admin-site-alt2' => esc_html__( 'Site (alt2) Icon', 'acf' ),
|
||||||
'dashicons-album' => esc_html__( 'Album icon', 'acf' ),
|
'dashicons-admin-site-alt3' => esc_html__( 'Site (alt3) Icon', 'acf' ),
|
||||||
'dashicons-align-center' => esc_html__( 'Align-center icon', 'acf' ),
|
'dashicons-admin-tools' => esc_html__( 'Tools Icon', 'acf' ),
|
||||||
'dashicons-align-left' => esc_html__( 'Align-left icon', 'acf' ),
|
'dashicons-admin-users' => esc_html__( 'Users Icon', 'acf' ),
|
||||||
'dashicons-align-none' => esc_html__( 'Align-none icon', 'acf' ),
|
'dashicons-airplane' => esc_html__( 'Airplane Icon', 'acf' ),
|
||||||
'dashicons-align-right' => esc_html__( 'Align-right icon', 'acf' ),
|
'dashicons-album' => esc_html__( 'Album Icon', 'acf' ),
|
||||||
'dashicons-analytics' => esc_html__( 'Analytics icon', 'acf' ),
|
'dashicons-align-center' => esc_html__( 'Align Center Icon', 'acf' ),
|
||||||
'dashicons-archive' => esc_html__( 'Archive icon', 'acf' ),
|
'dashicons-align-full-width' => esc_html__( 'Align Full Width Icon', 'acf' ),
|
||||||
'dashicons-arrow-down' => esc_html__( 'Arrow down icon', 'acf' ),
|
'dashicons-align-left' => esc_html__( 'Align Left Icon', 'acf' ),
|
||||||
'dashicons-arrow-down-alt' => esc_html__( 'Arrow down-alt icon', 'acf' ),
|
'dashicons-align-none' => esc_html__( 'Align None Icon', 'acf' ),
|
||||||
'dashicons-arrow-down-alt2' => esc_html__( 'Arrow down-alt2 icon', 'acf' ),
|
'dashicons-align-pull-left' => esc_html__( 'Align Pull Left Icon', 'acf' ),
|
||||||
'dashicons-arrow-left' => esc_html__( 'Arrow left icon', 'acf' ),
|
'dashicons-align-pull-right' => esc_html__( 'Align Pull Right Icon', 'acf' ),
|
||||||
'dashicons-arrow-left-alt' => esc_html__( 'Arrow left-alt icon', 'acf' ),
|
'dashicons-align-right' => esc_html__( 'Align Right Icon', 'acf' ),
|
||||||
'dashicons-arrow-left-alt2' => esc_html__( 'Arrow left-alt2 icon', 'acf' ),
|
'dashicons-align-wide' => esc_html__( 'Align Wide Icon', 'acf' ),
|
||||||
'dashicons-arrow-right' => esc_html__( 'Arrow right icon', 'acf' ),
|
'dashicons-amazon' => esc_html__( 'Amazon Icon', 'acf' ),
|
||||||
'dashicons-arrow-right-alt' => esc_html__( 'Arrow right-alt icon', 'acf' ),
|
'dashicons-analytics' => esc_html__( 'Analytics Icon', 'acf' ),
|
||||||
'dashicons-arrow-right-alt2' => esc_html__( 'Arrow right-alt2 icon', 'acf' ),
|
'dashicons-archive' => esc_html__( 'Archive Icon', 'acf' ),
|
||||||
'dashicons-arrow-up' => esc_html__( 'Arrow up icon', 'acf' ),
|
'dashicons-arrow-down' => esc_html__( 'Arrow Down Icon', 'acf' ),
|
||||||
'dashicons-arrow-up-alt' => esc_html__( 'Arrow up-alt icon', 'acf' ),
|
'dashicons-arrow-down-alt' => esc_html__( 'Arrow Down (alt) Icon', 'acf' ),
|
||||||
'dashicons-arrow-up-alt2' => esc_html__( 'Arrow up-alt2 icon', 'acf' ),
|
'dashicons-arrow-down-alt2' => esc_html__( 'Arrow Down (alt2) Icon', 'acf' ),
|
||||||
'dashicons-art' => esc_html__( 'Art icon', 'acf' ),
|
'dashicons-arrow-left' => esc_html__( 'Arrow Left Icon', 'acf' ),
|
||||||
'dashicons-awards' => esc_html__( 'Awards icon', 'acf' ),
|
'dashicons-arrow-left-alt' => esc_html__( 'Arrow Left (alt) Icon', 'acf' ),
|
||||||
'dashicons-backup' => esc_html__( 'Backup icon', 'acf' ),
|
'dashicons-arrow-left-alt2' => esc_html__( 'Arrow Left (alt2) Icon', 'acf' ),
|
||||||
'dashicons-book' => esc_html__( 'Book icon', 'acf' ),
|
'dashicons-arrow-right' => esc_html__( 'Arrow Right Icon', 'acf' ),
|
||||||
'dashicons-book-alt' => esc_html__( 'Book alt icon', 'acf' ),
|
'dashicons-arrow-right-alt' => esc_html__( 'Arrow Right (alt) Icon', 'acf' ),
|
||||||
'dashicons-building' => esc_html__( 'Building icon', 'acf' ),
|
'dashicons-arrow-right-alt2' => esc_html__( 'Arrow Right (alt2) Icon', 'acf' ),
|
||||||
'dashicons-businessman' => esc_html__( 'Businessman icon', 'acf' ),
|
'dashicons-arrow-up' => esc_html__( 'Arrow Up Icon', 'acf' ),
|
||||||
'dashicons-calendar' => esc_html__( 'Calendar icon', 'acf' ),
|
'dashicons-arrow-up-alt' => esc_html__( 'Arrow Up (alt) Icon', 'acf' ),
|
||||||
'dashicons-calendar-alt' => esc_html__( 'Calendar alt icon', 'acf' ),
|
'dashicons-arrow-up-alt2' => esc_html__( 'Arrow Up (alt2) Icon', 'acf' ),
|
||||||
'dashicons-camera' => esc_html__( 'Camera icon', 'acf' ),
|
'dashicons-art' => esc_html__( 'Art Icon', 'acf' ),
|
||||||
'dashicons-carrot' => esc_html__( 'Carrot icon', 'acf' ),
|
'dashicons-awards' => esc_html__( 'Awards Icon', 'acf' ),
|
||||||
'dashicons-cart' => esc_html__( 'Cart icon', 'acf' ),
|
'dashicons-backup' => esc_html__( 'Backup Icon', 'acf' ),
|
||||||
'dashicons-category' => esc_html__( 'Category icon', 'acf' ),
|
'dashicons-bank' => esc_html__( 'Bank Icon', 'acf' ),
|
||||||
'dashicons-chart-area' => esc_html__( 'Chart area icon', 'acf' ),
|
'dashicons-beer' => esc_html__( 'Beer Icon', 'acf' ),
|
||||||
'dashicons-chart-bar' => esc_html__( 'Chart bar icon', 'acf' ),
|
'dashicons-bell' => esc_html__( 'Bell Icon', 'acf' ),
|
||||||
'dashicons-chart-line' => esc_html__( 'Chart line icon', 'acf' ),
|
'dashicons-block-default' => esc_html__( 'Block Default Icon', 'acf' ),
|
||||||
'dashicons-chart-pie' => esc_html__( 'Chart pie icon', 'acf' ),
|
'dashicons-book' => esc_html__( 'Book Icon', 'acf' ),
|
||||||
'dashicons-clipboard' => esc_html__( 'Clipboard icon', 'acf' ),
|
'dashicons-book-alt' => esc_html__( 'Book (alt) Icon', 'acf' ),
|
||||||
'dashicons-clock' => esc_html__( 'Clock icon', 'acf' ),
|
'dashicons-buddicons-activity' => esc_html__( 'Activity Icon', 'acf' ),
|
||||||
'dashicons-cloud' => esc_html__( 'Cloud icon', 'acf' ),
|
'dashicons-buddicons-bbpress-logo' => esc_html__( 'BbPress Icon', 'acf' ),
|
||||||
'dashicons-controls-back' => esc_html__( 'Controls back icon', 'acf' ),
|
'dashicons-buddicons-buddypress-logo' => esc_html__( 'BuddyPress Icon', 'acf' ),
|
||||||
'dashicons-controls-forward' => esc_html__( 'Controls forward icon', 'acf' ),
|
'dashicons-buddicons-community' => esc_html__( 'Community Icon', 'acf' ),
|
||||||
'dashicons-controls-pause' => esc_html__( 'Controls pause icon', 'acf' ),
|
'dashicons-buddicons-forums' => esc_html__( 'Forums Icon', 'acf' ),
|
||||||
'dashicons-controls-play' => esc_html__( 'Controls play icon', 'acf' ),
|
'dashicons-buddicons-friends' => esc_html__( 'Friends Icon', 'acf' ),
|
||||||
'dashicons-controls-repeat' => esc_html__( 'Controls repeat icon', 'acf' ),
|
'dashicons-buddicons-groups' => esc_html__( 'Groups Icon', 'acf' ),
|
||||||
'dashicons-controls-skipback' => esc_html__( 'Controls skipback icon', 'acf' ),
|
'dashicons-buddicons-pm' => esc_html__( 'Pm Icon', 'acf' ),
|
||||||
'dashicons-controls-skipforward' => esc_html__( 'Controls skipforward icon', 'acf' ),
|
'dashicons-buddicons-replies' => esc_html__( 'Replies Icon', 'acf' ),
|
||||||
'dashicons-controls-volumeoff' => esc_html__( 'Controls volumeoff icon', 'acf' ),
|
'dashicons-buddicons-topics' => esc_html__( 'Topics Icon', 'acf' ),
|
||||||
'dashicons-controls-volumeon' => esc_html__( 'Controls volumeon icon', 'acf' ),
|
'dashicons-buddicons-tracking' => esc_html__( 'Tracking Icon', 'acf' ),
|
||||||
'dashicons-dashboard' => esc_html__( 'Dashboard icon', 'acf' ),
|
'dashicons-building' => esc_html__( 'Building Icon', 'acf' ),
|
||||||
'dashicons-desktop' => esc_html__( 'Desktop icon', 'acf' ),
|
'dashicons-businessman' => esc_html__( 'Businessman Icon', 'acf' ),
|
||||||
'dashicons-dismiss' => esc_html__( 'Dismiss icon', 'acf' ),
|
'dashicons-businessperson' => esc_html__( 'Businessperson Icon', 'acf' ),
|
||||||
'dashicons-download' => esc_html__( 'Download icon', 'acf' ),
|
'dashicons-businesswoman' => esc_html__( 'Businesswoman Icon', 'acf' ),
|
||||||
'dashicons-edit' => esc_html__( 'Edit icon', 'acf' ),
|
'dashicons-button' => esc_html__( 'Button Icon', 'acf' ),
|
||||||
'dashicons-editor-aligncenter' => esc_html__( 'aligncenter icon', 'acf' ),
|
'dashicons-calculator' => esc_html__( 'Calculator Icon', 'acf' ),
|
||||||
'dashicons-editor-alignleft' => esc_html__( 'alignleft icon', 'acf' ),
|
'dashicons-calendar' => esc_html__( 'Calendar Icon', 'acf' ),
|
||||||
'dashicons-editor-alignright' => esc_html__( 'alignright icon', 'acf' ),
|
'dashicons-calendar-alt' => esc_html__( 'Calendar (alt) Icon', 'acf' ),
|
||||||
'dashicons-editor-bold' => esc_html__( 'Bold icon', 'acf' ),
|
'dashicons-camera' => esc_html__( 'Camera Icon', 'acf' ),
|
||||||
'dashicons-editor-break' => esc_html__( 'Break icon', 'acf' ),
|
'dashicons-camera-alt' => esc_html__( 'Camera (alt) Icon', 'acf' ),
|
||||||
'dashicons-editor-code' => esc_html__( 'Code icon', 'acf' ),
|
'dashicons-car' => esc_html__( 'Car Icon', 'acf' ),
|
||||||
'dashicons-editor-contract' => esc_html__( 'Contract icon', 'acf' ),
|
'dashicons-carrot' => esc_html__( 'Carrot Icon', 'acf' ),
|
||||||
'dashicons-editor-customchar' => esc_html__( 'Customchar icon', 'acf' ),
|
'dashicons-cart' => esc_html__( 'Cart Icon', 'acf' ),
|
||||||
'dashicons-editor-expand' => esc_html__( 'Expand icon', 'acf' ),
|
'dashicons-category' => esc_html__( 'Category Icon', 'acf' ),
|
||||||
'dashicons-editor-help' => esc_html__( 'Help icon', 'acf' ),
|
'dashicons-chart-area' => esc_html__( 'Chart Area Icon', 'acf' ),
|
||||||
'dashicons-editor-indent' => esc_html__( 'Indent icon', 'acf' ),
|
'dashicons-chart-bar' => esc_html__( 'Chart Bar Icon', 'acf' ),
|
||||||
'dashicons-editor-insertmore' => esc_html__( 'Insertmore icon', 'acf' ),
|
'dashicons-chart-line' => esc_html__( 'Chart Line Icon', 'acf' ),
|
||||||
'dashicons-editor-italic' => esc_html__( 'Italic icon', 'acf' ),
|
'dashicons-chart-pie' => esc_html__( 'Chart Pie Icon', 'acf' ),
|
||||||
'dashicons-editor-justify' => esc_html__( 'Justify icon', 'acf' ),
|
'dashicons-clipboard' => esc_html__( 'Clipboard Icon', 'acf' ),
|
||||||
'dashicons-editor-kitchensink' => esc_html__( 'Kitchensink icon', 'acf' ),
|
'dashicons-clock' => esc_html__( 'Clock Icon', 'acf' ),
|
||||||
'dashicons-editor-ol' => esc_html__( 'Ol icon', 'acf' ),
|
'dashicons-cloud' => esc_html__( 'Cloud Icon', 'acf' ),
|
||||||
'dashicons-editor-outdent' => esc_html__( 'Outdent icon', 'acf' ),
|
'dashicons-cloud-saved' => esc_html__( 'Cloud Saved Icon', 'acf' ),
|
||||||
'dashicons-editor-paragraph' => esc_html__( 'Paragraph icon', 'acf' ),
|
'dashicons-cloud-upload' => esc_html__( 'Cloud Upload Icon', 'acf' ),
|
||||||
'dashicons-editor-paste-text' => esc_html__( 'Paste text icon', 'acf' ),
|
'dashicons-code-standards' => esc_html__( 'Code Standards Icon', 'acf' ),
|
||||||
'dashicons-editor-paste-word' => esc_html__( 'Paste word icon', 'acf' ),
|
'dashicons-coffee' => esc_html__( 'Coffee Icon', 'acf' ),
|
||||||
'dashicons-editor-quote' => esc_html__( 'Quote icon', 'acf' ),
|
'dashicons-color-picker' => esc_html__( 'Color Picker Icon', 'acf' ),
|
||||||
'dashicons-editor-removeformatting' => esc_html__( 'Removeformatting icon', 'acf' ),
|
'dashicons-columns' => esc_html__( 'Columns Icon', 'acf' ),
|
||||||
'dashicons-editor-rtl' => esc_html__( 'Rtl icon', 'acf' ),
|
'dashicons-controls-back' => esc_html__( 'Back Icon', 'acf' ),
|
||||||
'dashicons-editor-spellcheck' => esc_html__( 'Spellcheck icon', 'acf' ),
|
'dashicons-controls-forward' => esc_html__( 'Forward Icon', 'acf' ),
|
||||||
'dashicons-editor-strikethrough' => esc_html__( 'Strikethrough icon', 'acf' ),
|
'dashicons-controls-pause' => esc_html__( 'Pause Icon', 'acf' ),
|
||||||
'dashicons-editor-table' => esc_html__( 'Table icon', 'acf' ),
|
'dashicons-controls-play' => esc_html__( 'Play Icon', 'acf' ),
|
||||||
'dashicons-editor-textcolor' => esc_html__( 'Textcolor icon', 'acf' ),
|
'dashicons-controls-repeat' => esc_html__( 'Repeat Icon', 'acf' ),
|
||||||
'dashicons-editor-ul' => esc_html__( 'Ul icon', 'acf' ),
|
'dashicons-controls-skipback' => esc_html__( 'Skip Back Icon', 'acf' ),
|
||||||
'dashicons-editor-underline' => esc_html__( 'Underline icon', 'acf' ),
|
'dashicons-controls-skipforward' => esc_html__( 'Skip Forward Icon', 'acf' ),
|
||||||
'dashicons-editor-unlink' => esc_html__( 'Unlink icon', 'acf' ),
|
'dashicons-controls-volumeoff' => esc_html__( 'Volume Off Icon', 'acf' ),
|
||||||
'dashicons-editor-video' => esc_html__( 'Video icon', 'acf' ),
|
'dashicons-controls-volumeon' => esc_html__( 'Volume On Icon', 'acf' ),
|
||||||
'dashicons-email' => esc_html__( 'Email icon', 'acf' ),
|
'dashicons-cover-image' => esc_html__( 'Cover Image Icon', 'acf' ),
|
||||||
'dashicons-email-alt' => esc_html__( 'Email alt icon', 'acf' ),
|
'dashicons-dashboard' => esc_html__( 'Dashboard Icon', 'acf' ),
|
||||||
'dashicons-exerpt-view' => esc_html__( 'Exerpt-view icon', 'acf' ),
|
'dashicons-database' => esc_html__( 'Database Icon', 'acf' ),
|
||||||
'dashicons-external' => esc_html__( 'External icon', 'acf' ),
|
'dashicons-database-add' => esc_html__( 'Database Add Icon', 'acf' ),
|
||||||
'dashicons-facebook' => esc_html__( 'Facebook icon', 'acf' ),
|
'dashicons-database-export' => esc_html__( 'Database Export Icon', 'acf' ),
|
||||||
'dashicons-facebook-alt' => esc_html__( 'Facebook alt icon', 'acf' ),
|
'dashicons-database-import' => esc_html__( 'Database Import Icon', 'acf' ),
|
||||||
'dashicons-feedback' => esc_html__( 'Feedback icon', 'acf' ),
|
'dashicons-database-remove' => esc_html__( 'Database Remove Icon', 'acf' ),
|
||||||
'dashicons-filter' => esc_html__( 'Filter icon', 'acf' ),
|
'dashicons-database-view' => esc_html__( 'Database View Icon', 'acf' ),
|
||||||
'dashicons-flag' => esc_html__( 'Flag icon', 'acf' ),
|
'dashicons-desktop' => esc_html__( 'Desktop Icon', 'acf' ),
|
||||||
'dashicons-format-aside' => esc_html__( 'Format aside icon', 'acf' ),
|
'dashicons-dismiss' => esc_html__( 'Dismiss Icon', 'acf' ),
|
||||||
'dashicons-format-audio' => esc_html__( 'Format audio icon', 'acf' ),
|
'dashicons-download' => esc_html__( 'Download Icon', 'acf' ),
|
||||||
'dashicons-format-chat' => esc_html__( 'Format chat icon', 'acf' ),
|
'dashicons-drumstick' => esc_html__( 'Drumstick Icon', 'acf' ),
|
||||||
'dashicons-format-gallery' => esc_html__( 'Format gallery icon', 'acf' ),
|
'dashicons-edit' => esc_html__( 'Edit Icon', 'acf' ),
|
||||||
'dashicons-format-image' => esc_html__( 'Format image icon', 'acf' ),
|
'dashicons-edit-large' => esc_html__( 'Edit Large Icon', 'acf' ),
|
||||||
'dashicons-format-quote' => esc_html__( 'Format quote icon', 'acf' ),
|
'dashicons-edit-page' => esc_html__( 'Edit Page Icon', 'acf' ),
|
||||||
'dashicons-format-status' => esc_html__( 'Format status icon', 'acf' ),
|
'dashicons-editor-aligncenter' => esc_html__( 'Align Center Icon', 'acf' ),
|
||||||
'dashicons-format-video' => esc_html__( 'Format video icon', 'acf' ),
|
'dashicons-editor-alignleft' => esc_html__( 'Align Left Icon', 'acf' ),
|
||||||
'dashicons-forms' => esc_html__( 'Forms icon', 'acf' ),
|
'dashicons-editor-alignright' => esc_html__( 'Align Right Icon', 'acf' ),
|
||||||
'dashicons-googleplus' => esc_html__( 'Googleplus icon', 'acf' ),
|
'dashicons-editor-bold' => esc_html__( 'Bold Icon', 'acf' ),
|
||||||
'dashicons-grid-view' => esc_html__( 'Grid-view icon', 'acf' ),
|
'dashicons-editor-break' => esc_html__( 'Break Icon', 'acf' ),
|
||||||
'dashicons-groups' => esc_html__( 'Groups icon', 'acf' ),
|
'dashicons-editor-code' => esc_html__( 'Code Icon', 'acf' ),
|
||||||
'dashicons-hammer' => esc_html__( 'Hammer icon', 'acf' ),
|
'dashicons-editor-contract' => esc_html__( 'Contract Icon', 'acf' ),
|
||||||
'dashicons-heart' => esc_html__( 'Heart icon', 'acf' ),
|
'dashicons-editor-customchar' => esc_html__( 'Custom Character Icon', 'acf' ),
|
||||||
'dashicons-hidden' => esc_html__( 'Hidden icon', 'acf' ),
|
'dashicons-editor-expand' => esc_html__( 'Expand Icon', 'acf' ),
|
||||||
'dashicons-id' => esc_html__( 'Id icon', 'acf' ),
|
'dashicons-editor-help' => esc_html__( 'Help Icon', 'acf' ),
|
||||||
'dashicons-id-alt' => esc_html__( 'Id-alt icon', 'acf' ),
|
'dashicons-editor-indent' => esc_html__( 'Indent Icon', 'acf' ),
|
||||||
'dashicons-image-crop' => esc_html__( 'Image crop icon', 'acf' ),
|
'dashicons-editor-insertmore' => esc_html__( 'Insert More Icon', 'acf' ),
|
||||||
'dashicons-image-filter' => esc_html__( 'Image filter icon', 'acf' ),
|
'dashicons-editor-italic' => esc_html__( 'Italic Icon', 'acf' ),
|
||||||
'dashicons-image-flip-horizontal' => esc_html__( 'Image flip-horizontal icon', 'acf' ),
|
'dashicons-editor-justify' => esc_html__( 'Justify Icon', 'acf' ),
|
||||||
'dashicons-image-flip-vertical' => esc_html__( 'Image flip-vertical icon', 'acf' ),
|
'dashicons-editor-kitchensink' => esc_html__( 'Kitchen Sink Icon', 'acf' ),
|
||||||
'dashicons-image-rotate' => esc_html__( 'Image rotate icon', 'acf' ),
|
'dashicons-editor-ltr' => esc_html__( 'LTR Icon', 'acf' ),
|
||||||
'dashicons-image-rotate-left' => esc_html__( 'Image rotate-left icon', 'acf' ),
|
'dashicons-editor-ol' => esc_html__( 'Ordered List Icon', 'acf' ),
|
||||||
'dashicons-image-rotate-right' => esc_html__( 'Image rotate-right icon', 'acf' ),
|
'dashicons-editor-ol-rtl' => esc_html__( 'Ordered List RTL Icon', 'acf' ),
|
||||||
'dashicons-images-alt' => esc_html__( 'Images-alt icon', 'acf' ),
|
'dashicons-editor-outdent' => esc_html__( 'Outdent Icon', 'acf' ),
|
||||||
'dashicons-images-alt2' => esc_html__( 'Images-alt2 icon', 'acf' ),
|
'dashicons-editor-paragraph' => esc_html__( 'Paragraph Icon', 'acf' ),
|
||||||
'dashicons-index-card' => esc_html__( 'Index-card icon', 'acf' ),
|
'dashicons-editor-paste-text' => esc_html__( 'Paste Text Icon', 'acf' ),
|
||||||
'dashicons-info' => esc_html__( 'Info icon', 'acf' ),
|
'dashicons-editor-paste-word' => esc_html__( 'Paste Word Icon', 'acf' ),
|
||||||
'dashicons-laptop' => esc_html__( 'Laptop icon', 'acf' ),
|
'dashicons-editor-quote' => esc_html__( 'Quote Icon', 'acf' ),
|
||||||
'dashicons-layout' => esc_html__( 'Layout icon', 'acf' ),
|
'dashicons-editor-removeformatting' => esc_html__( 'Remove Formatting Icon', 'acf' ),
|
||||||
'dashicons-leftright' => esc_html__( 'Leftright icon', 'acf' ),
|
'dashicons-editor-rtl' => esc_html__( 'RTL Icon', 'acf' ),
|
||||||
'dashicons-lightbulb' => esc_html__( 'Lightbulb icon', 'acf' ),
|
'dashicons-editor-spellcheck' => esc_html__( 'Spellcheck Icon', 'acf' ),
|
||||||
'dashicons-list-view' => esc_html__( 'List-view icon', 'acf' ),
|
'dashicons-editor-strikethrough' => esc_html__( 'Strikethrough Icon', 'acf' ),
|
||||||
'dashicons-location' => esc_html__( 'Location icon', 'acf' ),
|
'dashicons-editor-table' => esc_html__( 'Table Icon', 'acf' ),
|
||||||
'dashicons-location-alt' => esc_html__( 'Location-alt icon', 'acf' ),
|
'dashicons-editor-textcolor' => esc_html__( 'Text Color Icon', 'acf' ),
|
||||||
'dashicons-lock' => esc_html__( 'Lock icon', 'acf' ),
|
'dashicons-editor-ul' => esc_html__( 'Unordered List Icon', 'acf' ),
|
||||||
'dashicons-marker' => esc_html__( 'Marker icon', 'acf' ),
|
'dashicons-editor-underline' => esc_html__( 'Underline Icon', 'acf' ),
|
||||||
'dashicons-media-archive' => esc_html__( 'Media archive icon', 'acf' ),
|
'dashicons-editor-unlink' => esc_html__( 'Unlink Icon', 'acf' ),
|
||||||
'dashicons-media-audio' => esc_html__( 'Media audio icon', 'acf' ),
|
'dashicons-editor-video' => esc_html__( 'Video Icon', 'acf' ),
|
||||||
'dashicons-media-code' => esc_html__( 'Media code icon', 'acf' ),
|
'dashicons-ellipsis' => esc_html__( 'Ellipsis Icon', 'acf' ),
|
||||||
'dashicons-media-default' => esc_html__( 'Media default icon', 'acf' ),
|
'dashicons-email' => esc_html__( 'Email Icon', 'acf' ),
|
||||||
'dashicons-media-document' => esc_html__( 'Media document icon', 'acf' ),
|
'dashicons-email-alt' => esc_html__( 'Email (alt) Icon', 'acf' ),
|
||||||
'dashicons-media-interactive' => esc_html__( 'Media interactive icon', 'acf' ),
|
'dashicons-email-alt2' => esc_html__( 'Email (alt2) Icon', 'acf' ),
|
||||||
'dashicons-media-spreadsheet' => esc_html__( 'Media spreadsheet icon', 'acf' ),
|
'dashicons-embed-audio' => esc_html__( 'Embed Audio Icon', 'acf' ),
|
||||||
'dashicons-media-text' => esc_html__( 'Media text icon', 'acf' ),
|
'dashicons-embed-generic' => esc_html__( 'Embed Generic Icon', 'acf' ),
|
||||||
'dashicons-media-video' => esc_html__( 'Media video icon', 'acf' ),
|
'dashicons-embed-photo' => esc_html__( 'Embed Photo Icon', 'acf' ),
|
||||||
'dashicons-megaphone' => esc_html__( 'Megaphone icon', 'acf' ),
|
'dashicons-embed-post' => esc_html__( 'Embed Post Icon', 'acf' ),
|
||||||
'dashicons-menu' => esc_html__( 'Menu icon', 'acf' ),
|
'dashicons-embed-video' => esc_html__( 'Embed Video Icon', 'acf' ),
|
||||||
'dashicons-microphone' => esc_html__( 'Microphone icon', 'acf' ),
|
'dashicons-excerpt-view' => esc_html__( 'Excerpt View Icon', 'acf' ),
|
||||||
'dashicons-migrate' => esc_html__( 'Migrate icon', 'acf' ),
|
'dashicons-exit' => esc_html__( 'Exit Icon', 'acf' ),
|
||||||
'dashicons-minus' => esc_html__( 'Minus icon', 'acf' ),
|
'dashicons-external' => esc_html__( 'External Icon', 'acf' ),
|
||||||
'dashicons-money' => esc_html__( 'Money icon', 'acf' ),
|
'dashicons-facebook' => esc_html__( 'Facebook Icon', 'acf' ),
|
||||||
'dashicons-move' => esc_html__( 'Move icon', 'acf' ),
|
'dashicons-facebook-alt' => esc_html__( 'Facebook (alt) Icon', 'acf' ),
|
||||||
'dashicons-nametag' => esc_html__( 'Nametag icon', 'acf' ),
|
'dashicons-feedback' => esc_html__( 'Feedback Icon', 'acf' ),
|
||||||
'dashicons-networking' => esc_html__( 'Networking icon', 'acf' ),
|
'dashicons-filter' => esc_html__( 'Filter Icon', 'acf' ),
|
||||||
'dashicons-no' => esc_html__( 'No icon', 'acf' ),
|
'dashicons-flag' => esc_html__( 'Flag Icon', 'acf' ),
|
||||||
'dashicons-no-alt' => esc_html__( 'No alternative icon', 'acf' ),
|
'dashicons-food' => esc_html__( 'Food Icon', 'acf' ),
|
||||||
'dashicons-palmtree' => esc_html__( 'Palmtree icon', 'acf' ),
|
'dashicons-format-aside' => esc_html__( 'Aside Icon', 'acf' ),
|
||||||
'dashicons-paperclip' => esc_html__( 'Paperclip icon', 'acf' ),
|
'dashicons-format-audio' => esc_html__( 'Audio Icon', 'acf' ),
|
||||||
'dashicons-performance' => esc_html__( 'Performance icon', 'acf' ),
|
'dashicons-format-chat' => esc_html__( 'Chat Icon', 'acf' ),
|
||||||
'dashicons-phone' => esc_html__( 'Phone icon', 'acf' ),
|
'dashicons-format-gallery' => esc_html__( 'Gallery Icon', 'acf' ),
|
||||||
'dashicons-playlist-audio' => esc_html__( 'Playlist-audio icon', 'acf' ),
|
'dashicons-format-image' => esc_html__( 'Image Icon', 'acf' ),
|
||||||
'dashicons-playlist-video' => esc_html__( 'Playlist-video icon', 'acf' ),
|
'dashicons-format-quote' => esc_html__( 'Quote Icon', 'acf' ),
|
||||||
'dashicons-plus' => esc_html__( 'Plus icon', 'acf' ),
|
'dashicons-format-status' => esc_html__( 'Status Icon', 'acf' ),
|
||||||
'dashicons-plus-alt' => esc_html__( 'Plus-alt icon', 'acf' ),
|
'dashicons-format-video' => esc_html__( 'Video Icon', 'acf' ),
|
||||||
'dashicons-portfolio' => esc_html__( 'Portfolio icon', 'acf' ),
|
'dashicons-forms' => esc_html__( 'Forms Icon', 'acf' ),
|
||||||
'dashicons-post-status' => esc_html__( 'Post-status icon', 'acf' ),
|
'dashicons-fullscreen-alt' => esc_html__( 'Fullscreen (alt) Icon', 'acf' ),
|
||||||
'dashicons-pressthis' => esc_html__( 'Pressthis icon', 'acf' ),
|
'dashicons-fullscreen-exit-alt' => esc_html__( 'Fullscreen Exit (alt) Icon', 'acf' ),
|
||||||
'dashicons-products' => esc_html__( 'Products icon', 'acf' ),
|
'dashicons-games' => esc_html__( 'Games Icon', 'acf' ),
|
||||||
'dashicons-randomize' => esc_html__( 'Randomize icon', 'acf' ),
|
'dashicons-google' => esc_html__( 'Google Icon', 'acf' ),
|
||||||
'dashicons-redo' => esc_html__( 'Redo icon', 'acf' ),
|
'dashicons-grid-view' => esc_html__( 'Grid View Icon', 'acf' ),
|
||||||
'dashicons-rss' => esc_html__( 'Rss icon', 'acf' ),
|
'dashicons-groups' => esc_html__( 'Groups Icon', 'acf' ),
|
||||||
'dashicons-schedule' => esc_html__( 'Schedule icon', 'acf' ),
|
'dashicons-hammer' => esc_html__( 'Hammer Icon', 'acf' ),
|
||||||
'dashicons-screenoptions' => esc_html__( 'Screenoptions icon', 'acf' ),
|
'dashicons-heading' => esc_html__( 'Heading Icon', 'acf' ),
|
||||||
'dashicons-search' => esc_html__( 'Search icon', 'acf' ),
|
'dashicons-heart' => esc_html__( 'Heart Icon', 'acf' ),
|
||||||
'dashicons-share' => esc_html__( 'Share icon', 'acf' ),
|
'dashicons-hidden' => esc_html__( 'Hidden Icon', 'acf' ),
|
||||||
'dashicons-share-alt' => esc_html__( 'Share-alt icon', 'acf' ),
|
'dashicons-hourglass' => esc_html__( 'Hourglass Icon', 'acf' ),
|
||||||
'dashicons-share-alt2' => esc_html__( 'Share-alt2 icon', 'acf' ),
|
'dashicons-html' => esc_html__( 'HTML Icon', 'acf' ),
|
||||||
'dashicons-shield' => esc_html__( 'Shield icon', 'acf' ),
|
'dashicons-id' => esc_html__( 'Id Icon', 'acf' ),
|
||||||
'dashicons-shield-alt' => esc_html__( 'Shield-alt icon', 'acf' ),
|
'dashicons-id-alt' => esc_html__( 'Id (alt) Icon', 'acf' ),
|
||||||
'dashicons-slides' => esc_html__( 'Slides icon', 'acf' ),
|
'dashicons-image-crop' => esc_html__( 'Crop Icon', 'acf' ),
|
||||||
'dashicons-smartphone' => esc_html__( 'Smartphone icon', 'acf' ),
|
'dashicons-image-filter' => esc_html__( 'Filter Icon', 'acf' ),
|
||||||
'dashicons-smiley' => esc_html__( 'Smiley icon', 'acf' ),
|
'dashicons-image-flip-horizontal' => esc_html__( 'Flip Horizontal Icon', 'acf' ),
|
||||||
'dashicons-sort' => esc_html__( 'Sort icon', 'acf' ),
|
'dashicons-image-flip-vertical' => esc_html__( 'Flip Vertical Icon', 'acf' ),
|
||||||
'dashicons-sos' => esc_html__( 'Sos icon', 'acf' ),
|
'dashicons-image-rotate' => esc_html__( 'Rotate Icon', 'acf' ),
|
||||||
'dashicons-star-empty' => esc_html__( 'Star-empty icon', 'acf' ),
|
'dashicons-image-rotate-left' => esc_html__( 'Rotate Left Icon', 'acf' ),
|
||||||
'dashicons-star-filled' => esc_html__( 'Star-filled icon', 'acf' ),
|
'dashicons-image-rotate-right' => esc_html__( 'Rotate Right Icon', 'acf' ),
|
||||||
'dashicons-star-half' => esc_html__( 'Star-half icon', 'acf' ),
|
'dashicons-images-alt' => esc_html__( 'Images (alt) Icon', 'acf' ),
|
||||||
'dashicons-sticky' => esc_html__( 'Sticky icon', 'acf' ),
|
'dashicons-images-alt2' => esc_html__( 'Images (alt2) Icon', 'acf' ),
|
||||||
'dashicons-store' => esc_html__( 'Store icon', 'acf' ),
|
'dashicons-index-card' => esc_html__( 'Index Card Icon', 'acf' ),
|
||||||
'dashicons-tablet' => esc_html__( 'Tablet icon', 'acf' ),
|
'dashicons-info' => esc_html__( 'Info Icon', 'acf' ),
|
||||||
'dashicons-tag' => esc_html__( 'Tag icon', 'acf' ),
|
'dashicons-info-outline' => esc_html__( 'Info Outline Icon', 'acf' ),
|
||||||
'dashicons-tagcloud' => esc_html__( 'Tagcloud icon', 'acf' ),
|
'dashicons-insert' => esc_html__( 'Insert Icon', 'acf' ),
|
||||||
'dashicons-testimonial' => esc_html__( 'Testimonial icon', 'acf' ),
|
'dashicons-insert-after' => esc_html__( 'Insert After Icon', 'acf' ),
|
||||||
'dashicons-text' => esc_html__( 'Text icon', 'acf' ),
|
'dashicons-insert-before' => esc_html__( 'Insert Before Icon', 'acf' ),
|
||||||
'dashicons-thumbs-down' => esc_html__( 'Thumbs-down icon', 'acf' ),
|
'dashicons-instagram' => esc_html__( 'Instagram Icon', 'acf' ),
|
||||||
'dashicons-thumbs-up' => esc_html__( 'Thumbs-up icon', 'acf' ),
|
'dashicons-laptop' => esc_html__( 'Laptop Icon', 'acf' ),
|
||||||
'dashicons-tickets' => esc_html__( 'Tickets icon', 'acf' ),
|
'dashicons-layout' => esc_html__( 'Layout Icon', 'acf' ),
|
||||||
'dashicons-tickets-alt' => esc_html__( 'Tickets alternative icon', 'acf' ),
|
'dashicons-leftright' => esc_html__( 'Left Right Icon', 'acf' ),
|
||||||
'dashicons-translation' => esc_html__( 'Translation icon', 'acf' ),
|
'dashicons-lightbulb' => esc_html__( 'Lightbulb Icon', 'acf' ),
|
||||||
'dashicons-trash' => esc_html__( 'Trash icon', 'acf' ),
|
'dashicons-linkedin' => esc_html__( 'LinkedIn Icon', 'acf' ),
|
||||||
'dashicons-twitter' => esc_html__( 'Twitter icon', 'acf' ),
|
'dashicons-list-view' => esc_html__( 'List View Icon', 'acf' ),
|
||||||
'dashicons-undo' => esc_html__( 'Undo icon', 'acf' ),
|
'dashicons-location' => esc_html__( 'Location Icon', 'acf' ),
|
||||||
'dashicons-universal-access' => esc_html__( 'Universal access icon', 'acf' ),
|
'dashicons-location-alt' => esc_html__( 'Location (alt) Icon', 'acf' ),
|
||||||
'dashicons-universal-access-alt' => esc_html__( 'Universal access alternative icon', 'acf' ),
|
'dashicons-lock' => esc_html__( 'Lock Icon', 'acf' ),
|
||||||
'dashicons-unlock' => esc_html__( 'Unlock icon', 'acf' ),
|
'dashicons-marker' => esc_html__( 'Marker Icon', 'acf' ),
|
||||||
'dashicons-update' => esc_html__( 'Update icon', 'acf' ),
|
'dashicons-media-archive' => esc_html__( 'Archive Icon', 'acf' ),
|
||||||
'dashicons-upload' => esc_html__( 'Upload icon', 'acf' ),
|
'dashicons-media-audio' => esc_html__( 'Audio Icon', 'acf' ),
|
||||||
'dashicons-vault' => esc_html__( 'Vault icon', 'acf' ),
|
'dashicons-media-code' => esc_html__( 'Code Icon', 'acf' ),
|
||||||
'dashicons-video-alt' => esc_html__( 'Video-alt icon', 'acf' ),
|
'dashicons-media-default' => esc_html__( 'Default Icon', 'acf' ),
|
||||||
'dashicons-video-alt2' => esc_html__( 'Video-alt2 icon', 'acf' ),
|
'dashicons-media-document' => esc_html__( 'Document Icon', 'acf' ),
|
||||||
'dashicons-video-alt3' => esc_html__( 'Video-alt3 icon', 'acf' ),
|
'dashicons-media-interactive' => esc_html__( 'Interactive Icon', 'acf' ),
|
||||||
'dashicons-visibility' => esc_html__( 'Visibility icon', 'acf' ),
|
'dashicons-media-spreadsheet' => esc_html__( 'Spreadsheet Icon', 'acf' ),
|
||||||
'dashicons-warning' => esc_html__( 'Warning icon', 'acf' ),
|
'dashicons-media-text' => esc_html__( 'Text Icon', 'acf' ),
|
||||||
'dashicons-welcome-add-page' => esc_html__( 'Welcome add-page icon', 'acf' ),
|
'dashicons-media-video' => esc_html__( 'Video Icon', 'acf' ),
|
||||||
'dashicons-welcome-comments' => esc_html__( 'Welcome comments icon', 'acf' ),
|
'dashicons-megaphone' => esc_html__( 'Megaphone Icon', 'acf' ),
|
||||||
'dashicons-welcome-learn-more' => esc_html__( 'Welcome learn-more icon', 'acf' ),
|
'dashicons-menu' => esc_html__( 'Menu Icon', 'acf' ),
|
||||||
'dashicons-welcome-view-site' => esc_html__( 'Welcome view-site icon', 'acf' ),
|
'dashicons-menu-alt' => esc_html__( 'Menu (alt) Icon', 'acf' ),
|
||||||
'dashicons-welcome-widgets-menus' => esc_html__( 'Welcome widgets-menus icon', 'acf' ),
|
'dashicons-menu-alt2' => esc_html__( 'Menu (alt2) Icon', 'acf' ),
|
||||||
'dashicons-welcome-write-blog' => esc_html__( 'Welcome write-blog icon', 'acf' ),
|
'dashicons-menu-alt3' => esc_html__( 'Menu (alt3) Icon', 'acf' ),
|
||||||
'dashicons-wordpress' => esc_html__( 'Wordpress icon', 'acf' ),
|
'dashicons-microphone' => esc_html__( 'Microphone Icon', 'acf' ),
|
||||||
'dashicons-wordpress-alt' => esc_html__( 'Wordpress-alt icon', 'acf' ),
|
'dashicons-migrate' => esc_html__( 'Migrate Icon', 'acf' ),
|
||||||
'dashicons-yes' => esc_html__( 'Yes icon', 'acf' ),
|
'dashicons-minus' => esc_html__( 'Minus Icon', 'acf' ),
|
||||||
|
'dashicons-money' => esc_html__( 'Money Icon', 'acf' ),
|
||||||
|
'dashicons-money-alt' => esc_html__( 'Money (alt) Icon', 'acf' ),
|
||||||
|
'dashicons-move' => esc_html__( 'Move Icon', 'acf' ),
|
||||||
|
'dashicons-nametag' => esc_html__( 'Nametag Icon', 'acf' ),
|
||||||
|
'dashicons-networking' => esc_html__( 'Networking Icon', 'acf' ),
|
||||||
|
'dashicons-no' => esc_html__( 'No Icon', 'acf' ),
|
||||||
|
'dashicons-no-alt' => esc_html__( 'No (alt) Icon', 'acf' ),
|
||||||
|
'dashicons-open-folder' => esc_html__( 'Open Folder Icon', 'acf' ),
|
||||||
|
'dashicons-palmtree' => esc_html__( 'Palm Tree Icon', 'acf' ),
|
||||||
|
'dashicons-paperclip' => esc_html__( 'Paperclip Icon', 'acf' ),
|
||||||
|
'dashicons-pdf' => esc_html__( 'PDF Icon', 'acf' ),
|
||||||
|
'dashicons-performance' => esc_html__( 'Performance Icon', 'acf' ),
|
||||||
|
'dashicons-pets' => esc_html__( 'Pets Icon', 'acf' ),
|
||||||
|
'dashicons-phone' => esc_html__( 'Phone Icon', 'acf' ),
|
||||||
|
'dashicons-pinterest' => esc_html__( 'Pinterest Icon', 'acf' ),
|
||||||
|
'dashicons-playlist-audio' => esc_html__( 'Playlist Audio Icon', 'acf' ),
|
||||||
|
'dashicons-playlist-video' => esc_html__( 'Playlist Video Icon', 'acf' ),
|
||||||
|
'dashicons-plugins-checked' => esc_html__( 'Plugins Checked Icon', 'acf' ),
|
||||||
|
'dashicons-plus' => esc_html__( 'Plus Icon', 'acf' ),
|
||||||
|
'dashicons-plus-alt' => esc_html__( 'Plus (alt) Icon', 'acf' ),
|
||||||
|
'dashicons-plus-alt2' => esc_html__( 'Plus (alt2) Icon', 'acf' ),
|
||||||
|
'dashicons-podio' => esc_html__( 'Podio Icon', 'acf' ),
|
||||||
|
'dashicons-portfolio' => esc_html__( 'Portfolio Icon', 'acf' ),
|
||||||
|
'dashicons-post-status' => esc_html__( 'Post Status Icon', 'acf' ),
|
||||||
|
'dashicons-pressthis' => esc_html__( 'Pressthis Icon', 'acf' ),
|
||||||
|
'dashicons-printer' => esc_html__( 'Printer Icon', 'acf' ),
|
||||||
|
'dashicons-privacy' => esc_html__( 'Privacy Icon', 'acf' ),
|
||||||
|
'dashicons-products' => esc_html__( 'Products Icon', 'acf' ),
|
||||||
|
'dashicons-randomize' => esc_html__( 'Randomize Icon', 'acf' ),
|
||||||
|
'dashicons-reddit' => esc_html__( 'Reddit Icon', 'acf' ),
|
||||||
|
'dashicons-redo' => esc_html__( 'Redo Icon', 'acf' ),
|
||||||
|
'dashicons-remove' => esc_html__( 'Remove Icon', 'acf' ),
|
||||||
|
'dashicons-rest-api' => esc_html__( 'REST API Icon', 'acf' ),
|
||||||
|
'dashicons-rss' => esc_html__( 'RSS Icon', 'acf' ),
|
||||||
|
'dashicons-saved' => esc_html__( 'Saved Icon', 'acf' ),
|
||||||
|
'dashicons-schedule' => esc_html__( 'Schedule Icon', 'acf' ),
|
||||||
|
'dashicons-screenoptions' => esc_html__( 'Screen Options Icon', 'acf' ),
|
||||||
|
'dashicons-search' => esc_html__( 'Search Icon', 'acf' ),
|
||||||
|
'dashicons-share' => esc_html__( 'Share Icon', 'acf' ),
|
||||||
|
'dashicons-share-alt' => esc_html__( 'Share (alt) Icon', 'acf' ),
|
||||||
|
'dashicons-share-alt2' => esc_html__( 'Share (alt2) Icon', 'acf' ),
|
||||||
|
'dashicons-shield' => esc_html__( 'Shield Icon', 'acf' ),
|
||||||
|
'dashicons-shield-alt' => esc_html__( 'Shield (alt) Icon', 'acf' ),
|
||||||
|
'dashicons-shortcode' => esc_html__( 'Shortcode Icon', 'acf' ),
|
||||||
|
'dashicons-slides' => esc_html__( 'Slides Icon', 'acf' ),
|
||||||
|
'dashicons-smartphone' => esc_html__( 'Smartphone Icon', 'acf' ),
|
||||||
|
'dashicons-smiley' => esc_html__( 'Smiley Icon', 'acf' ),
|
||||||
|
'dashicons-sort' => esc_html__( 'Sort Icon', 'acf' ),
|
||||||
|
'dashicons-sos' => esc_html__( 'Sos Icon', 'acf' ),
|
||||||
|
'dashicons-spotify' => esc_html__( 'Spotify Icon', 'acf' ),
|
||||||
|
'dashicons-star-empty' => esc_html__( 'Star Empty Icon', 'acf' ),
|
||||||
|
'dashicons-star-filled' => esc_html__( 'Star Filled Icon', 'acf' ),
|
||||||
|
'dashicons-star-half' => esc_html__( 'Star Half Icon', 'acf' ),
|
||||||
|
'dashicons-sticky' => esc_html__( 'Sticky Icon', 'acf' ),
|
||||||
|
'dashicons-store' => esc_html__( 'Store Icon', 'acf' ),
|
||||||
|
'dashicons-superhero' => esc_html__( 'Superhero Icon', 'acf' ),
|
||||||
|
'dashicons-superhero-alt' => esc_html__( 'Superhero (alt) Icon', 'acf' ),
|
||||||
|
'dashicons-table-col-after' => esc_html__( 'Table Col After Icon', 'acf' ),
|
||||||
|
'dashicons-table-col-before' => esc_html__( 'Table Col Before Icon', 'acf' ),
|
||||||
|
'dashicons-table-col-delete' => esc_html__( 'Table Col Delete Icon', 'acf' ),
|
||||||
|
'dashicons-table-row-after' => esc_html__( 'Table Row After Icon', 'acf' ),
|
||||||
|
'dashicons-table-row-before' => esc_html__( 'Table Row Before Icon', 'acf' ),
|
||||||
|
'dashicons-table-row-delete' => esc_html__( 'Table Row Delete Icon', 'acf' ),
|
||||||
|
'dashicons-tablet' => esc_html__( 'Tablet Icon', 'acf' ),
|
||||||
|
'dashicons-tag' => esc_html__( 'Tag Icon', 'acf' ),
|
||||||
|
'dashicons-tagcloud' => esc_html__( 'Tagcloud Icon', 'acf' ),
|
||||||
|
'dashicons-testimonial' => esc_html__( 'Testimonial Icon', 'acf' ),
|
||||||
|
'dashicons-text' => esc_html__( 'Text Icon', 'acf' ),
|
||||||
|
'dashicons-text-page' => esc_html__( 'Text Page Icon', 'acf' ),
|
||||||
|
'dashicons-thumbs-down' => esc_html__( 'Thumbs Down Icon', 'acf' ),
|
||||||
|
'dashicons-thumbs-up' => esc_html__( 'Thumbs Up Icon', 'acf' ),
|
||||||
|
'dashicons-tickets' => esc_html__( 'Tickets Icon', 'acf' ),
|
||||||
|
'dashicons-tickets-alt' => esc_html__( 'Tickets (alt) Icon', 'acf' ),
|
||||||
|
'dashicons-tide' => esc_html__( 'Tide Icon', 'acf' ),
|
||||||
|
'dashicons-translation' => esc_html__( 'Translation Icon', 'acf' ),
|
||||||
|
'dashicons-trash' => esc_html__( 'Trash Icon', 'acf' ),
|
||||||
|
'dashicons-twitch' => esc_html__( 'Twitch Icon', 'acf' ),
|
||||||
|
'dashicons-twitter' => esc_html__( 'Twitter Icon', 'acf' ),
|
||||||
|
'dashicons-twitter-alt' => esc_html__( 'Twitter (alt) Icon', 'acf' ),
|
||||||
|
'dashicons-undo' => esc_html__( 'Undo Icon', 'acf' ),
|
||||||
|
'dashicons-universal-access' => esc_html__( 'Universal Access Icon', 'acf' ),
|
||||||
|
'dashicons-universal-access-alt' => esc_html__( 'Universal Access (alt) Icon', 'acf' ),
|
||||||
|
'dashicons-unlock' => esc_html__( 'Unlock Icon', 'acf' ),
|
||||||
|
'dashicons-update' => esc_html__( 'Update Icon', 'acf' ),
|
||||||
|
'dashicons-update-alt' => esc_html__( 'Update (alt) Icon', 'acf' ),
|
||||||
|
'dashicons-upload' => esc_html__( 'Upload Icon', 'acf' ),
|
||||||
|
'dashicons-vault' => esc_html__( 'Vault Icon', 'acf' ),
|
||||||
|
'dashicons-video-alt' => esc_html__( 'Video (alt) Icon', 'acf' ),
|
||||||
|
'dashicons-video-alt2' => esc_html__( 'Video (alt2) Icon', 'acf' ),
|
||||||
|
'dashicons-video-alt3' => esc_html__( 'Video (alt3) Icon', 'acf' ),
|
||||||
|
'dashicons-visibility' => esc_html__( 'Visibility Icon', 'acf' ),
|
||||||
|
'dashicons-warning' => esc_html__( 'Warning Icon', 'acf' ),
|
||||||
|
'dashicons-welcome-add-page' => esc_html__( 'Add Page Icon', 'acf' ),
|
||||||
|
'dashicons-welcome-comments' => esc_html__( 'Comments Icon', 'acf' ),
|
||||||
|
'dashicons-welcome-learn-more' => esc_html__( 'Learn More Icon', 'acf' ),
|
||||||
|
'dashicons-welcome-view-site' => esc_html__( 'View Site Icon', 'acf' ),
|
||||||
|
'dashicons-welcome-widgets-menus' => esc_html__( 'Widgets Menus Icon', 'acf' ),
|
||||||
|
'dashicons-welcome-write-blog' => esc_html__( 'Write Blog Icon', 'acf' ),
|
||||||
|
'dashicons-whatsapp' => esc_html__( 'WhatsApp Icon', 'acf' ),
|
||||||
|
'dashicons-wordpress' => esc_html__( 'WordPress Icon', 'acf' ),
|
||||||
|
'dashicons-wordpress-alt' => esc_html__( 'WordPress (alt) Icon', 'acf' ),
|
||||||
|
'dashicons-xing' => esc_html__( 'Xing Icon', 'acf' ),
|
||||||
|
'dashicons-yes' => esc_html__( 'Yes Icon', 'acf' ),
|
||||||
|
'dashicons-yes-alt' => esc_html__( 'Yes (alt) Icon', 'acf' ),
|
||||||
|
'dashicons-youtube' => esc_html__( 'YouTube Icon', 'acf' ),
|
||||||
);
|
);
|
||||||
|
|
||||||
return apply_filters( 'acf/fields/icon_picker/dashicons', $dashicons );
|
return apply_filters( 'acf/fields/icon_picker/dashicons', $dashicons );
|
||||||
|
|||||||
+19
-28
@@ -96,30 +96,27 @@ if ( ! class_exists( 'acf_field_oembed' ) ) :
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* description
|
* Returns AJAX results for the oEmbed field.
|
||||||
*
|
*
|
||||||
* @type function
|
* @since 5.0.0
|
||||||
* @date 24/10/13
|
|
||||||
* @since 5.0.0
|
|
||||||
*
|
*
|
||||||
* @param $post_id (int)
|
* @return void
|
||||||
* @return $post_id (int)
|
|
||||||
*/
|
*/
|
||||||
function ajax_query() {
|
public function ajax_query() {
|
||||||
|
$args = acf_request_args(
|
||||||
|
array(
|
||||||
|
'nonce' => '',
|
||||||
|
'field_key' => '',
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
// validate
|
if ( ! acf_verify_ajax( $args['nonce'], $args['field_key'] ) ) {
|
||||||
if ( ! acf_verify_ajax() ) {
|
|
||||||
die();
|
die();
|
||||||
}
|
}
|
||||||
|
|
||||||
// get choices
|
wp_send_json( $this->get_ajax_query( $_POST ) );
|
||||||
$response = $this->get_ajax_query( $_POST );
|
|
||||||
|
|
||||||
// return
|
|
||||||
wp_send_json( $response );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This function will return an array of data formatted for use in a select2 AJAX response
|
* This function will return an array of data formatted for use in a select2 AJAX response
|
||||||
*
|
*
|
||||||
@@ -162,25 +159,19 @@ if ( ! class_exists( 'acf_field_oembed' ) ) :
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* render_field()
|
* Renders the oEmbed field.
|
||||||
*
|
*
|
||||||
* Create the HTML interface for your field
|
* @since 3.6
|
||||||
*
|
*
|
||||||
* @param $field - an array holding all the field's data
|
* @param array $field The field settings array.
|
||||||
*
|
* @return void
|
||||||
* @type action
|
|
||||||
* @since 3.6
|
|
||||||
* @date 23/01/13
|
|
||||||
*/
|
*/
|
||||||
function render_field( $field ) {
|
public function render_field( $field ) {
|
||||||
|
|
||||||
// atts
|
|
||||||
$atts = array(
|
$atts = array(
|
||||||
'class' => 'acf-oembed',
|
'class' => 'acf-oembed',
|
||||||
|
'data-nonce' => wp_create_nonce( $field['key'] ),
|
||||||
);
|
);
|
||||||
|
|
||||||
// <strong><?php _e("Error.", 'acf'); </strong> _e("No embed found for the given URL.", 'acf');
|
|
||||||
// value
|
|
||||||
if ( $field['value'] ) {
|
if ( $field['value'] ) {
|
||||||
$atts['class'] .= ' has-value';
|
$atts['class'] .= ' has-value';
|
||||||
}
|
}
|
||||||
|
|||||||
+11
-29
@@ -2,20 +2,18 @@
|
|||||||
|
|
||||||
if ( ! class_exists( 'acf_field_output' ) ) :
|
if ( ! class_exists( 'acf_field_output' ) ) :
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This class and field type has been deprecated since ACF 6.3.2 and will not output anything.
|
||||||
|
*/
|
||||||
class acf_field_output extends acf_field {
|
class acf_field_output extends acf_field {
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This function will setup the field type data
|
* This function will setup the field type data
|
||||||
*
|
*
|
||||||
* @type function
|
|
||||||
* @date 5/03/2014
|
|
||||||
* @since 5.0.0
|
* @since 5.0.0
|
||||||
*
|
|
||||||
* @param n/a
|
|
||||||
* @return n/a
|
|
||||||
*/
|
*/
|
||||||
function initialize() {
|
public function initialize() {
|
||||||
|
|
||||||
// vars
|
// vars
|
||||||
$this->name = 'output';
|
$this->name = 'output';
|
||||||
@@ -28,32 +26,16 @@ if ( ! class_exists( 'acf_field_output' ) ) :
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create the HTML interface for your field
|
* The render field call. Deprecated since ACF 6.3.2.
|
||||||
*
|
*
|
||||||
* @param $field (array) the $field being rendered
|
* @param array $field The $field being edited
|
||||||
*
|
* @return false
|
||||||
* @type action
|
|
||||||
* @since 3.6
|
|
||||||
* @date 23/01/13
|
|
||||||
*
|
|
||||||
* @param $field (array) the $field being edited
|
|
||||||
* @return n/a
|
|
||||||
*/
|
*/
|
||||||
function render_field( $field ) {
|
public function render_field( $field ) {
|
||||||
|
|
||||||
// bail early if no html
|
// Deprecated since 6.3.2 and will be removed in a future release.
|
||||||
if ( ! $field['html'] ) {
|
_deprecated_function( __FUNCTION__, '6.3.2' );
|
||||||
return;
|
return false;
|
||||||
}
|
|
||||||
|
|
||||||
// html
|
|
||||||
if ( is_string( $field['html'] ) && ! function_exists( $field['html'] ) ) {
|
|
||||||
echo acf_esc_html( $field['html'] );
|
|
||||||
|
|
||||||
// function
|
|
||||||
} else {
|
|
||||||
call_user_func_array( $field['html'], array( $field ) );
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+24
-16
@@ -60,19 +60,28 @@ if ( ! class_exists( 'acf_field_page_link' ) ) :
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* description
|
* Returns AJAX results for the Page Link field.
|
||||||
*
|
*
|
||||||
* @type function
|
* @since 5.0.0
|
||||||
* @date 24/10/13
|
|
||||||
* @since 5.0.0
|
|
||||||
*
|
*
|
||||||
* @param $post_id (int)
|
* @return void
|
||||||
* @return $post_id (int)
|
|
||||||
*/
|
*/
|
||||||
function ajax_query() {
|
public function ajax_query() {
|
||||||
|
$nonce = acf_request_arg( 'nonce', '' );
|
||||||
|
$key = acf_request_arg( 'field_key', '' );
|
||||||
|
$conditional_logic = (bool) acf_request_arg( 'conditional_logic', false );
|
||||||
|
|
||||||
// validate
|
if ( $conditional_logic ) {
|
||||||
if ( ! acf_verify_ajax() ) {
|
if ( ! acf_current_user_can_admin() ) {
|
||||||
|
die();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Use the standard ACF admin nonce.
|
||||||
|
$nonce = '';
|
||||||
|
$key = '';
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( ! acf_verify_ajax( $nonce, $key ) ) {
|
||||||
die();
|
die();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -370,21 +379,20 @@ if ( ! class_exists( 'acf_field_page_link' ) ) :
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create the HTML interface for your field
|
* Renders the Page Link field.
|
||||||
*
|
*
|
||||||
* @param $field - an array holding all the field's data
|
* @since 3.6
|
||||||
*
|
*
|
||||||
* @type action
|
* @param array $field The field settings array.
|
||||||
* @since 3.6
|
* @return void
|
||||||
* @date 23/01/13
|
|
||||||
*/
|
*/
|
||||||
function render_field( $field ) {
|
public function render_field( $field ) {
|
||||||
|
|
||||||
// Change Field into a select
|
// Change Field into a select
|
||||||
$field['type'] = 'select';
|
$field['type'] = 'select';
|
||||||
$field['ui'] = 1;
|
$field['ui'] = 1;
|
||||||
$field['ajax'] = 1;
|
$field['ajax'] = 1;
|
||||||
$field['choices'] = array();
|
$field['choices'] = array();
|
||||||
|
$field['nonce'] = wp_create_nonce( $field['key'] );
|
||||||
|
|
||||||
// populate choices if value exists
|
// populate choices if value exists
|
||||||
if ( ! empty( $field['value'] ) ) {
|
if ( ! empty( $field['value'] ) ) {
|
||||||
|
|||||||
+23
-13
@@ -58,30 +58,40 @@ if ( ! class_exists( 'acf_field_post_object' ) ) :
|
|||||||
* AJAX query handler for post object fields.
|
* AJAX query handler for post object fields.
|
||||||
*
|
*
|
||||||
* @since 5.0.0
|
* @since 5.0.0
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
*/
|
*/
|
||||||
public function ajax_query() {
|
public function ajax_query() {
|
||||||
if ( ! acf_verify_ajax() ) {
|
$nonce = acf_request_arg( 'nonce', '' );
|
||||||
|
$key = acf_request_arg( 'field_key', '' );
|
||||||
|
$conditional_logic = (bool) acf_request_arg( 'conditional_logic', false );
|
||||||
|
|
||||||
|
if ( $conditional_logic ) {
|
||||||
|
if ( ! acf_current_user_can_admin() ) {
|
||||||
|
die();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Use the standard ACF admin nonce.
|
||||||
|
$nonce = '';
|
||||||
|
$key = '';
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( ! acf_verify_ajax( $nonce, $key ) ) {
|
||||||
die();
|
die();
|
||||||
}
|
}
|
||||||
|
|
||||||
// get choices
|
acf_send_ajax_results( $this->get_ajax_query( $_POST ) );
|
||||||
$response = $this->get_ajax_query( $_POST );
|
|
||||||
|
|
||||||
// return
|
|
||||||
acf_send_ajax_results( $response );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This function will return an array of data formatted for use in a select2 AJAX response
|
* This function will return an array of data formatted for use in a select2 AJAX response
|
||||||
*
|
*
|
||||||
* @since 5.0.9
|
* @since 5.0.9
|
||||||
*
|
*
|
||||||
* @param array $options The options being queried for the ajax request.
|
* @param array $options The options being queried for the ajax request.
|
||||||
* @return array The AJAX response array.
|
* @return array|boolean The AJAX response array, or false on failure.
|
||||||
*/
|
*/
|
||||||
public function get_ajax_query( $options = array() ) {
|
public function get_ajax_query( $options = array() ) {
|
||||||
|
|
||||||
// defaults
|
// defaults
|
||||||
$options = acf_parse_args(
|
$options = acf_parse_args(
|
||||||
$options,
|
$options,
|
||||||
@@ -223,7 +233,6 @@ if ( ! class_exists( 'acf_field_post_object' ) ) :
|
|||||||
return $response;
|
return $response;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This function will return an array containing id, text and maybe description data
|
* This function will return an array containing id, text and maybe description data
|
||||||
*
|
*
|
||||||
@@ -298,13 +307,14 @@ if ( ! class_exists( 'acf_field_post_object' ) ) :
|
|||||||
* @since 3.6
|
* @since 3.6
|
||||||
*
|
*
|
||||||
* @param array $field An array holding all the field's data.
|
* @param array $field An array holding all the field's data.
|
||||||
|
* @return void
|
||||||
*/
|
*/
|
||||||
public function render_field( $field ) {
|
public function render_field( $field ) {
|
||||||
|
|
||||||
// Change Field into a select
|
// Change Field into a select
|
||||||
$field['type'] = 'select';
|
$field['type'] = 'select';
|
||||||
$field['ui'] = 1;
|
$field['ui'] = 1;
|
||||||
$field['ajax'] = 1;
|
$field['ajax'] = 1;
|
||||||
|
$field['nonce'] = wp_create_nonce( $field['key'] );
|
||||||
$field['choices'] = array();
|
$field['choices'] = array();
|
||||||
|
|
||||||
// load posts
|
// load posts
|
||||||
|
|||||||
+23
-23
@@ -80,44 +80,44 @@ if ( ! class_exists( 'acf_field_relationship' ) ) :
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* description
|
* Returns AJAX results for the Relationship field.
|
||||||
*
|
*
|
||||||
* @type function
|
* @since 5.0.0
|
||||||
* @date 24/10/13
|
|
||||||
* @since 5.0.0
|
|
||||||
*
|
*
|
||||||
* @param $post_id (int)
|
* @return void
|
||||||
* @return $post_id (int)
|
|
||||||
*/
|
*/
|
||||||
function ajax_query() {
|
public function ajax_query() {
|
||||||
|
$nonce = acf_request_arg( 'nonce', '' );
|
||||||
|
$key = acf_request_arg( 'field_key', '' );
|
||||||
|
$conditional_logic = (bool) acf_request_arg( 'conditional_logic', false );
|
||||||
|
|
||||||
// validate
|
if ( $conditional_logic ) {
|
||||||
if ( ! acf_verify_ajax() ) {
|
if ( ! acf_current_user_can_admin() ) {
|
||||||
|
die();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Use the standard ACF admin nonce.
|
||||||
|
$nonce = '';
|
||||||
|
$key = '';
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( ! acf_verify_ajax( $nonce, $key ) ) {
|
||||||
die();
|
die();
|
||||||
}
|
}
|
||||||
|
|
||||||
// get choices
|
acf_send_ajax_results( $this->get_ajax_query( $_POST ) );
|
||||||
$response = $this->get_ajax_query( $_POST );
|
|
||||||
|
|
||||||
// return
|
|
||||||
acf_send_ajax_results( $response );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This function will return an array of data formatted for use in a select2 AJAX response
|
* This function will return an array of data formatted for use in a select2 AJAX response
|
||||||
*
|
*
|
||||||
* @type function
|
|
||||||
* @date 15/10/2014
|
|
||||||
* @since 5.0.9
|
* @since 5.0.9
|
||||||
*
|
*
|
||||||
* @param $options (array)
|
* @param array $options An array of options for the query.
|
||||||
* @return (array)
|
* @return array
|
||||||
*/
|
*/
|
||||||
function get_ajax_query( $options = array() ) {
|
public function get_ajax_query( $options = array() ) {
|
||||||
|
|
||||||
// defaults
|
// defaults
|
||||||
$options = wp_parse_args(
|
$options = wp_parse_args(
|
||||||
$options,
|
$options,
|
||||||
@@ -273,7 +273,6 @@ if ( ! class_exists( 'acf_field_relationship' ) ) :
|
|||||||
return $response;
|
return $response;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This function will return an array containing id, text and maybe description data
|
* This function will return an array containing id, text and maybe description data
|
||||||
*
|
*
|
||||||
@@ -418,6 +417,7 @@ if ( ! class_exists( 'acf_field_relationship' ) ) :
|
|||||||
'data-paged' => 1,
|
'data-paged' => 1,
|
||||||
'data-post_type' => '',
|
'data-post_type' => '',
|
||||||
'data-taxonomy' => '',
|
'data-taxonomy' => '',
|
||||||
|
'data-nonce' => wp_create_nonce( $field['key'] ),
|
||||||
);
|
);
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|||||||
+20
-21
@@ -112,32 +112,30 @@ if ( ! class_exists( 'acf_field_select' ) ) :
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* description
|
* AJAX handler for getting Select field choices.
|
||||||
*
|
*
|
||||||
* @type function
|
* @since 5.0.0
|
||||||
* @date 24/10/13
|
|
||||||
* @since 5.0.0
|
|
||||||
*
|
*
|
||||||
* @param $post_id (int)
|
* @return void
|
||||||
* @return $post_id (int)
|
|
||||||
*/
|
*/
|
||||||
function ajax_query() {
|
public function ajax_query() {
|
||||||
|
$nonce = acf_request_arg( 'nonce', '' );
|
||||||
|
$key = acf_request_arg( 'field_key', '' );
|
||||||
|
|
||||||
// validate
|
// Back-compat for field settings.
|
||||||
if ( ! acf_verify_ajax() ) {
|
if ( ! acf_is_field_key( $key ) ) {
|
||||||
|
$nonce = '';
|
||||||
|
$key = '';
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( ! acf_verify_ajax( $nonce, $key ) ) {
|
||||||
die();
|
die();
|
||||||
}
|
}
|
||||||
|
|
||||||
// get choices
|
acf_send_ajax_results( $this->get_ajax_query( $_POST ) );
|
||||||
$response = $this->get_ajax_query( $_POST );
|
|
||||||
|
|
||||||
// return
|
|
||||||
acf_send_ajax_results( $response );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This function will return an array of data formatted for use in a select2 AJAX response
|
* This function will return an array of data formatted for use in a select2 AJAX response
|
||||||
*
|
*
|
||||||
@@ -292,7 +290,12 @@ if ( ! class_exists( 'acf_field_select' ) ) :
|
|||||||
if ( ! empty( $field['ajax_action'] ) ) {
|
if ( ! empty( $field['ajax_action'] ) ) {
|
||||||
$select['data-ajax_action'] = $field['ajax_action'];
|
$select['data-ajax_action'] = $field['ajax_action'];
|
||||||
}
|
}
|
||||||
|
if ( ! empty( $field['nonce'] ) ) {
|
||||||
|
$select['data-nonce'] = $field['nonce'];
|
||||||
|
}
|
||||||
|
if ( $field['ajax'] && empty( $field['nonce'] ) && acf_is_field_key( $field['key'] ) ) {
|
||||||
|
$select['data-nonce'] = wp_create_nonce( $field['key'] );
|
||||||
|
}
|
||||||
if ( ! empty( $field['hide_search'] ) ) {
|
if ( ! empty( $field['hide_search'] ) ) {
|
||||||
$select['data-minimum-results-for-search'] = '-1';
|
$select['data-minimum-results-for-search'] = '-1';
|
||||||
}
|
}
|
||||||
@@ -307,10 +310,6 @@ if ( ! class_exists( 'acf_field_select' ) ) :
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( ! empty( $field['query_nonce'] ) ) {
|
|
||||||
$select['data-query-nonce'] = $field['query_nonce'];
|
|
||||||
}
|
|
||||||
|
|
||||||
// append
|
// append
|
||||||
$select['value'] = $value;
|
$select['value'] = $value;
|
||||||
$select['choices'] = $choices;
|
$select['choices'] = $choices;
|
||||||
|
|||||||
+33
-40
@@ -48,32 +48,35 @@ if ( ! class_exists( 'acf_field_taxonomy' ) ) :
|
|||||||
add_action( 'acf/save_post', array( $this, 'save_post' ), 15, 1 );
|
add_action( 'acf/save_post', array( $this, 'save_post' ), 15, 1 );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* description
|
* Returns AJAX results for the Taxonomy field.
|
||||||
*
|
*
|
||||||
* @type function
|
* @since 5.0.0
|
||||||
* @date 24/10/13
|
|
||||||
* @since 5.0.0
|
|
||||||
*
|
*
|
||||||
* @param $post_id (int)
|
* @return void
|
||||||
* @return $post_id (int)
|
|
||||||
*/
|
*/
|
||||||
function ajax_query() {
|
public function ajax_query() {
|
||||||
|
$nonce = acf_request_arg( 'nonce', '' );
|
||||||
|
$key = acf_request_arg( 'field_key', '' );
|
||||||
|
$conditional_logic = (bool) acf_request_arg( 'conditional_logic', false );
|
||||||
|
|
||||||
// validate
|
if ( $conditional_logic ) {
|
||||||
if ( ! acf_verify_ajax() ) {
|
if ( ! acf_current_user_can_admin() ) {
|
||||||
|
die();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Use the standard ACF admin nonce.
|
||||||
|
$nonce = '';
|
||||||
|
$key = '';
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( ! acf_verify_ajax( $nonce, $key ) ) {
|
||||||
die();
|
die();
|
||||||
}
|
}
|
||||||
|
|
||||||
// get choices
|
acf_send_ajax_results( $this->get_ajax_query( $_POST ) );
|
||||||
$response = $this->get_ajax_query( $_POST );
|
|
||||||
|
|
||||||
// return
|
|
||||||
acf_send_ajax_results( $response );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This function will return an array of data formatted for use in a select2 AJAX response
|
* This function will return an array of data formatted for use in a select2 AJAX response
|
||||||
*
|
*
|
||||||
@@ -455,18 +458,15 @@ if ( ! class_exists( 'acf_field_taxonomy' ) ) :
|
|||||||
return $value;
|
return $value;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create the HTML interface for your field
|
* Renders the Taxonomy field.
|
||||||
*
|
*
|
||||||
* @type action
|
* @since 3.6
|
||||||
* @since 3.6
|
|
||||||
* @date 23/01/13
|
|
||||||
*
|
*
|
||||||
* @param $field - an array holding all the field's data
|
* @param array $field The field settings array.
|
||||||
|
* @return void
|
||||||
*/
|
*/
|
||||||
function render_field( $field ) {
|
public function render_field( $field ) {
|
||||||
|
|
||||||
// force value to array
|
// force value to array
|
||||||
$field['value'] = acf_get_array( $field['value'] );
|
$field['value'] = acf_get_array( $field['value'] );
|
||||||
|
|
||||||
@@ -477,6 +477,7 @@ if ( ! class_exists( 'acf_field_taxonomy' ) ) :
|
|||||||
'data-ftype' => $field['field_type'],
|
'data-ftype' => $field['field_type'],
|
||||||
'data-taxonomy' => $field['taxonomy'],
|
'data-taxonomy' => $field['taxonomy'],
|
||||||
'data-allow_null' => $field['allow_null'],
|
'data-allow_null' => $field['allow_null'],
|
||||||
|
'data-nonce' => wp_create_nonce( $field['key'] ),
|
||||||
);
|
);
|
||||||
// get taxonomy
|
// get taxonomy
|
||||||
$taxonomy = get_taxonomy( $field['taxonomy'] );
|
$taxonomy = get_taxonomy( $field['taxonomy'] );
|
||||||
@@ -514,7 +515,6 @@ if ( ! class_exists( 'acf_field_taxonomy' ) ) :
|
|||||||
<?php
|
<?php
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create the HTML interface for your field
|
* Create the HTML interface for your field
|
||||||
*
|
*
|
||||||
@@ -750,25 +750,14 @@ if ( ! class_exists( 'acf_field_taxonomy' ) ) :
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ajax_add_term
|
* AJAX handler for adding Taxonomy field terms.
|
||||||
*
|
*
|
||||||
* @since 5.2.3
|
* @since 5.2.3
|
||||||
*
|
|
||||||
* @type function
|
|
||||||
* @date 17/04/2015
|
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
function ajax_add_term() {
|
public function ajax_add_term() {
|
||||||
|
$args = acf_request_args(
|
||||||
// verify nonce
|
|
||||||
if ( ! acf_verify_ajax() ) {
|
|
||||||
die();
|
|
||||||
}
|
|
||||||
|
|
||||||
// vars
|
|
||||||
$args = wp_parse_args(
|
|
||||||
$_POST,
|
|
||||||
array(
|
array(
|
||||||
'nonce' => '',
|
'nonce' => '',
|
||||||
'field_key' => '',
|
'field_key' => '',
|
||||||
@@ -777,6 +766,10 @@ if ( ! class_exists( 'acf_field_taxonomy' ) ) :
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
if ( ! acf_verify_ajax( $args['nonce'], $args['field_key'] ) ) {
|
||||||
|
die();
|
||||||
|
}
|
||||||
|
|
||||||
// load field
|
// load field
|
||||||
$field = acf_get_field( $args['field_key'] );
|
$field = acf_get_field( $args['field_key'] );
|
||||||
if ( ! $field ) {
|
if ( ! $field ) {
|
||||||
|
|||||||
+10
-9
@@ -153,20 +153,18 @@ if ( ! class_exists( 'ACF_Field_User' ) ) :
|
|||||||
/**
|
/**
|
||||||
* Renders the field input HTML.
|
* Renders the field input HTML.
|
||||||
*
|
*
|
||||||
* @date 23/01/13
|
|
||||||
* @since 3.6.0
|
* @since 3.6.0
|
||||||
*
|
*
|
||||||
* @param array $field The ACF field.
|
* @param array $field The ACF field.
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
function render_field( $field ) {
|
public function render_field( $field ) {
|
||||||
|
|
||||||
// Change Field into a select.
|
// Change Field into a select.
|
||||||
$field['type'] = 'select';
|
$field['type'] = 'select';
|
||||||
$field['ui'] = 1;
|
$field['ui'] = 1;
|
||||||
$field['ajax'] = 1;
|
$field['ajax'] = 1;
|
||||||
$field['choices'] = array();
|
$field['choices'] = array();
|
||||||
$field['query_nonce'] = wp_create_nonce( 'acf/fields/user/query' . $field['key'] );
|
$field['nonce'] = wp_create_nonce( $field['key'] );
|
||||||
|
|
||||||
// Populate choices.
|
// Populate choices.
|
||||||
if ( $field['value'] ) {
|
if ( $field['value'] ) {
|
||||||
@@ -403,7 +401,10 @@ if ( ! class_exists( 'ACF_Field_User' ) ) :
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Verify that this is a legitimate request using a separate nonce from the main AJAX nonce.
|
// Verify that this is a legitimate request using a separate nonce from the main AJAX nonce.
|
||||||
if ( ! isset( $_REQUEST['user_query_nonce'] ) || ! wp_verify_nonce( sanitize_text_field( $_REQUEST['user_query_nonce'] ), 'acf/fields/user/query' . $query->field['key'] ) ) {
|
$nonce = acf_request_arg( 'nonce', '' );
|
||||||
|
$key = acf_request_arg( 'field_key', '' );
|
||||||
|
|
||||||
|
if ( ! acf_verify_ajax( $nonce, $key ) ) {
|
||||||
$query->send( new WP_Error( 'acf_invalid_request', __( 'Invalid request.', 'acf' ), array( 'status' => 404 ) ) );
|
$query->send( new WP_Error( 'acf_invalid_request', __( 'Invalid request.', 'acf' ), array( 'status' => 404 ) ) );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?php
|
||||||
|
// There are many ways to WordPress.
|
||||||
File diff suppressed because one or more lines are too long
Binary file not shown.
@@ -12,7 +12,7 @@
|
|||||||
# This file is distributed under the same license as Advanced Custom Fields.
|
# This file is distributed under the same license as Advanced Custom Fields.
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"PO-Revision-Date: 2024-06-04T13:24:02+00:00\n"
|
"PO-Revision-Date: 2024-06-27T14:24:00+00:00\n"
|
||||||
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
||||||
"Language: ar\n"
|
"Language: ar\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
Binary file not shown.
@@ -12,7 +12,7 @@
|
|||||||
# This file is distributed under the same license as Advanced Custom Fields.
|
# This file is distributed under the same license as Advanced Custom Fields.
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"PO-Revision-Date: 2024-06-04T13:24:02+00:00\n"
|
"PO-Revision-Date: 2024-06-27T14:24:00+00:00\n"
|
||||||
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
||||||
"Language: bg_BG\n"
|
"Language: bg_BG\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
Binary file not shown.
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
Binary file not shown.
@@ -12,7 +12,7 @@
|
|||||||
# This file is distributed under the same license as Advanced Custom Fields.
|
# This file is distributed under the same license as Advanced Custom Fields.
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"PO-Revision-Date: 2024-06-04T13:24:02+00:00\n"
|
"PO-Revision-Date: 2024-06-27T14:24:00+00:00\n"
|
||||||
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
"Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
|
||||||
"Language: de_CH\n"
|
"Language: de_CH\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user