本文整理汇总了PHP中ot_import_xml函数的典型用法代码示例。如果您正苦于以下问题:PHP ot_import_xml函数的具体用法?PHP ot_import_xml怎么用?PHP ot_import_xml使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了ot_import_xml函数的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: ot_import
function ot_import()
{
/* check and verify import xml nonce */
if (isset($_POST['import_xml_nonce']) && wp_verify_nonce($_POST['import_xml_nonce'], 'import_xml_form')) {
/* import input value */
$file = isset($_POST['import_xml']) ? esc_url($_POST['import_xml']) : '';
/* validate xml file */
if (preg_match("/(.xml)\$/i", $file) && class_exists('SimpleXMLElement')) {
$settings = ot_import_xml($file);
}
/* default message */
$message = 'failed';
/* cleanup, save, & show success message */
if (isset($settings) && !empty($settings)) {
/* delete file */
if ($file) {
global $wpdb;
$attachmentid = $wpdb->get_var("SELECT ID FROM {$wpdb->posts} WHERE guid='{$file}'");
wp_delete_attachment($attachmentid, true);
}
/* update settings */
update_option(ot_settings_id(), $settings);
/* set message */
$message = 'success';
}
/* redirect */
wp_redirect(add_query_arg(array('action' => 'import-xml', 'message' => $message), $_POST['_wp_http_referer']));
exit;
}
/* check and verify import settings nonce */
if (isset($_POST['import_settings_nonce']) && wp_verify_nonce($_POST['import_settings_nonce'], 'import_settings_form')) {
/* textarea value */
$textarea = isset($_POST['import_settings']) ? unserialize(ot_decode($_POST['import_settings'])) : '';
/* default message */
$message = 'failed';
/* is array: save & show success message */
if (is_array($textarea)) {
update_option(ot_settings_id(), $textarea);
$message = 'success';
}
/* redirect */
wp_redirect(add_query_arg(array('action' => 'import-settings', 'message' => $message), $_POST['_wp_http_referer']));
exit;
}
/* check and verify import theme options data nonce */
if (isset($_POST['import_data_nonce']) && wp_verify_nonce($_POST['import_data_nonce'], 'import_data_form')) {
/* default message */
$message = 'failed';
/* textarea value */
$options = isset($_POST['import_data']) ? unserialize(ot_decode($_POST['import_data'])) : '';
/* get settings array */
$settings = get_option(ot_settings_id());
/* has options */
if (is_array($options)) {
/* validate options */
if (is_array($settings)) {
foreach ($settings['settings'] as $setting) {
if (isset($options[$setting['id']])) {
$content = ot_stripslashes($options[$setting['id']]);
$options[$setting['id']] = ot_validate_setting($content, $setting['type'], $setting['id']);
}
}
}
/* execute the action hook and pass the theme options to it */
do_action('ot_before_theme_options_save', $options);
/* update the option tree array */
update_option(ot_options_id(), $options);
$message = 'success';
}
/* redirect accordingly */
wp_redirect(add_query_arg(array('action' => 'import-data', 'message' => $message), $_POST['_wp_http_referer']));
exit;
}
/* check and verify import layouts nonce */
if (isset($_POST['import_layouts_nonce']) && wp_verify_nonce($_POST['import_layouts_nonce'], 'import_layouts_form')) {
/* default message */
$message = 'failed';
/* textarea value */
$layouts = isset($_POST['import_layouts']) ? unserialize(ot_decode($_POST['import_layouts'])) : '';
/* get settings array */
$settings = get_option(ot_settings_id());
/* has layouts */
if (is_array($layouts)) {
/* validate options */
if (is_array($settings)) {
foreach ($layouts as $key => $value) {
if ($key == 'active_layout') {
continue;
}
$options = unserialize(ot_decode($value));
foreach ($settings['settings'] as $setting) {
if (isset($options[$setting['id']])) {
$content = ot_stripslashes($options[$setting['id']]);
$options[$setting['id']] = ot_validate_setting($content, $setting['type'], $setting['id']);
}
}
$layouts[$key] = ot_encode(serialize($options));
}
}
/* update the option tree array */
//.........这里部分代码省略.........
示例2: compat_ot_import_from_files
function compat_ot_import_from_files()
{
/* file path & name without extention */
$ot_xml = '/option-tree/theme-options.xml';
$ot_data = '/option-tree/theme-options.txt';
$ot_layout = '/option-tree/layouts.txt';
/* XML file path - child theme first then parent */
if (is_readable(get_stylesheet_directory() . $ot_xml)) {
$xml_file = get_stylesheet_directory_uri() . $ot_xml;
} else {
if (is_readable(get_template_directory() . $ot_xml)) {
$xml_file = get_template_directory_uri() . $ot_xml;
}
}
/* Data file path - child theme first then parent */
if (is_readable(get_stylesheet_directory() . $ot_data)) {
$data_file = get_stylesheet_directory_uri() . $ot_data;
} else {
if (is_readable(get_template_directory() . $ot_data)) {
$data_file = get_template_directory_uri() . $ot_data;
}
}
/* Layout file path - child theme first then parent */
if (is_readable(get_stylesheet_directory() . $ot_layout)) {
$layout_file = get_stylesheet_directory_uri() . $ot_layout;
} else {
if (is_readable(get_template_directory() . $ot_layout)) {
$layout_file = get_template_directory_uri() . $ot_layout;
}
}
/* check for files */
$has_xml = isset($xml_file) ? true : false;
$has_data = isset($data_file) ? true : false;
$has_layout = isset($layout_file) ? true : false;
/* auto import XML file */
if ($has_xml == true && !get_option('option_tree_settings') && class_exists('SimpleXMLElement')) {
$settings = ot_import_xml($xml_file);
if (isset($settings) && !empty($settings)) {
update_option('option_tree_settings', $settings);
}
}
/* auto import Data file */
if ($has_data == true && !get_option('option_tree')) {
$get_data = wp_remote_get($data_file);
if (is_wp_error($get_data)) {
return false;
}
$rawdata = isset($get_data['body']) ? $get_data['body'] : '';
$options = unserialize(ot_decode($rawdata));
/* get settings array */
$settings = get_option('option_tree_settings');
/* has options */
if (is_array($options)) {
/* validate options */
if (is_array($settings)) {
foreach ($settings['settings'] as $setting) {
if (isset($options[$setting['id']])) {
$content = ot_stripslashes($options[$setting['id']]);
$options[$setting['id']] = ot_validate_setting($content, $setting['type'], $setting['id']);
}
}
}
/* update the option tree array */
update_option('option_tree', $options);
}
}
/* auto import Layout file */
if ($has_layout == true && !get_option('option_tree_layouts')) {
$get_data = wp_remote_get($data_file);
if (is_wp_error($get_data)) {
return false;
}
$rawdata = isset($get_data['body']) ? $get_data['body'] : '';
$layouts = unserialize(ot_decode($rawdata));
/* get settings array */
$settings = get_option('option_tree_settings');
/* has layouts */
if (is_array($layouts)) {
/* validate options */
if (is_array($settings)) {
foreach ($layouts as $key => $value) {
if ($key == 'active_layout') {
continue;
}
$options = unserialize(ot_decode($value));
foreach ($settings['settings'] as $setting) {
if (isset($options[$setting['id']])) {
$content = ot_stripslashes($options[$setting['id']]);
$options[$setting['id']] = ot_validate_setting($content, $setting['type'], $setting['id']);
}
}
$layouts[$key] = ot_encode(serialize($options));
}
}
/* update the option tree array */
if (isset($layouts['active_layout'])) {
update_option('option_tree', unserialize(ot_decode($layouts[$layouts['active_layout']])));
}
/* update the option tree layouts array */
update_option('option_tree_layouts', $layouts);
//.........这里部分代码省略.........