Как получить/прочитать самый чистый URL в Meta Canonical через PHP?

StackOverflow https://stackoverflow.com/questions/4472484

Вопрос

Дано: старые уродливые URL /somepage?ln=en переписаны в HTACCESS, чтобы /en/somepage
Дано: используется каноническая метага, с этим сценарием PHP над ним, чтобы заполнить аккуратный URL:

Как сделать их похожими на канонические?

      <link rel="canonical" href="<?=$canonicalURL?>">

Какими способами можно проанализировать текущий URL без каких -либо строк или удалить дополнительные строки из URL и поместить его в канонический URL?

Это было полезно?

Решение

По сути, вы просто хотите избавиться от строки запроса от $ endensions, правильно?

<?php
$qsIndex = strpos($extensions, '?');
$extensions = $qsIndex !== FALSE ? substr($extensions, 0, $qsIndex) : $extensions;

Другие советы

$url = parse_url('http://example.com/path/page?param=value');

print_r($url)

Array
(
    [scheme] => http
    [host] => example.com
    [path] => /path/page
    [query] => param=value
)

Тогда вы могли бы просто сделать:

$url['scheme'] . '://' . $url['host'] . $url['path']

Или даже:

$url = 'http://example.com/path/page?param=value'; 
'http://example.com' . parse_url($url, PHP_URL_PATH)
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top