settings_alojaproConfig(); $this->settings_alojaproWidget(); $this->settings_alojaproIntegration(); $this->settings_alojaproComments(); } /** * Config Options page callback */ public function create_config_page() { // Set class property $this->options = array_merge(get_option('alojapro_config', array())); ?>

Configuración General del Widget

options = array_merge(get_option('alojapro_settings', array())); ?>

Alojapro Widget

*Classic", "Sin Descuentos *Classic", "Con filtros avanzados *Classic & Modern", "Con filtros avanzados sin descuentos *Classic & Modern", "Con destinos *Modern", "Con destinos sin descuentos *Modern", "Estándar sin filtros avanzados *Modern"), ) // params callback function ); add_settings_field( 'customPrimaryColor', // ID 'Custom Primary Color', // Title array($this, 'input_callback'), // Callback 'alojapro-widget-settings', // Page 'setting_section_id', // Section array( "customPrimaryColor", "color", "", 'alojapro_settings', "", ) // params callback function ); add_settings_field( 'customSecondaryColor', // ID 'Custom Secondary Color', // Title array($this, 'input_callback'), // Callback 'alojapro-widget-settings', // Page 'setting_section_id', // Section array( "customSecondaryColor", "color", "", 'alojapro_settings', "", ) // params callback function ); add_settings_field( 'customStyle', // ID 'Style', // Title array($this, 'input_callback'), // Callback 'alojapro-widget-settings', // Page 'setting_section_id', // Section array( "customStyle", "radio", array("0", "1"), 'alojapro_settings', array("Flat", "Rounded"), ) // params callback function ); add_settings_field( 'customCss', // ID 'Custom CSS', // Title array($this, 'input_callback'), // Callback 'alojapro-widget-settings', // Page 'setting_section_id', // Section array( "customCss", "textarea", "", 'alojapro_settings', "", ) // params callback function ); } /** * Widget Integration page callback */ public function create_integration_page() { // Set class property $this->options = array_merge(get_option('alojapro_integration', array())); ?>

Integración del widget

options = array_merge(get_option('alojapro_comments', array())); ?>

Integración de los comentarios

$value) { switch ($key) { case 'platformId': $new_input[$key] = absint($value); break; case 'widgetId': $new_input[$key] = absint($value); break; case 'propertyId': $new_input[$key] = absint($value); break; case 'scrollMobile': $new_input[$key] = absint($value); break; case 'scrollDesktop': $new_input[$key] = absint($value); break; case 'login': $new_input[$key] = sanitize_email($value); break; case 'customCss': $new_input[$key] = sanitize_textarea_field($value); break; default: $new_input[$key] = sanitize_text_field($value); break; } } return $new_input; } /** * Get the settings option array and print one of its values * @param array $params */ public function input_callback(array $params) { list($id, $type, $default, $settingsGroup, $labels) = $params; switch ($type) { case 'textarea': printf( '', isset($this->options[$id]) ? esc_attr($this->options[$id]) : $default ); break; case 'radio': //print_r($id); for ($i = 0; $i < count($default); $i++) { if (!isset($default[$i]) || !isset($labels[$i])) { // Si el valor en $default o $labels no está definido, saltamos esta iteración continue; } if (is_numeric($default[$i])) { if (isset($this->options[$id]) && $this->options[$id] == $default[$i] || (!isset($this->options[$id]) && $i == 0)) { printf( '', $type, $settingsGroup, $id, $default[$i] ); } else { printf( '', $type, $settingsGroup, $id, $default[$i] ); } printf( '
', $settingsGroup, $id, $labels[$i] ); } else { $image = ($default[$i] == 'classic') ? 'form_classic.png' : 'form_modern.png'; if (isset($this->options[$id]) && $this->options[$id] == $default[$i] || (!isset($this->options[$id]) && $i == 0)) { printf( '
', ALOJAPRO_PLUGIN_BASE_URL, $image, $type, $settingsGroup, $id, $default[$i] ); } else { printf( '
', ALOJAPRO_PLUGIN_BASE_URL, $image, $type, $settingsGroup, $id, $default[$i] ); } printf( '

', $settingsGroup, $id, $labels[$i] ); } } break; default: printf( '', isset($this->options[$id]) ? esc_attr($this->options[$id]) : $default ); break; } } }