function orbital_add_header_xua()
{
if (is_customize_preview()) {
header('X-XSS-Protection: 0');
}
}
add_action('send_headers', 'orbital_add_header_xua');
function orbital_advertisment_customizer($wp_customize)
{
$wp_customize->add_panel('orbital_ads', array(
'title' => __('Adsense and Analytics', 'orbital'),
'description' => __('Remember the limitations and Google Adsense policies.', 'orbital'),
'priority' => 1007,
));
$wp_customize->add_section('position_options_analytics', array(
'title' => __('Analytics and Adsense codes', 'orbital'),
'panel' => 'orbital_ads',
));
$wp_customize->add_section('position_options_home', array(
'title' => __('Home Ads', 'orbital'),
'panel' => 'orbital_ads',
));
$wp_customize->add_section('position_options_single', array(
'title' => __('Single Ads', 'orbital'),
'panel' => 'orbital_ads',
));
$wp_customize->add_section('position_options_page', array(
'title' => __('Page Ads', 'orbital'),
'panel' => 'orbital_ads',
));
$wp_customize->add_section('position_options_archive', array(
'title' => __('Archive Ads', 'orbital'),
'panel' => 'orbital_ads',
));
$wp_customize->add_section('position_options_home_mobile', array(
'title' => __('Home Mobile Ads', 'orbital'),
'panel' => 'orbital_ads',
));
$wp_customize->add_section('position_options_single_mobile', array(
'title' => __('Single Mobile Ads', 'orbital'),
'panel' => 'orbital_ads',
));
$wp_customize->add_section('position_options_page_mobile', array(
'title' => __('Page Mobile Ads', 'orbital'),
'panel' => 'orbital_ads',
));
$wp_customize->add_section('position_options_archive_mobile', array(
'title' => __('Archive Mobile Ads', 'orbital'),
'panel' => 'orbital_ads',
));
$position_options = array(
'orbital_advertisment_before_home' => __('Before Home', 'orbital'),
'orbital_advertisment_after_featured_home' => __('After Featured Home', 'orbital'),
'orbital_advertisment_after_home' => __('After Home', 'orbital'),
'orbital_advertisment_before_home_mobile' => __('Before Home Mobile', 'orbital'),
'orbital_advertisment_after_featured_home_mobile' => __('After Featured Home Mobile', 'orbital'),
'orbital_advertisment_after_home_mobile' => __('After Home Mobile', 'orbital'),
'orbital_advertisment_before_single_content' => __('Before Single Content', 'orbital'),
'orbital_advertisment_middle_single_content' => __('Middle Single Content', 'orbital'),
'orbital_advertisment_after_single_content' => __('After Single Content', 'orbital'),
'orbital_advertisment_before_single_content_mobile' => __('Before Single Content Mobile', 'orbital'),
'orbital_advertisment_middle_single_content_mobile' => __('Middle Single Content Mobile', 'orbital'),
'orbital_advertisment_after_single_content_mobile' => __('After Single Content Mobile', 'orbital'),
'orbital_advertisment_before_page_content' => __('Before Page Content', 'orbital'),
'orbital_advertisment_middle_page_content' => __('Middle Page Content', 'orbital'),
'orbital_advertisment_after_page_content' => __('After Page Content', 'orbital'),
'orbital_advertisment_before_page_content_mobile' => __('Before Page Content Mobile', 'orbital'),
'orbital_advertisment_middle_page_content_mobile' => __('Middle Page Content Mobile', 'orbital'),
'orbital_advertisment_after_page_content_mobile' => __('After Page Content Mobile', 'orbital'),
'orbital_advertisment_before_archive' => __('Before Archive', 'orbital'),
'orbital_advertisment_after_featured_archive' => __('After Featured Archive', 'orbital'),
'orbital_advertisment_after_archive' => __('After Archive', 'orbital'),
'orbital_advertisment_after_description_archive' => __('After Description Archive', 'orbital'),
'orbital_advertisment_before_archive_mobile' => __('Before Archive Mobile', 'orbital'),
'orbital_advertisment_after_featured_archive_mobile' => __('After Featured Archive Mobile', 'orbital'),
'orbital_advertisment_after_archive_mobile' => __('After Archive Mobile', 'orbital'),
'orbital_advertisment_after_description_archive_mobile' => __('After Description Archive Mobile', 'orbital'),
);
foreach ($position_options as $position_option => $position_value) {
$section_control = str_replace('_mobile', '', $position_option);
if ($position_option == $section_control) {
$wp_customize->add_section($section_control, array(
'title' => $position_value,
'panel' => 'orbital_ads',
));
}
$wp_customize->add_setting($position_option . '_code', array(
'default' => '',
'transport' => 'refresh',
'sanitize_callback' => '',
));
$wp_customize->add_setting($position_option . '_align', array(
'default' => 'center',
'transport' => 'refresh',
'sanitize_callback' => '',
));
$wp_customize->add_setting($position_option . '_style', array(
'default' => 'fluid',
'transport' => 'refresh',
'sanitize_callback' => '',
));
$wp_customize->add_control(new WP_Customize_Control($wp_customize, $position_option . '_code', array(
'section' => $section_control,
'label' => $position_value,
'settings' => $position_option . '_code',
'type' => 'textarea',
)));
$wp_customize->add_control(new WP_Customize_Control($wp_customize, $position_option . '_align', array(
'section' => $section_control,
'label' => 'Alignment',
'settings' => $position_option . '_align',
'type' => 'select',
'choices' => array(
'center' => 'Center',
'left' => 'Left',
'right' => 'Right',
),
)));
$wp_customize->add_control(new WP_Customize_Control($wp_customize, $position_option . '_style', array(
'section' => $section_control,
'label' => 'Style',
'settings' => $position_option . '_style',
'type' => 'select',
'choices' => array(
'fluid' => 'Fluid (100%)',
'small' => 'Small Rectangle (300 x 250)',
'medium' => 'Medium Rectangle (336 x 280)',
'large' => 'Large Rectangle (360 x 280)',
'leaderboard' => 'Leaderboard (728 x 90)',
'half-page' => 'Half Page (300 x 600)',
),
)));
if (in_array($position_option, array(
'orbital_advertisment_middle_single_content',
'orbital_advertisment_middle_single_content_mobile',
'orbital_advertisment_middle_page_content',
'orbital_advertisment_middle_page_content_mobile'))) {
$wp_customize->add_setting($position_option . '_middle_mode', array(
'default' => 'unique',
'transport' => 'refresh',
'sanitize_callback' => '',
));
$wp_customize->add_setting($position_option . '_middle_tag', array(
'default' => 'p',
'transport' => 'refresh',
'sanitize_callback' => '',
));
$wp_customize->add_setting($position_option . '_middle_number', array(
'default' => 3,
'transport' => 'refresh',
'sanitize_callback' => '',
));
$wp_customize->add_control(new WP_Customize_Control($wp_customize, $position_option . '_middle_mode', array(
'section' => $section_control,
'label' => 'Middle Mode',
'settings' => $position_option . '_middle_mode',
'type' => 'select',
'choices' => array(
'unique' => 'Unique',
'scroll' => 'Scroll',
),
)));
$wp_customize->add_control(new WP_Customize_Control($wp_customize, $position_option . '_middle_tag', array(
'section' => $section_control,
'label' => 'Middle After Tag',
'settings' => $position_option . '_middle_tag',
'type' => 'select',
'choices' => array(
'p' => 'Paragraph',
'h2' => 'Heading H2',
),
)));
$wp_customize->add_control(new WP_Customize_Control($wp_customize, $position_option . '_middle_number', array(
'section' => $section_control,
'label' => 'Middle After Number',
'settings' => $position_option . '_middle_number',
'type' => 'number',
'input_attrs' => array(
'min' => 1,
),
)));
}
}
}
final class Orbital_Export_Import_Core
{
private static $core_options = array(
'blogname',
'blogdescription',
'show_on_front',
'page_on_front',
'page_for_posts',
);
public static function init($wp_customize)
{
if (current_user_can('edit_theme_options')) {
if (isset($_REQUEST['orbital-ei-export'])) {
self::_export($wp_customize);
}
if (isset($_REQUEST['orbital-ei-import']) && isset($_FILES['orbital-ei-import-file'])) {
self::_import($wp_customize);
}
}
}
public static function controls_enqueue_scripts()
{
// Register
wp_register_style('orbital-ei-css', get_template_directory_uri() . '/assets/css/export-import.css', array(), '1.0.0');
wp_register_script('orbital-ei-js', get_template_directory_uri() . '/assets/js/export-import.js', array( 'jquery' ), '1.0.0', true);
// Localize
wp_localize_script('orbital-ei-js', 'orbitaleil10n', array(
'emptyImport' => __('Please choose a file to import.', 'orbital')
));
// Config
wp_localize_script('orbital-ei-js', 'orbitaleiConfig', array(
'customizerURL' => admin_url('customize.php'),
'exportNonce' => wp_create_nonce('orbital-ei-exporting')
));
// Enqueue
wp_enqueue_style('orbital-ei-css');
wp_enqueue_script('orbital-ei-js');
}
public static function register($wp_customize)
{
require get_template_directory() . '/inc/customizer-parts/ei/control.php';
$wp_customize->add_section('orbital-ei-section', array(
'title' => __('Export/Import', 'orbital'),
'priority' => 10000000
));
$wp_customize->add_setting('orbital-ei-setting', array(
'default' => '',
'type' => 'none',
'sanitize_callback' => '',
));
$wp_customize->add_control(new Orbital_Export_Import_Control(
$wp_customize,
'orbital-ei-setting',
array(
'section' => 'orbital-ei-section',
'priority' => 1
)
));
}
private static function _export($wp_customize)
{
if (! wp_verify_nonce($_REQUEST['orbital-ei-export'], 'orbital-ei-exporting')) {
return;
}
$theme = get_stylesheet();
$template = get_template();
$charset = get_option('blog_charset');
$mods = get_theme_mods();
$data = array(
'template' => $template,
'mods' => $mods ? $mods : array(),
'options' => array()
);
$settings = $wp_customize->settings();
foreach ($settings as $key => $setting) {
if ('option' == $setting->type) {
if ('widget_' === substr(strtolower($key), 0, 7)) {
continue;
}
if ('sidebars_' === substr(strtolower($key), 0, 9)) {
continue;
}
if (in_array($key, self::$core_options)) {
continue;
}
$data['options'][ $key ] = $setting->value();
}
}
$option_keys = apply_filters('Orbital_Export_Import_export_option_keys', array());
foreach ($option_keys as $option_key) {
$data['options'][ $option_key ] = get_option($option_key);
}
if (function_exists('wp_get_custom_css_post')) {
$data['wp_css'] = wp_get_custom_css();
}
header('Content-disposition: attachment; filename=' . $theme . '-export.dat');
header('Content-Type: application/octet-stream; charset=' . $charset);
echo serialize($data);
die();
}
private static function _import($wp_customize)
{
if (! wp_verify_nonce($_REQUEST['orbital-ei-import'], 'orbital-ei-importing')) {
return;
}
if (! function_exists('wp_handle_upload')) {
require_once(ABSPATH . 'wp-admin/includes/file.php');
}
require get_template_directory() . '/inc/customizer-parts/ei/option.php';
global $wp_customize;
global $Orbital_Export_Import_error;
$Orbital_Export_Import_error = false;
$template = get_template();
$overrides = array( 'test_form' => false, 'test_type' => false, 'mimes' => array('dat' => 'text/plain') );
$file = wp_handle_upload($_FILES['orbital-ei-import-file'], $overrides);
if (isset($file['error'])) {
$Orbital_Export_Import_error = $file['error'];
return;
}
if (! file_exists($file['file'])) {
$Orbital_Export_Import_error = __('Error importing settings! Please try again.', 'orbital');
return;
}
$raw = wp_remote_get($file['url'], array('sslverify' => false));
$raw = wp_remote_retrieve_body($raw);
$raw = str_replace('s:12:"orbital-lite"', 's:7:"orbital"', $raw);
$data = @unserialize($raw);
unlink($file['file']);
if ('array' != gettype($data)) {
$Orbital_Export_Import_error = __('Error importing settings! Please check that you uploaded a customizer export file.', 'orbital');
return;
}
if (! isset($data['template']) || ! isset($data['mods'])) {
$Orbital_Export_Import_error = __('Error importing settings! Please check that you uploaded a customizer export file.', 'orbital');
return;
}
if ($data['template'] != $template) {
$Orbital_Export_Import_error = __('Error importing settings! The settings you uploaded are not for the current theme.', 'orbital');
return;
}
if (isset($_REQUEST['orbital-ei-import-images'])) {
$data['mods'] = self::_import_images($data['mods']);
}
if (isset($data['options'])) {
foreach ($data['options'] as $option_key => $option_value) {
$option = new Orbital_Export_Import_Option($wp_customize, $option_key, array(
'default' => '',
'type' => 'option',
'capability' => 'edit_theme_options'
));
$option->import($option_value);
}
}
if (function_exists('wp_update_custom_css_post') && isset($data['wp_css']) && '' !== $data['wp_css']) {
wp_update_custom_css_post($data['wp_css']);
}
do_action('customize_save', $wp_customize);
foreach ($data['mods'] as $key => $val) {
do_action('customize_save_' . $key, $wp_customize);
set_theme_mod($key, $val);
}
do_action('customize_save_after', $wp_customize);
}
private static function _import_images($mods)
{
foreach ($mods as $key => $val) {
if (self::_is_image_url($val)) {
$data = self::_sideload_image($val);
if (! is_wp_error($data)) {
$mods[ $key ] = $data->url;
if (isset($mods[ $key . '_data' ])) {
$mods[ $key . '_data' ] = $data;
update_post_meta($data->attachment_id, '_wp_attachment_is_custom_header', get_stylesheet());
}
}
}
}
return $mods;
}
private static function _sideload_image($file)
{
$data = new stdClass();
if (! function_exists('media_handle_sideload')) {
require_once(ABSPATH . 'wp-admin/includes/media.php');
require_once(ABSPATH . 'wp-admin/includes/file.php');
require_once(ABSPATH . 'wp-admin/includes/image.php');
}
if (! empty($file)) {
preg_match('/[^\?]+\.(jpe?g|jpe|gif|png)\b/i', $file, $matches);
$file_array = array();
$file_array['name'] = basename($matches[0]);
$file_array['tmp_name'] = download_url($file);
if (is_wp_error($file_array['tmp_name'])) {
return $file_array['tmp_name'];
}
$id = media_handle_sideload($file_array, 0);
if (is_wp_error($id)) {
@unlink($file_array['tmp_name']);
return $id;
}
$meta = wp_get_attachment_metadata($id);
$data->attachment_id = $id;
$data->url = wp_get_attachment_url($id);
$data->thumbnail_url = wp_get_attachment_thumb_url($id);
$data->height = $meta['height'];
$data->width = $meta['width'];
}
return $data;
}
private static function _is_image_url($string = '')
{
if (is_string($string)) {
if (preg_match('/\.(jpg|jpeg|png|gif)/i', $string)) {
return true;
}
}
return false;
}
}
add_action('customize_controls_enqueue_scripts', 'Orbital_Export_Import_Core::controls_enqueue_scripts');
add_action('customize_register', 'Orbital_Export_Import_Core::init', 999999);
add_action('customize_register', 'Orbital_Export_Import_Core::register');
/**
* Toggles animation duration in milliseconds.
*
* @since 2.6
*
* @return int Duration in milliseconds
*/
function orbitalMenu_toggle_duration() {
/**
* Filters the animation duration/speed used usually for submenu toggles.
*
* @since Orbital 2.6
*
* @param int $duration Duration in milliseconds.
*/
$duration = apply_filters( 'orbitalMenu_toggle_duration', 250 );
return $duration;
}
/**
* Adds a Sub Nav Toggle to the Expanded Menu and Mobile Menu.
*
* @since Orbital 2.6
*
* @param stdClass $args An object of wp_nav_menu() arguments.
* @param WP_Post $item Menu item data object.
* @param int $depth Depth of menu item. Used for padding.
* @return stdClass An object of wp_nav_menu() arguments.
*/
function orbitalMenu_add_sub_toggles_to_main_menu( $args, $item, $depth ) {
// Add sub menu toggles to the Expanded Menu with toggles.
if ( isset( $args->show_toggles ) && $args->show_toggles ) {
// Wrap the menu item link contents in a div, used for positioning.
$args->before = '
';
$args->after = '';
// Add a toggle to items with children.
if ( in_array( 'menu-item-has-children', $item->classes, true ) ) {
$toggle_target_string = '.menu-modal .menu-item-' . $item->ID . ' > .sub-menu';
$toggle_duration = orbitalMenu_toggle_duration();
// Add the sub menu toggle.
$args->after .= '';
}
// Close the wrapper.
$args->after .= '
';
// Add sub menu icons to the primary menu without toggles.
} elseif ( 'primary' === $args->theme_location ) {
if ( in_array( 'menu-item-has-children', $item->classes, true ) ) {
$args->after = '';
} else {
$args->after = '';
}
}
return $args;
}
add_filter( 'nav_menu_item_args', 'orbitalMenu_add_sub_toggles_to_main_menu', 10, 3 );
Inicio - Brujerías de amor
Saltar al contenido
[vc_row][vc_column][td_block_big_grid_7][/vc_column][/vc_row][vc_row][vc_column width=»2/3″][td_block_16 custom_title=»Artículos Recientes» limit=»12″ ajax_pagination=»next_prev»][/vc_column][vc_column width=»1/3″][vc_widget_sidebar sidebar_id=»td-default»][/vc_column][/vc_row]