/* ===================================================== SSO DESDE ENLACES DE MOODLE EN EMAILS ===================================================== */ add_filter('allowed_redirect_hosts', function($hosts) { $hosts[] = 'campus.enlacebioquimico.com.ar'; return array_unique($hosts); }); add_action('template_redirect', 'wpmb_redirect_logged_user_to_moodle_wantsurl'); function wpmb_redirect_logged_user_to_moodle_wantsurl() { if (empty($_GET['wpmb_moodle_redirect']) || !is_user_logged_in()) { return; } $moodle_url = get_option('wpmb_moodle_url'); $secret = get_option('wpmb_sso_secret'); if (!$moodle_url || !$secret) { return; } $redirect = rawurldecode(wp_unslash($_GET['wpmb_moodle_redirect'])); if ($redirect === '' || $redirect[0] !== '/' || strpos($redirect, '//') === 0 || preg_match('#^[a-z][a-z0-9+.-]*:#i', $redirect)) { $redirect = '/my/'; } $user = wp_get_current_user(); $email = $user->user_email; if (!$email) { return; } $campo_wp = get_option('wpmb_campo_dni_wp', 'billing_dni'); $dni = get_user_meta($user->ID, $campo_wp, true); if (!$dni && $campo_wp !== 'billing_dni') { $dni = get_user_meta($user->ID, 'billing_dni', true); } $timestamp = time(); $hash = hash_hmac('sha256', $email . $dni . $timestamp . $redirect, $secret); $login_url = add_query_arg([ 'email' => $email, 'dni' => $dni, 'redirect' => $redirect, 't' => $timestamp, 'h' => $hash, ], rtrim($moodle_url, '/') . '/local/wpbridge/login.php'); wp_safe_redirect($login_url); exit; } https://enlacebioquimico.com.ar/wp-sitemap-posts-page-1.xmlhttps://enlacebioquimico.com.ar/wp-sitemap-posts-product-1.xmlhttps://enlacebioquimico.com.ar/wp-sitemap-posts-gm_menu_block-1.xmlhttps://enlacebioquimico.com.ar/wp-sitemap-taxonomies-product_cat-1.xmlhttps://enlacebioquimico.com.ar/wp-sitemap-taxonomies-product_tag-1.xmlhttps://enlacebioquimico.com.ar/wp-sitemap-users-1.xml