Логика URL-адреса реферера WordPress

#php #wordpress #ref

#php #wordpress #ссылка

Вопрос:

У нас есть логика URL ссылки в WordPress, которая выглядит следующим образом https://example.com/?ref=userid . Мы пытаемся переключить это на что-то вроде https://example.com/ref/userid . Код, который мы используем прямо сейчас, это:

 // Ref Button
function func_register_button( $atts ) {

    if(isset($_GET['ref']) amp;amp; is_valid_username($_GET['ref'])){
        $enter_link = 'https://example.com/sponsor/' . $_GET['ref'];
    }else{
        $enter_link = 'https://example.com/sign-up';
    }


    $a = shortcode_atts( array(
        'text' => __('Yes, I want to join now')
    ), $atts );

    $btn = '<a class="cta-btn" href="' . $enter_link . '" target="_blank">' . $a['text'] . '</a>';

    return $btn;

}
add_shortcode( 'register_button', 'func_register_button' );

  

Я с нетерпением жду ваших идей и предложений. Надеюсь, вы сможете подтолкнуть нас в правильном направлении 🙂

Комментарии:

1. Что вы уже пробовали?

2. Используйте parse_url() php.net/manual/en/function.parse-url.php чтобы получить путь, затем замените $_GET[‘ref’] этим проанализированным значением. Попробуйте сначала.

3. Спасибо! При синтаксическом анализе URL проблема в том, что посетители перенаправляются на страницу 404 из-за структуры постоянных ссылок WordPress.

4. Вы также должны где-то переопределить маршрутизацию URL, но я не настолько знаком с WordPress.