Я пытаюсь реализовать теги canonical и hreflang в WordPress, но не могу получить текущий URL посещенной страницы.
Я пытался:
<?php echo site_url(); ?>
Но он возвращает https://www.example.com вместо https://www.example.com/current-page1
https://www.example.com
https://www.example.com/current-page1
Если постоянные ссылки установлены на равнине:
$actual_link = (isset($_SERVER['HTTPS']) ? "https" : "http") . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
Функция site_url() возвращает фактический корневой URL-адрес веб-сайта.В зависимости от того, где вы звоните по URL, вы можете попробовать get_the_permalink(), но более надежным способом будет использование метода $wp->request.Например:
site_url()
get_the_permalink()
$wp->request
global $wp; echo home_url( $wp->request )
Основная проблема с этой функцией заключается в том, что параметры URL пропущены, поэтому, если ваша ссылка будет выглядеть примерно так: http://example.com/test/?myparam=1, она вернет только http://example.com/test/
http://example.com/test/?myparam=1
http://example.com/test/