qodeOptions->options ); $qode_options_proya = $qodeFramework->qodeOptions->options; } } function qode_theme_menu() { global $qodeFramework; init_qode_theme_options(); $page_hook_suffix = add_menu_page( 'Qode Options', // The value used to populate the browser's title bar when the menu page is active 'Qode Options', // The text of the menu in the administrator's sidebar 'administrator', // What roles are able to access the menu 'qode_theme_menu', // The ID used to bind submenu items to this menu 'qode_theme_display' // The callback function used to render this menu ); foreach ($qodeFramework->qodeOptions->adminPages as $key=>$value ) { $slug = ""; if (!empty($value->slug)) $slug = "_tab".$value->slug; $subpage_hook_suffix = add_submenu_page( 'qode_theme_menu', 'Qode Options - '.$value->title, // The value used to populate the browser's title bar when the menu page is active $value->title, // The text of the menu in the administrator's sidebar 'administrator', // What roles are able to access the menu 'qode_theme_menu'.$slug, // The ID used to bind submenu items to this menu 'qode_theme_display' // The callback function used to render this menu ); add_action('admin_print_scripts-'.$subpage_hook_suffix, 'enqueue_admin_scripts'); add_action('admin_print_styles-'.$subpage_hook_suffix, 'enqueue_admin_styles'); }; add_action('admin_print_scripts-'.$page_hook_suffix, 'enqueue_admin_scripts'); add_action('admin_print_styles-'.$page_hook_suffix, 'enqueue_admin_styles'); } add_action( 'admin_menu', 'qode_theme_menu' ); if(!function_exists('qode_add_theme_options_toolbar')) { /** * Adds a link to Qode Options in toolbar for easier access * @param $wp_admin_bar WP_Admin_Bar instance */ function qode_add_theme_options_toolbar($wp_admin_bar) { if(!is_admin()) { $args = array( 'id' => 'qode_theme_menu', 'title' => 'Qode Options', 'href' => admin_url('admin.php?page=qode_theme_menu'), 'parent' => 'site-name' ); $wp_admin_bar->add_node($args); } } add_action('admin_bar_menu', 'qode_add_theme_options_toolbar', 999); } function register_qode_theme_settings() { register_setting( 'qode_theme_menu', 'qode_options' ); } add_action('admin_init', 'register_qode_theme_settings'); function strafter($string, $substring) { $pos = strpos($string, $substring); if ($pos === false) return NULL; else return(substr($string, $pos+strlen($substring))); } function qode_get_admin_tab(){ return isset($_GET['page']) ? strafter($_GET['page'],'tab') : NULL; } function qodef_save_options() { global $qode_options_proya; global $qodeFramework; if(current_user_can('administrator')){ $_REQUEST = stripslashes_deep($_REQUEST); foreach ($qodeFramework->qodeOptions->options as $key => $value) { if (isset($_REQUEST[$key])) { $qode_options_proya[$key] = $_REQUEST[$key]; } } update_option('qode_options_proya', $qode_options_proya); do_action('qode_after_theme_option_save'); echo "Saved"; die(); } } add_action('wp_ajax_qodef_save_options', 'qodef_save_options'); function qode_theme_display() { global $qodeFramework; $tab = qode_get_admin_tab(); $active_page = $qodeFramework->qodeOptions->getAdminPageFromSlug($tab); if ($active_page == null) return; ?>
qodeOptions->adminPages as $key=>$page ) { if ($page->slug == $tab) { ?>
" id="">

title; ?>

slug == '_importexport') { ?>
render(); ?>
render(); ?>
You should save your changes
All your changes are successfully saved
  • Scroll To:
  • layout as $key=>$panel ) { ?>
  • title; ?>
qodeMetaBoxes->metaBoxes as $key=>$box ) { $hidden = false; if (!empty($box->hidden_property)){ foreach ($box->hidden_values as $value) { if (qodef_option_get_value($box->hidden_property)==$value) $hidden = true; } } add_meta_box( 'qodef-meta-box-'.$key, $box->title, 'qodef_render_meta_box', $box->scope, 'advanced', 'high', array( 'box' => $box) ); if ($hidden) { add_filter( 'postbox_classes_'.$box->scope.'_qodef-meta-box-'.$key, 'qode_meta_box_add_hidden_class' ); } } add_action('admin_enqueue_scripts', 'enqueue_meta_box_styles'); add_action('admin_enqueue_scripts', 'enqueue_meta_box_scripts'); } add_action('add_meta_boxes', 'qode_meta_box_add'); function qode_meta_box_save( $post_id, $post ) { global $qodeFramework; $postTypes = array( "page", "post", "portfolio_page", "testimonials", "slides", "carousels","masonry_gallery"); //add product post type into array if woocommerce is installed if(qode_is_woocommerce_installed()){ array_push($postTypes, "product"); } if ( !isset( $_POST[ '_wpnonce' ] )) return; if ( !current_user_can( 'edit_post', $post_id ) ) return; if ( ! in_array( $post->post_type, $postTypes ) ) return; foreach ($qodeFramework->qodeMetaBoxes->options as $key=>$box ) { if ( isset( $_POST[ $key ] ) && trim( $_POST[ $key ] !== '') ) { $value = $_POST[ $key ]; // Auto-paragraphs for any WYSIWYG update_post_meta( $post_id, $key, $value ); } else { delete_post_meta( $post_id, $key ); } } $portfolios = false; if (isset($_POST['optionLabel'])) { foreach ($_POST['optionLabel'] as $key => $value) { $portfolios_val[$key] = array('optionLabel'=>$value,'optionValue'=>$_POST['optionValue'][$key],'optionUrl'=>$_POST['optionUrl'][$key],'optionlabelordernumber'=>$_POST['optionlabelordernumber'][$key]); $portfolios = true; } } if ($portfolios) { update_post_meta( $post_id, 'qode_portfolios', $portfolios_val ); } else { delete_post_meta( $post_id, 'qode_portfolios' ); } $portfolio_images = false; if (isset($_POST['portfolioimg'])) { foreach ($_POST['portfolioimg'] as $key => $value) { $portfolio_images_val[$key] = array('portfolioimg'=>$_POST['portfolioimg'][$key],'portfoliotitle'=>$_POST['portfoliotitle'][$key],'portfolioimgordernumber'=>$_POST['portfolioimgordernumber'][$key], 'portfoliovideotype'=>$_POST['portfoliovideotype'][$key], 'portfoliovideoid'=>$_POST['portfoliovideoid'][$key], 'portfoliovideoimage'=>$_POST['portfoliovideoimage'][$key], 'portfoliovideowebm'=>$_POST['portfoliovideowebm'][$key], 'portfoliovideomp4'=>$_POST['portfoliovideomp4'][$key], 'portfoliovideoogv'=>$_POST['portfoliovideoogv'][$key], 'portfolioimgtype'=>$_POST['portfolioimgtype'][$key] ); $portfolio_images = true; } } if ($portfolio_images) { update_post_meta( $post_id, 'qode_portfolio_images', $portfolio_images_val ); } else { delete_post_meta( $post_id, 'qode_portfolio_images' ); } } add_action( 'save_post', 'qode_meta_box_save', 1, 2 ); function qodef_render_meta_box($post, $metabox) {?>
render(); ?>
'; echo '

'; echo wp_kses_post($message); if($is_dismisable) { echo ''.__('Dismiss this notice', 'qode').''; } echo '

'; echo ''; } } } if(!function_exists('qode_save_dismisable_notice')) { /** * Updates user meta with dismisable notice. Hooks to admin_init action * in order to check this on every page request in admin */ function qode_save_dismisable_notice() { if(is_admin() && !empty($_GET['qode_dismis_notice'])) { $notice_id = sanitize_key($_GET['qode_dismis_notice']); $current_user_id = get_current_user_id(); update_user_meta($current_user_id, 'dismis_'.$notice_id, 1); } } add_action('admin_init', 'qode_save_dismisable_notice'); } if(!function_exists('qode_enqueue_style_scripts_slider_taxonomy')) { /** * Enqueue style and scripts when on slider taxonomy page in admin */ function qode_enqueue_style_scripts_slider_taxonomy() { if(isset($_GET['taxonomy']) && $_GET['taxonomy'] == 'slides_category') { wp_enqueue_style('qodef-slider-category', get_template_directory_uri().'/framework/admin/assets/css/qodef-slider-category.css'); wp_enqueue_script('qodef-slider-category', get_template_directory_uri().'/framework/admin/assets/js/qodef-slider-category.js'); } } add_action('admin_print_scripts-edit-tags.php', 'qode_enqueue_style_scripts_slider_taxonomy'); } if(!function_exists('qode_enqueue_nav_menu_script')) { /** * Function that enqueues styles and scripts necessary for menu administration page. * It checks $hook variable * @param $hook string current page hook to check */ function qode_enqueue_nav_menu_script($hook) { if($hook == 'nav-menus.php') { wp_enqueue_script('qodef-nav-menu', get_template_directory_uri().'/framework/admin/assets/js/qodef-nav-menu.js'); wp_enqueue_style('qodef-nav-menu', get_template_directory_uri().'/framework/admin/assets/css/qodef-nav-menu.css'); } } add_action('admin_enqueue_scripts', 'qode_enqueue_nav_menu_script'); } if(!function_exists('qode_generate_icon_pack_options')) { /** * Generates options HTML for each icon in given icon pack * Hooked to wp_ajax_update_admin_nav_icon_options action */ function qode_generate_icon_pack_options() { global $qodeIconCollections; $html = ''; $icon_pack = isset($_POST['icon_pack']) ? $_POST['icon_pack'] : ''; $collections_object = $qodeIconCollections->getIconCollection($icon_pack); if($collections_object) { $icons = $collections_object->getIconsArray(); if(is_array($icons) && count($icons)) { foreach ($icons as $key => $icon) { $html .= ''; } } } print $html; } add_action('wp_ajax_update_admin_nav_icon_options', 'qode_generate_icon_pack_options'); } if(!function_exists('qode_get_custom_sidebars')) { /** * Function that returns all custom made sidebars. * * @uses get_option() * @return array array of custom made sidebars where key and value are sidebar name */ function qode_get_custom_sidebars() { $custom_sidebars = get_option('qode_sidebars'); $formatted_array = array(); if(is_array($custom_sidebars) && count($custom_sidebars)) { foreach ($custom_sidebars as $custom_sidebar) { $formatted_array[$custom_sidebar] = $custom_sidebar; } } return $formatted_array; } } if(!function_exists('qode_hook_twitter_request_ajax')) { /** * Wrapper function for obtaining twitter request token. * Hooks to wp_ajax_qode_twitter_obtain_request_token ajax action * * @see QodeTwitterApi::obtainRequestToken() */ function qode_hook_twitter_request_ajax() { QodeTwitterApi::getInstance()->obtainRequestToken(); } add_action('wp_ajax_qode_twitter_obtain_request_token', 'qode_hook_twitter_request_ajax'); }