本文整理汇总了PHP中wpcf_admin_fields_get_available_types函数的典型用法代码示例。如果您正苦于以下问题:PHP wpcf_admin_fields_get_available_types函数的具体用法?PHP wpcf_admin_fields_get_available_types怎么用?PHP wpcf_admin_fields_get_available_types使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了wpcf_admin_fields_get_available_types函数的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: wpcf_admin_custom_fields_control_change_type_dropdown
/**
* Change type dropdown.
*
* @return array Form array
*/
function wpcf_admin_custom_fields_control_change_type_dropdown()
{
$options = array();
$types = wpcf_admin_fields_get_available_types();
foreach ($types as $type => $type_data) {
$options[$type_data['title']] = $type;
}
return array('#type' => 'radios', '#name' => 'type', '#options' => $options, '#default_value' => 'none', '#inline' => true);
}
示例2: prepare_items
function prepare_items()
{
$time = time();
global $wpdb;
$wpcf_per_page = 15;
$this->wpcf_groups = wpcf_admin_fields_get_groups();
$this->wpcf_field_types = wpcf_admin_fields_get_available_types();
// Get ours and enabled
$cf_types = wpcf_admin_fields_get_fields(true, true);
foreach ($cf_types as $cf_id => $cf) {
$groups_temp = wpcf_admin_fields_get_groups_by_field($cf['id']);
$output_temp = array();
foreach ($groups_temp as $group_id_temp => $group_temp) {
$output_temp[$group_temp['id']] = $group_temp['name'];
}
if (empty($output_temp)) {
$output_temp[] = __('None', 'wpcf');
}
$cf_types[$cf_id]['groups_txt'] = implode(', ', $output_temp);
$cf_types[$cf_id]['groups_ids'] = $groups_temp;
}
// Get others (cache this result?)
$cf_other = $wpdb->get_results("\n\t\tSELECT meta_id, meta_key\n\t\tFROM {$wpdb->postmeta}\n\t\tGROUP BY meta_key\n\t\tHAVING meta_key NOT LIKE '\\_%'\n\t\tORDER BY meta_key");
$output = '';
// Clean from ours
foreach ($cf_other as $type_id => $type_data) {
if (strpos($type_data->meta_key, WPCF_META_PREFIX) !== false) {
$field_temp = wpcf_admin_fields_get_field(str_replace(WPCF_META_PREFIX, '', $type_data->meta_key));
if (!empty($field_temp)) {
if (!empty($field_temp['data']['disabled'])) {
$cf_types[$field_temp['id']] = array('id' => $field_temp['id'], 'slug' => $type_data->meta_key, 'name' => $type_data->meta_key, 'type' => 0, 'groups_txt' => __('None', 'wpcf'));
} else {
unset($cf_other[$type_id]);
}
} else {
if (wpcf_types_cf_under_control('check_exists', $type_data->meta_key)) {
unset($cf_other[$type_id]);
} else {
$cf_types[$type_data->meta_key] = array('id' => $type_data->meta_key, 'slug' => $type_data->meta_key, 'name' => $type_data->meta_key, 'type' => 0, 'groups_txt' => __('None', 'wpcf'));
}
}
} else {
if (wpcf_types_cf_under_control('check_exists', $type_data->meta_key)) {
unset($cf_other[$type_id]);
} else {
$cf_types[$type_data->meta_key] = array('id' => $type_data->meta_key, 'slug' => $type_data->meta_key, 'name' => $type_data->meta_key, 'type' => 0, 'groups_txt' => __('None', 'wpcf'));
}
}
}
// Set some values
foreach ($cf_types as $cf_id_temp => $cf_temp) {
if (empty($cf_temp['type']) || !empty($cf_temp['data']['controlled'])) {
$cf_types[$cf_id_temp]['slug'] = $cf_temp['name'];
} else {
$cf_types[$cf_id_temp]['slug'] = wpcf_types_get_meta_prefix($cf_temp) . $cf_temp['slug'];
}
}
// Order
if (!empty($_REQUEST['orderby'])) {
if ($_REQUEST['orderby'] == 'c') {
ksort($cf_types, SORT_STRING);
if ($_REQUEST['order'] == 'desc') {
$cf_types = array_reverse($cf_types, true);
}
} else {
$sort_matches = array('g' => 'groups_txt', 't' => 'slug', 'f' => 'type');
$sorted_keys = array();
$new_array = array();
foreach ($cf_types as $cf_id_temp => $cf_temp) {
$sorted_keys[$cf_temp['id']] = $cf_temp[$sort_matches[$_REQUEST['orderby']]];
}
asort($sorted_keys, SORT_STRING);
if ($_REQUEST['order'] == 'desc') {
$sorted_keys = array_reverse($sorted_keys, true);
}
foreach ($sorted_keys as $cf_id_temp => $groups_txt) {
$new_array[$cf_id_temp] = $cf_types[$cf_id_temp];
}
$cf_types = $new_array;
}
}
// Search
if (!empty($_REQUEST['s'])) {
$search_results = array();
foreach ($cf_types as $search_id => $search_field) {
if (strpos(strval($search_field['name']), strval(trim(stripslashes($_REQUEST['s'])))) !== false) {
$search_results[$search_id] = $cf_types[$search_id];
}
}
$cf_types = $search_results;
}
if (empty($_GET['display_all'])) {
$total_items = count($cf_types);
if ($total_items < $wpcf_per_page) {
$wpcf_per_page = $total_items;
}
if ($this->get_pagenum() == 1) {
$offset = 0;
} else {
$offset = ($this->get_pagenum() - 1) * $wpcf_per_page;
//.........这里部分代码省略.........
示例3: wpcf_fields_type_action
/**
* Loads type configuration file and calls action.
*
* @param type $type
* @param type $action
* @param type $args
*/
function wpcf_fields_type_action($type, $func = '', $args = array())
{
static $actions = array();
$func_in = $func;
$md5_args = md5(serialize($args));
if (!isset($actions[$type . '-' . $func_in . '-' . $md5_args])) {
$fields_registered = wpcf_admin_fields_get_available_types();
if (isset($fields_registered[$type]) && isset($fields_registered[$type]['path'])) {
$file = $fields_registered[$type]['path'];
} else {
if (defined('WPCF_INC_ABSPATH')) {
$file = WPCF_INC_ABSPATH . '/fields/' . $type . '.php';
} else {
$file = '';
}
}
$file_embedded = WPCF_EMBEDDED_INC_ABSPATH . '/fields/' . $type . '.php';
if (file_exists($file) || file_exists($file_embedded)) {
if (file_exists($file)) {
require_once $file;
}
if (file_exists($file_embedded)) {
require_once $file_embedded;
}
if (empty($func)) {
$func = 'wpcf_fields_' . $type;
} else {
$func = 'wpcf_fields_' . $type . '_' . $func;
}
if (function_exists($func)) {
$actions[$type . '-' . $func_in . '-' . $md5_args] = call_user_func($func, $args);
} else {
$actions[$type . '-' . $func_in . '-' . $md5_args] = false;
}
} else {
$actions[$type . '-' . $func_in . '-' . $md5_args] = false;
}
}
return $actions[$type . '-' . $func_in . '-' . $md5_args];
}
示例4: wpcf_admin_usermeta_form
/**
* Generates form data.
*/
function wpcf_admin_usermeta_form()
{
global $wpcf;
wpcf_admin_add_js_settings('wpcf_nonce_toggle_group', '\'' . wp_create_nonce('group_form_collapsed') . '\'');
wpcf_admin_add_js_settings('wpcf_nonce_toggle_fieldset', '\'' . wp_create_nonce('form_fieldset_toggle') . '\'');
$default = array();
global $wpcf_button_style;
global $wpcf_button_style30;
// If it's update, get data
$update = false;
if (isset($_REQUEST['group_id'])) {
$update = wpcf_admin_fields_get_group(intval($_REQUEST['group_id']), 'wp-types-user-group');
if (empty($update)) {
$update = false;
wpcf_admin_message(sprintf(__("Group with ID %d do not exist", 'wpcf'), intval($_REQUEST['group_id'])));
} else {
$update['fields'] = wpcf_admin_fields_get_fields_by_group($_REQUEST['group_id'], 'slug', false, true, false, 'wp-types-user-group', 'wpcf-usermeta');
$update['show_for'] = wpcf_admin_get_groups_showfor_by_group($_REQUEST['group_id']);
$update['admin_styles'] = wpcf_admin_get_groups_admin_styles_by_group($_REQUEST['group_id']);
}
}
$form = array();
$form['#form']['callback'] = array('wpcf_admin_save_usermeta_groups_submit');
// Form sidebars
$form['open-sidebar'] = array('#type' => 'markup', '#markup' => '<div class="wpcf-form-fields-align-right">');
// Set help icon
$form['help-icon'] = array('#type' => 'markup', '#markup' => '<div class="wpcf-admin-fields-help"><img src="' . WPCF_EMBEDDED_RELPATH . '/common/res/images/question.png" style="position:relative;top:2px;" /> <a href="http://wp-types.com/documentation/user-guides/using-custom-fields/" target="_blank">' . __('Usermeta help', 'wpcf') . '</a></div>');
$form['submit2'] = array('#type' => 'submit', '#name' => 'save', '#value' => __('Save', 'wpcf'), '#attributes' => array('class' => 'button-primary wpcf-disabled-on-submit'));
$form['fields'] = array('#type' => 'fieldset', '#title' => __('Available fields', 'wpcf'));
// Get field types
$fields_registered = wpcf_admin_fields_get_available_types();
foreach ($fields_registered as $filename => $data) {
$form['fields'][basename($filename, '.php')] = array('#type' => 'markup', '#markup' => '<a href="' . admin_url('admin-ajax.php' . '?action=wpcf_ajax&wpcf_action=fields_insert' . '&field=' . basename($filename, '.php') . '&page=wpcf-edit-usermeta') . '&_wpnonce=' . wp_create_nonce('fields_insert') . '" ' . 'class="wpcf-fields-add-ajax-link button-secondary">' . $data['title'] . '</a> ');
// Process JS
if (!empty($data['group_form_js'])) {
foreach ($data['group_form_js'] as $handle => $script) {
if (isset($script['inline'])) {
add_action('admin_footer', $script['inline']);
continue;
}
$deps = !empty($script['deps']) ? $script['deps'] : array();
$in_footer = !empty($script['in_footer']) ? $script['in_footer'] : false;
wp_register_script($handle, $script['src'], $deps, WPCF_VERSION, $in_footer);
wp_enqueue_script($handle);
}
}
// Process CSS
if (!empty($data['group_form_css'])) {
foreach ($data['group_form_css'] as $handle => $script) {
if (isset($script['src'])) {
$deps = !empty($script['deps']) ? $script['deps'] : array();
wp_enqueue_style($handle, $script['src'], $deps, WPCF_VERSION);
} else {
if (isset($script['inline'])) {
add_action('admin_head', $script['inline']);
}
}
}
}
}
// Get fields created by user
$fields = wpcf_admin_fields_get_fields(true, true, false, 'wpcf-usermeta');
if (!empty($fields)) {
$form['fields-existing'] = array('#type' => 'fieldset', '#title' => __('User created fields', 'wpcf'), '#id' => 'wpcf-form-groups-user-fields');
foreach ($fields as $key => $field) {
if (isset($update['fields']) && array_key_exists($key, $update['fields'])) {
continue;
}
if (!empty($field['data']['removed_from_history'])) {
continue;
}
$form['fields-existing'][$key] = array('#type' => 'markup', '#markup' => '<div id="wpcf-user-created-fields-wrapper-' . $field['id'] . '" style="float:left; margin-right: 10px;"><a href="' . admin_url('admin-ajax.php' . '?action=wpcf_ajax' . '&page=wpcf-edit' . '&wpcf_action=usermeta_insert_existing' . '&field=' . $field['id']) . '&_wpnonce=' . wp_create_nonce('usermeta_insert_existing') . '" ' . 'class="wpcf-fields-add-ajax-link button-secondary" onclick="jQuery(this).parent().fadeOut();" ' . 'data-slug="' . $field['id'] . '">' . htmlspecialchars(stripslashes($field['name'])) . '</a>' . '<a href="' . admin_url('admin-ajax.php' . '?action=wpcf_ajax' . '&wpcf_action=remove_from_history2' . '&field_id=' . $field['id']) . '&_wpnonce=' . wp_create_nonce('remove_from_history2') . '&wpcf_warning=' . sprintf(__('Are you sure that you want to remove field %s from history?', 'wpcf'), htmlspecialchars(stripslashes($field['name']))) . '&wpcf_ajax_update=wpcf-user-created-fields-wrapper-' . $field['id'] . '" title="' . sprintf(__('Remove field %s', 'wpcf'), htmlspecialchars(stripslashes($field['name']))) . '" class="wpcf-ajax-link"><img src="' . WPCF_RES_RELPATH . '/images/delete-2.png" style="postion:absolute;margin-top:5px;margin-left:-4px;" /></a></div>');
}
}
$form['close-sidebar'] = array('#type' => 'markup', '#markup' => '</div>');
// Group data
$form['open-main'] = array('#type' => 'markup', '#markup' => '<div id="wpcf-form-fields-main">');
$form['title'] = array('#type' => 'textfield', '#name' => 'wpcf[group][name]', '#id' => 'wpcf-group-name', '#value' => $update ? $update['name'] : __('Enter group title', 'wpcf'), '#inline' => true, '#attributes' => array('style' => 'width:100%;margin-bottom:10px;'), '#validate' => array('required' => array('value' => true)));
if (!$update) {
$form['title']['#attributes']['data-label'] = addcslashes(__('Enter group title', 'wpcf'), '"');
$form['title']['#attributes']['onfocus'] = 'if (jQuery(this).val() == jQuery(this).data(\'label\')) { jQuery(this).val(\'\'); }';
$form['title']['#attributes']['onblur'] = 'if (jQuery(this).val() == \'\') { jQuery(this).val(jQuery(this).data(\'label\')) }';
}
$form['description'] = array('#type' => 'textarea', '#id' => 'wpcf-group-description', '#name' => 'wpcf[group][description]', '#value' => $update ? $update['description'] : __('Enter a description for this group', 'wpcf'));
if (!$update) {
$form['description']['#attributes']['data-label'] = addcslashes(__('Enter a description for this group', 'wpcf'), '"');
$form['description']['#attributes']['onfocus'] = 'if (jQuery(this).val() == jQuery(this).data(\'label\')) { jQuery(this).val(\'\'); }';
$form['description']['#attributes']['onblur'] = 'if (jQuery(this).val() == \'\') { jQuery(this).val(jQuery(this).data(\'label\')) }';
}
// Show Fields for
global $wp_roles;
$options = array();
$users_currently_supported = array();
$form_types = array();
foreach ($wp_roles->role_names as $role => $name) {
$options[$role]['#name'] = 'wpcf[group][supports][' . $role . ']';
$options[$role]['#title'] = ucwords($role);
//.........这里部分代码省略.........
示例5: wpcf_admin_migration_form
/**
* Migration form.
*
* @return array
*/
function wpcf_admin_migration_form()
{
global $wpdb;
$wpcf_types = get_option('wpcf-custom-types', array());
$wpcf_taxonomies = get_option('wpcf-custom-taxonomies', array());
$wpcf_types_defaults = wpcf_custom_types_default();
$wpcf_taxonomies_defaults = wpcf_custom_taxonomies_default();
$form = array();
$form['#form']['callback'] = 'wpcf_admin_migration_form_submit';
$cfui_types = get_option('cpt_custom_post_types', array());
$cfui_types_migrated = array();
$cfui_taxonomies = get_option('cpt_custom_tax_types', array());
$cfui_tax_migrated = array();
if (!empty($cfui_types)) {
$form['types_title'] = array('#type' => 'markup', '#markup' => '<h3>' . __('Custom Types UI Post Types') . '</h3>');
foreach ($cfui_types as $key => $cfui_type) {
$exists = array_key_exists(sanitize_title($cfui_type['name']), $wpcf_types);
if ($exists) {
$attributes = array('readonly' => 'readonly', 'disabled' => 'disabled');
// wpcf_admin_message(sprintf(__("Custom Post Type %s will not be imported because post type with same name exist in Types",
// 'wpcf'), $cfui_type['label']), 'error');
$add = __('(exists)', 'wpcf');
} else {
$attributes = array();
$add = '';
}
$slug = $id = sanitize_title($cfui_type['name']);
$form['types-' . $slug] = array('#type' => 'checkbox', '#name' => 'cfui[types][]', '#value' => $slug, '#title' => !empty($cfui_type['label']) ? $cfui_type['label'] . ' ' . $add : $slug . ' ' . $add, '#inline' => true, '#after' => ' ', '#default_value' => $exists ? 0 : 1, '#attributes' => $attributes);
}
}
if (!empty($cfui_taxonomies)) {
$form['tax_titles'] = array('#type' => 'markup', '#markup' => '<h3>' . __('Custom Types UI Taxonomies') . '</h3>');
foreach ($cfui_taxonomies as $key => $cfui_tax) {
$title = !empty($cfui_tax['label']) ? $cfui_tax['label'] : $slug;
$exists = array_key_exists(sanitize_title($cfui_tax['name']), $wpcf_taxonomies);
if ($exists) {
$attributes = array('readonly' => 'readonly', 'disabled' => 'disabled');
// wpcf_admin_message(sprintf(__("Custom Taxonomy %s will not be imported because taxonomy with same name exist in Types",
// 'wpcf'), $title), 'error');
$add = __('(exists)', 'wpcf');
} else {
$attributes = array();
$add = '';
}
$slug = $id = sanitize_title($cfui_tax['name']);
$form['types-' . $slug] = array('#type' => 'checkbox', '#name' => 'cfui[tax][]', '#value' => $slug, '#title' => $title . ' ' . $add, '#inline' => true, '#after' => ' ', '#default_value' => $exists ? 0 : 1, '#attributes' => $attributes);
}
}
if (!empty($cfui_types) || !empty($cfui_taxonomies)) {
$form['deactivate-cfui'] = array('#type' => 'checkbox', '#name' => 'deactivate-cfui', '#before' => '<br /><br />', '#default_value' => 1, '#title' => __('Disable Custom Types UI after importing the configuration (leave this checked to avoid defining custom types twice)', 'wpcf'));
}
// ACF
$acf_groups = get_posts('post_type=acf&status=publish&numberposts=-1');
if (!empty($acf_groups)) {
$wpcf_types = wpcf_admin_fields_get_available_types();
$wpcf_types_options = array();
foreach ($wpcf_types as $type => $data) {
$wpcf_types_options[$type] = array('#title' => $data['title'], '#value' => $type);
}
$acf_types = array('text' => 'textfield', 'textarea' => 'textarea', 'wysiwyg' => 'wysiwyg', 'image' => 'image', 'file' => 'file', 'select' => 'select', 'checkbox' => 'checkbox', 'radio' => 'radio', 'true_false' => 'radio', 'page_link' => 'textfield', 'post_object' => false, 'relationship' => 'textfield', 'date_picker' => 'date', 'color_picker' => false, 'repeater' => false);
if (!empty($acf_groups)) {
$form['acf_title'] = array('#type' => 'markup', '#markup' => '<h3>' . __('Advanced Custom Fields') . '</h3>');
}
foreach ($acf_groups as $acf_key => $acf_post) {
$group_id = $wpdb->get_var($wpdb->prepare("SELECT ID FROM {$wpdb->posts} WHERE post_title = %s AND post_type='wp-types-group'", $acf_post->post_title));
if (empty($group_id)) {
$add = __('Group will be created', 'wpcf');
} else {
$add = __('Group will be updated', 'wpcf');
}
$form[$acf_post->ID . '_post'] = array('#type' => 'checkbox', '#title' => $acf_post->post_title . ' (' . $add . ')', '#value' => $acf_post->ID, '#default_value' => 1, '#name' => 'acf_posts[migrate_groups][]', '#inline' => true, '#after' => '<br />', '#attributes' => array('onclick' => 'if (jQuery(this).is(\':checked\')) { jQuery(this).parent().find(\'table .checkbox\').attr(\'checked\',\'checked\'); } else { jQuery(this).parent().find(\'table .checkbox\').removeAttr(\'checked\'); }'));
$form[$acf_post->ID . '_post_title'] = array('#type' => 'hidden', '#name' => 'acf_posts[' . $acf_post->ID . '][post_title]', '#value' => $acf_post->post_title);
$form[$acf_post->ID . '_post_content'] = array('#type' => 'hidden', '#name' => 'acf_posts[' . $acf_post->ID . '][post_content]', '#value' => addslashes($acf_post->post_content));
$form[$acf_post->ID . '_fields_table'] = array('#type' => 'markup', '#markup' => '<table style="margin-bottom: 40px;">');
$metas = get_post_custom($acf_post->ID);
$acf_fields = array();
foreach ($metas as $meta_name => $meta) {
if (strpos($meta_name, 'field_') === 0) {
$data = unserialize($meta[0]);
$exists = wpcf_types_cf_under_control('check_exists', $data['name']);
$outsider = wpcf_types_cf_under_control('check_outsider', $data['name']);
$supported = !empty($acf_types[$data['type']]);
if (!$supported) {
// wpcf_admin_message(sprintf(__("Field %s will not be imported because field type is not currently supported by Types",
// 'wpcf'), $data['label']),
// 'error');
$attributes = array('style' => 'margin-left: 20px;', 'readonly' => 'readonly', 'disabled' => 'disabled');
$add = __('Field conversion not supported by Types', 'wpcf');
} else {
if ($exists && !$outsider) {
$attributes = array('style' => 'margin-left: 20px;', 'readonly' => 'readonly', 'disabled' => 'disabled');
$add = __('Field with same name is already controlled by Types', 'wpcf');
} else {
if ($exists && $outsider) {
$attributes = array('style' => 'margin-left: 20px;');
//.........这里部分代码省略.........
示例6: wpcf_admin_fields_form
/**
* Generates form data.
*/
function wpcf_admin_fields_form()
{
wpcf_admin_add_js_settings('wpcf_nonce_toggle_group', '\'' . wp_create_nonce('group_form_collapsed') . '\'');
wpcf_admin_add_js_settings('wpcf_nonce_toggle_fieldset', '\'' . wp_create_nonce('form_fieldset_toggle') . '\'');
$default = array();
// If it's update, get data
$update = false;
if (isset($_REQUEST['group_id'])) {
$update = wpcf_admin_fields_get_group(intval($_REQUEST['group_id']));
if (empty($update)) {
$update = false;
wpcf_admin_message(sprintf(__("Group with ID %d do not exist", 'wpcf'), intval($_REQUEST['group_id'])));
} else {
$update['fields'] = wpcf_admin_fields_get_fields_by_group($_REQUEST['group_id']);
$update['post_types'] = wpcf_admin_get_post_types_by_group($_REQUEST['group_id']);
$update['taxonomies'] = wpcf_admin_get_taxonomies_by_group($_REQUEST['group_id']);
$update['templates'] = wpcf_admin_get_templates_by_group($_REQUEST['group_id']);
}
}
$form = array();
$form['#form']['callback'] = array('wpcf_admin_save_fields_groups_submit');
// Form sidebars
$form['open-sidebar'] = array('#type' => 'markup', '#markup' => '<div class="wpcf-form-fields-align-right">');
$form['submit2'] = array('#type' => 'submit', '#name' => 'save', '#value' => __('Save', 'wpcf'), '#attributes' => array('class' => 'button-primary'));
$form['fields'] = array('#type' => 'fieldset', '#title' => __('Available fields', 'wpcf'));
// Get field types
$fields_registered = wpcf_admin_fields_get_available_types();
// foreach (glob(WPCF_EMBEDDED_INC_ABSPATH . '/fields/*.php') as $filename) {
foreach ($fields_registered as $filename => $data) {
// require_once $filename;
// if (function_exists('wpcf_fields_' . basename($filename, '.php'))) {
// $data = call_user_func('wpcf_fields_' . basename($filename, '.php'));
// if (isset($data['wp_version']) && wpcf_compare_wp_version($data['wp_version'],
// '<')) {
// continue;
// }
$form['fields'][basename($filename, '.php')] = array('#type' => 'markup', '#markup' => '<a href="' . admin_url('admin-ajax.php' . '?action=wpcf_ajax&wpcf_action=fields_insert' . '&field=' . basename($filename, '.php')) . '&_wpnonce=' . wp_create_nonce('fields_insert') . '" ' . 'class="wpcf-fields-add-ajax-link button-secondary">' . $data['title'] . '</a> ');
// Process JS
if (!empty($data['group_form_js'])) {
foreach ($data['group_form_js'] as $handle => $script) {
if (isset($script['inline'])) {
add_action('admin_footer', $script['inline']);
continue;
}
$deps = !empty($script['deps']) ? $script['deps'] : array();
$in_footer = !empty($script['in_footer']) ? $script['in_footer'] : false;
wp_register_script($handle, $script['src'], $deps, WPCF_VERSION, $in_footer);
wp_enqueue_script($handle);
}
}
// Process CSS
if (!empty($data['group_form_css'])) {
foreach ($data['group_form_css'] as $handle => $script) {
if (isset($script['src'])) {
$deps = !empty($script['deps']) ? $script['deps'] : array();
wp_enqueue_style($handle, $script['src'], $deps, WPCF_VERSION);
} else {
if (isset($script['inline'])) {
add_action('admin_head', $script['inline']);
}
}
}
}
// }
}
// Get fields created by user
$fields = wpcf_admin_fields_get_fields(true, true);
if (!empty($fields)) {
$form['fields-existing'] = array('#type' => 'fieldset', '#title' => __('User created fields', 'wpcf'), '#id' => 'wpcf-form-groups-user-fields');
foreach ($fields as $key => $field) {
if (isset($update['fields']) && array_key_exists($key, $update['fields'])) {
continue;
}
if (!empty($field['data']['removed_from_history'])) {
continue;
}
$form['fields-existing'][$key] = array('#type' => 'markup', '#markup' => '<div id="wpcf-user-created-fields-wrapper-' . $field['id'] . '" style="float:left; margin-right: 10px;"><a href="' . admin_url('admin-ajax.php' . '?action=wpcf_ajax' . '&wpcf_action=fields_insert_existing' . '&field=' . $field['id']) . '&_wpnonce=' . wp_create_nonce('fields_insert_existing') . '" ' . 'class="wpcf-fields-add-ajax-link button-secondary" onclick="jQuery(this).parent().fadeOut();">' . htmlspecialchars(stripslashes($field['name'])) . '</a>' . '<a href="' . admin_url('admin-ajax.php' . '?action=wpcf_ajax' . '&wpcf_action=remove_from_history' . '&field_id=' . $field['id']) . '&_wpnonce=' . wp_create_nonce('remove_from_history') . '&wpcf_warning=' . sprintf(__('Are you sure that you want to remove field %s from history?', 'wpcf'), htmlspecialchars(stripslashes($field['name']))) . '&wpcf_ajax_update=wpcf-user-created-fields-wrapper-' . $field['id'] . '" title="' . sprintf(__('Remove field %s', 'wpcf'), htmlspecialchars(stripslashes($field['name']))) . '" class="wpcf-ajax-link"><img src="' . WPCF_RES_RELPATH . '/images/delete-2.png" style="postion:absolute;margin-top:5px;margin-left:-4px;" /></a></div>');
}
}
$form['close-sidebar'] = array('#type' => 'markup', '#markup' => '</div>');
// Group data
$form['open-main'] = array('#type' => 'markup', '#markup' => '<div id="wpcf-form-fields-main">');
$form['title'] = array('#type' => 'textfield', '#name' => 'wpcf[group][name]', '#id' => 'wpcf-group-name', '#value' => $update ? $update['name'] : __('Enter group title', 'wpcf'), '#inline' => true, '#attributes' => array('style' => 'width:100%;margin-bottom:10px;'), '#validate' => array('required' => array('value' => true)));
if (!$update) {
$form['title']['#attributes']['onfocus'] = 'if (jQuery(this).val() == \'' . __('Enter group title', 'wpcf') . '\') { jQuery(this).val(\'\'); }';
$form['title']['#attributes']['onblur'] = 'if (jQuery(this).val() == \'\') { jQuery(this).val(\'' . __('Enter group title', 'wpcf') . '\') }';
}
$form['description'] = array('#type' => 'textarea', '#id' => 'wpcf-group-description', '#name' => 'wpcf[group][description]', '#value' => $update ? $update['description'] : __('Enter a description for this group', 'wpcf'));
if (!$update) {
$form['description']['#attributes']['onfocus'] = 'if (jQuery(this).val() == \'' . __('Enter a description for this group', 'wpcf') . '\') { jQuery(this).val(\'\'); }';
$form['description']['#attributes']['onblur'] = 'if (jQuery(this).val() == \'\') { jQuery(this).val(\'' . __('Enter a description for this group', 'wpcf') . '\') }';
}
// Support post types and taxonomies
$post_types = get_post_types('', 'objects');
$options = array();
$post_types_currently_supported = array();
$form_types = array();
//.........这里部分代码省略.........
示例7: get_fields_list
/**
* Summary.
*
* Description.
*
* @since x.x.x
* @access (for functions: only use if private)
*
* @see Function/method/class relied on
* @link URL
* @global type $varname Description.
* @global type $varname Description.
*
* @param type $var Description.
* @param type $var Optional. Description.
* @return type Description.
*/
protected function get_fields_list($form = array())
{
$fields_registered = wpcf_admin_fields_get_available_types();
foreach ($fields_registered as $filename => $data) {
$value = '';
$value = $this->render_field_icon($data);
$value .= $data['title'];
$form[$filename] = array('#type' => 'button', '#name' => basename($filename, '.php'), '#value' => $value, '#attributes' => array('data-wpcf-field-type' => basename($filename, '.php'), 'class' => 'js-wpcf-field-button-insert', 'data-wpcf-type' => $this->type));
}
return $form;
}
示例8: wpcf_admin_fields_form
/**
* Generates form data.
*/
function wpcf_admin_fields_form()
{
wpcf_admin_add_js_settings('wpcf_nonce_toggle_group', '\'' . wp_create_nonce('group_form_collapsed') . '\'');
wpcf_admin_add_js_settings('wpcf_nonce_toggle_fieldset', '\'' . wp_create_nonce('form_fieldset_toggle') . '\'');
$default = array();
global $wpcf_button_style;
global $wpcf_button_style30;
global $wpcf;
// If it's update, get data
$update = false;
if (isset($_REQUEST['group_id'])) {
$update = wpcf_admin_fields_get_group(intval($_REQUEST['group_id']));
if (empty($update)) {
$update = false;
wpcf_admin_message(sprintf(__("Group with ID %d do not exist", 'wpcf'), intval($_REQUEST['group_id'])));
} else {
$update['fields'] = wpcf_admin_fields_get_fields_by_group(sanitize_text_field($_REQUEST['group_id']), 'slug', false, true);
$update['post_types'] = wpcf_admin_get_post_types_by_group(sanitize_text_field($_REQUEST['group_id']));
$update['taxonomies'] = wpcf_admin_get_taxonomies_by_group(sanitize_text_field($_REQUEST['group_id']));
$update['templates'] = wpcf_admin_get_templates_by_group(sanitize_text_field($_REQUEST['group_id']));
$update['admin_styles'] = wpcf_admin_get_groups_admin_styles_by_group(sanitize_text_field($_REQUEST['group_id']));
}
}
$form = array();
$form['#form']['callback'] = array('wpcf_admin_save_fields_groups_submit');
// Form sidebars
$form['open-sidebar'] = array('#type' => 'markup', '#markup' => '<div class="wpcf-form-fields-align-right">');
// Set help icon
$form['help-icon'] = array('#type' => 'markup', '#markup' => '<div class="wpcf-admin-fields-help"><img src="' . WPCF_EMBEDDED_RELPATH . '/common/res/images/question.png" style="position:relative;top:2px;" /> <a href="http://wp-types.com/documentation/user-guides/using-custom-fields/?utm_source=typesplugin&utm_medium=help&utm_term=fields-help&utm_content=fields-editor&utm_campaign=types" target="_blank">' . __('Custom fields help', 'wpcf') . '</a></div>');
$form['submit2'] = array('#type' => 'submit', '#name' => 'save', '#value' => __('Save', 'wpcf'), '#attributes' => array('class' => 'button-primary wpcf-disabled-on-submit'));
$form['fields'] = array('#type' => 'fieldset', '#title' => __('Available fields', 'wpcf'));
// Get field types
$fields_registered = wpcf_admin_fields_get_available_types();
foreach ($fields_registered as $filename => $data) {
$form['fields'][basename($filename, '.php')] = array('#type' => 'markup', '#markup' => '<a href="' . admin_url('admin-ajax.php' . '?action=wpcf_ajax&wpcf_action=fields_insert' . '&field=' . basename($filename, '.php') . '&page=wpcf-edit') . '&_wpnonce=' . wp_create_nonce('fields_insert') . '" ' . 'class="wpcf-fields-add-ajax-link button-secondary">' . $data['title'] . '</a> ');
// Process JS
if (!empty($data['group_form_js'])) {
foreach ($data['group_form_js'] as $handle => $script) {
if (isset($script['inline'])) {
add_action('admin_footer', $script['inline']);
continue;
}
$deps = !empty($script['deps']) ? $script['deps'] : array();
$in_footer = !empty($script['in_footer']) ? $script['in_footer'] : false;
wp_register_script($handle, $script['src'], $deps, WPCF_VERSION, $in_footer);
wp_enqueue_script($handle);
}
}
// Process CSS
if (!empty($data['group_form_css'])) {
foreach ($data['group_form_css'] as $handle => $script) {
if (isset($script['src'])) {
$deps = !empty($script['deps']) ? $script['deps'] : array();
wp_enqueue_style($handle, $script['src'], $deps, WPCF_VERSION);
} else {
if (isset($script['inline'])) {
add_action('admin_head', $script['inline']);
}
}
}
}
}
// Get fields created by user
$fields = wpcf_admin_fields_get_fields(true, true);
if (!empty($fields)) {
$form['fields-existing'] = array('#type' => 'fieldset', '#title' => __('User created fields', 'wpcf'), '#id' => 'wpcf-form-groups-user-fields');
foreach ($fields as $key => $field) {
if (isset($update['fields']) && array_key_exists($key, $update['fields'])) {
continue;
}
if (!empty($field['data']['removed_from_history'])) {
continue;
}
$form['fields-existing'][$key] = array('#type' => 'markup', '#markup' => '<div id="wpcf-user-created-fields-wrapper-' . $field['id'] . '" style="float:left; margin-right: 10px;"><a href="' . admin_url('admin-ajax.php' . '?action=wpcf_ajax' . '&wpcf_action=fields_insert_existing' . '&page=wpcf-edit' . '&field=' . $field['id']) . '&_wpnonce=' . wp_create_nonce('fields_insert_existing') . '" ' . 'class="wpcf-fields-add-ajax-link button-secondary" onclick="jQuery(this).parent().fadeOut();" ' . ' data-slug="' . $field['id'] . '">' . htmlspecialchars(stripslashes($field['name'])) . '</a>' . '<a href="' . admin_url('admin-ajax.php' . '?action=wpcf_ajax' . '&wpcf_action=remove_from_history' . '&field_id=' . $field['id']) . '&_wpnonce=' . wp_create_nonce('remove_from_history') . '&wpcf_warning=' . sprintf(__('Are you sure that you want to remove field %s from history?', 'wpcf'), htmlspecialchars(stripslashes($field['name']))) . '&wpcf_ajax_update=wpcf-user-created-fields-wrapper-' . $field['id'] . '" title="' . sprintf(__('Remove field %s', 'wpcf'), htmlspecialchars(stripslashes($field['name']))) . '" class="wpcf-ajax-link"><img src="' . WPCF_RES_RELPATH . '/images/delete-2.png" style="postion:absolute;margin-top:5px;margin-left:-4px;" /></a></div>');
}
}
$form['close-sidebar'] = array('#type' => 'markup', '#markup' => '</div>');
// Group data
$form['open-main'] = array('#type' => 'markup', '#markup' => '<div id="wpcf-form-fields-main">');
$form['title'] = array('#type' => 'textfield', '#name' => 'wpcf[group][name]', '#id' => 'wpcf-group-name', '#value' => $update ? $update['name'] : '', '#inline' => true, '#attributes' => array('style' => 'width:100%;margin-bottom:10px;', 'placeholder' => __('Enter group title', 'wpcf')), '#validate' => array('required' => array('value' => true)));
$form['description'] = array('#type' => 'textarea', '#id' => 'wpcf-group-description', '#name' => 'wpcf[group][description]', '#value' => $update ? $update['description'] : '', '#attributes' => array('placeholder' => __('Enter a description for this group', 'wpcf')));
/**
*
* FILTER BOX
* Since Types 1.2 we moved JS to /embedded/resources/js/custom-fields-form-filter.js
*
*/
// Support post types and taxonomies
$post_types = get_post_types('', 'objects');
$options = array();
$post_types_currently_supported = array();
$form_types = array();
foreach ($post_types as $post_type_slug => $post_type) {
if (in_array($post_type_slug, $wpcf->excluded_post_types) || !$post_type->show_ui) {
continue;
}
$options[$post_type_slug]['#name'] = 'wpcf[group][supports][' . $post_type_slug . ']';
//.........这里部分代码省略.........
示例9: wpcf_admin_fields_form
/**
* Generates form data.
*
* @deprecated Possibly deprecated, no usage found in Types. Possibly identical code in Types_Admin_Edit_Fields::get_field_form_data()
*/
function wpcf_admin_fields_form()
{
/**
* include common functions
*/
include_once dirname(__FILE__) . '/common-functions.php';
wpcf_admin_add_js_settings('wpcf_nonce_toggle_group', '\'' . wp_create_nonce('group_form_collapsed') . '\'');
wpcf_admin_add_js_settings('wpcf_nonce_toggle_fieldset', '\'' . wp_create_nonce('form_fieldset_toggle') . '\'');
$default = array();
global $wpcf_button_style;
global $wpcf_button_style30;
global $wpcf;
$form = array();
$form['#form']['callback'] = array('wpcf_admin_save_fields_groups_submit');
// Form sidebars
if ($current_user_can_edit) {
$form['open-sidebar'] = array('#type' => 'markup', '#markup' => '<div class="wpcf-form-fields-align-right">');
// Set help icon
$form['help-icon'] = array('#type' => 'markup', '#markup' => '<div class="wpcf-admin-fields-help"><img src="' . WPCF_EMBEDDED_TOOLSET_RELPATH . '/toolset-common/res/images/question.png" style="position:relative;top:2px;" /> <a href="' . Types_Helper_Url::get_url('using-post-fields', 'fields-editor', 'fields-help', Types_Helper_Url::UTM_MEDIUM_HELP) . '" target="_blank">' . __('Custom fields help', 'wpcf') . '</a></div>');
$form['submit2'] = array('#type' => 'submit', '#name' => 'save', '#value' => __('Save', 'wpcf'), '#attributes' => array('class' => 'button-primary wpcf-disabled-on-submit'));
$form['fields'] = array('#type' => 'fieldset', '#title' => __('Available fields', 'wpcf'));
// Get field types
$fields_registered = wpcf_admin_fields_get_available_types();
foreach ($fields_registered as $filename => $data) {
$form['fields'][basename($filename, '.php')] = array('#type' => 'markup', '#markup' => '<a href="' . admin_url('admin-ajax.php' . '?action=wpcf_ajax&wpcf_action=fields_insert' . '&field=' . basename($filename, '.php') . '&page=wpcf-edit') . '&_wpnonce=' . wp_create_nonce('fields_insert') . '" ' . 'class="wpcf-fields-add-ajax-link button-secondary">' . $data['title'] . '</a> ');
// Process JS
if (!empty($data['group_form_js'])) {
foreach ($data['group_form_js'] as $handle => $script) {
if (isset($script['inline'])) {
add_action('admin_footer', $script['inline']);
continue;
}
$deps = !empty($script['deps']) ? $script['deps'] : array();
$in_footer = !empty($script['in_footer']) ? $script['in_footer'] : false;
wp_register_script($handle, $script['src'], $deps, WPCF_VERSION, $in_footer);
wp_enqueue_script($handle);
}
}
// Process CSS
if (!empty($data['group_form_css'])) {
foreach ($data['group_form_css'] as $handle => $script) {
if (isset($script['src'])) {
$deps = !empty($script['deps']) ? $script['deps'] : array();
wp_enqueue_style($handle, $script['src'], $deps, WPCF_VERSION);
} else {
if (isset($script['inline'])) {
add_action('admin_head', $script['inline']);
}
}
}
}
}
// Get fields created by user
$fields = wpcf_admin_fields_get_fields(true, true);
if (!empty($fields)) {
$form['fields-existing'] = array('#type' => 'fieldset', '#title' => __('User created fields', 'wpcf'), '#id' => 'wpcf-form-groups-user-fields');
foreach ($fields as $key => $field) {
if (isset($update['fields']) && array_key_exists($key, $update['fields'])) {
continue;
}
if (!empty($field['data']['removed_from_history'])) {
continue;
}
$form['fields-existing'][$key] = array('#type' => 'markup', '#markup' => '<div id="wpcf-user-created-fields-wrapper-' . $field['id'] . '" style="float:left; margin-right: 10px;"><a href="' . admin_url('admin-ajax.php' . '?action=wpcf_ajax' . '&wpcf_action=fields_insert_existing' . '&page=wpcf-edit' . '&field=' . $field['id']) . '&_wpnonce=' . wp_create_nonce('fields_insert_existing') . '" ' . 'class="wpcf-fields-add-ajax-link button-secondary" onclick="jQuery(this).parent().fadeOut();" ' . ' data-slug="' . $field['id'] . '">' . htmlspecialchars(stripslashes($field['name'])) . '</a>' . '<a href="' . admin_url('admin-ajax.php' . '?action=wpcf_ajax' . '&wpcf_action=remove_from_history' . '&field_id=' . $field['id']) . '&_wpnonce=' . wp_create_nonce('remove_from_history') . '&wpcf_warning=' . sprintf(__('Are you sure that you want to remove field %s from history?', 'wpcf'), htmlspecialchars(stripslashes($field['name']))) . '&wpcf_ajax_update=wpcf-user-created-fields-wrapper-' . $field['id'] . '" title="' . sprintf(__('Remove field %s', 'wpcf'), htmlspecialchars(stripslashes($field['name']))) . '" class="wpcf-ajax-link"><img src="' . WPCF_RES_RELPATH . '/images/delete-2.png" style="postion:absolute;margin-top:5px;margin-left:-4px;" /></a></div>');
}
}
$form['close-sidebar'] = array('#type' => 'markup', '#markup' => '</div>');
}
// Group data
$form['open-main'] = array('#type' => 'markup', '#markup' => '<div id="wpcf-form-fields-main" class="wpcf-form-fields-main">');
/**
* Now starting form
*/
/** End admin Styles * */
// Group fields
$form['fields_title'] = array('#type' => 'markup', '#markup' => '<h2>' . __('Fields', 'wpcf') . '</h2>');
$show_under_title = true;
$form['ajax-response-open'] = array('#type' => 'markup', '#markup' => '<div id="wpcf-fields-sortable" class="ui-sortable">');
// If it's update, display existing fields
$existing_fields = array();
if ($update && isset($update['fields'])) {
foreach ($update['fields'] as $slug => $field) {
$field['submitted_key'] = $slug;
$field['group_id'] = $update['id'];
$form_field = wpcf_fields_get_field_form_data($field['type'], $field);
if (is_array($form_field)) {
$form['draggable-open-' . rand()] = array('#type' => 'markup', '#markup' => '<div class="ui-draggable">');
$form = $form + $form_field;
$form['draggable-close-' . rand()] = array('#type' => 'markup', '#markup' => '</div>');
}
$existing_fields[] = $slug;
$show_under_title = false;
}
}
// Any new fields submitted but failed? (Don't double it)
//.........这里部分代码省略.........
示例10: get_fields_types
function get_fields_types()
{
return wpcf_admin_fields_get_available_types();
}