Skip to content

Instantly share code, notes, and snippets.

@MacDada

MacDada/redirect.php

Last active Mar 13, 2019
Embed
What would you like to do?
<?php
// https://www.wykop.pl/wpis/39614135/mirki-chce-przekierowanie-na-wp-jesli-httpacceptla/
// 1. Zawsze porównuj z `===` - w bardzo wyjątkowych przypadkach `==` jest słuszne. Doczytaj sobie w dokumentacji dlaczego.
// 2. Spójność napisów - masz raz tak, raz inaczej, bez reguły. Najlepiej zawsze używaj apostrofów do napisów (`'`), chyba że faktycznie chcesz interpolować zmienne lub mieć znaki nowej linii, itp. (wtedy cudzysłowy `"`).
// 3. Jak kolega wyżej słusznie zauważył, `$_SERVER['HTTP_ACCEPT_LANGUAGE']` może nie istnieć. Powinieneś sprawdzać najpierw czy w ogóle jest wartość (np `isset`em) i uwzględnić ten przypadek.
// 4. Zmienne `$url` są Ci zbędne - wsadzaj wartość bezpośrednio do `wp_redirect`.
// 5. Jak już jesteś na głównej z PL, to przekierowanie zbędne.
// 6. Weź pod uwagę, że klient może przesłać język wielkimi literami.
add_action( 'init', 'custom_lang_found' );
function custom_lang_found() {
$lang = strtolower(substr($_SERVER['HTTP_ACCEPT_LANGUAGE'] ?? null, 0, 2));
if ('en' === $lang) {
wp_redirect(get_home_url().'/en/');
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment