WordPress как на ладони

Как получить ту часть url которая идет после домена.

Как получить в переменную, ту часть коротая идет после url главной страници?

Допустим у меня есть сайт http://test.com/ Переходим на
Следующую страницу блога http://test.com/blog/ (Как получить в переменную /blog/)

Или страница контактов http://test.com/contacts/ (Как получить в переменную /contacts/)

Есть ли в WP какая-то функция которая по сути отдает всё что находиться после home_url()?

*Если находимся на главной, то ничего не возвращаем (ну или пустоту)

1
BlackStar1991
5.6 лет назад 9
  • 0

    Эти данные хранятся в суперглобальном массиве $_SERVER.

    PHP_SELF    /server_indices.php 
    argv    - 
    argc    - 
    GATEWAY_INTERFACE    CGI/1.1 
    SERVER_ADDR    127.0.0.1 
    SERVER_NAME    localhost 
    SERVER_SOFTWARE    Apache/2.2.22 (Win64) PHP/5.3.13 
    SERVER_PROTOCOL    HTTP/1.1 
    REQUEST_METHOD    GET 
    REQUEST_TIME    1361542579 
    REQUEST_TIME_FLOAT    - 
    QUERY_STRING    
    DOCUMENT_ROOT    E:/web/ 
    HTTP_ACCEPT    text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 
    HTTP_ACCEPT_CHARSET    ISO-8859-1,utf-8;q=0.7,*;q=0.3 
    HTTP_ACCEPT_ENCODING    gzip,deflate,sdch 
    HTTP_ACCEPT_LANGUAGE    fr-FR,fr;q=0.8,en-US;q=0.6,en;q=0.4 
    HTTP_CONNECTION    keep-alive 
    HTTP_HOST    localhost 
    HTTP_REFERER    http://localhost/ 
    HTTP_USER_AGENT    Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17 
    HTTPS    - 
    REMOTE_ADDR    127.0.0.1 
    REMOTE_HOST    - 
    REMOTE_PORT    65037 
    REMOTE_USER    - 
    REDIRECT_REMOTE_USER    - 
    SCRIPT_FILENAME    E:/web/server_indices.php 
    SERVER_ADMIN    myemail@personal.us 
    SERVER_PORT    80 
    SERVER_SIGNATURE    
    PATH_TRANSLATED    - 
    SCRIPT_NAME    /server_indices.php 
    REQUEST_URI    /server_indices.php 
    PHP_AUTH_DIGEST    - 
    PHP_AUTH_USER    - 
    PHP_AUTH_PW    - 
    AUTH_TYPE    - 
    PATH_INFO    - 
    ORIG_PATH_INFO    - 
    BlackStar1991 5.6 лет назад

    Спасибо. Помогло. Пришлось правда проверку сделать, поскольку на главной странице выбрасывало какой-то мусор

    <?php
    if(is_front_page()){
    	$url = '/';
    } else {
    	$url = $_SERVER['REQUEST_URI'];
    }
    ?>
    
    <a class="bl_lang__icon lang_ru" href="//test.com/<?php echo $url; ?>"></a>
    Kama 5.5 лет назад

    Хм, а что за мусор там может быть?

    И еще так как ты написал совсем не безопасно надо юзать esc_url(), а то кто угодно что угодно в URL может вписать... Надо так:

    <a class="bl_lang__icon lang_ru" href="<?= esc_url( home_url($_SERVER['REQUEST_URI']) ) ?>"></a>
    Комментировать
На вопросы могут отвечать только зарегистрированные пользователи. Вход . Регистрация