Создавать канонические теги, используя PHP без запросов?
В настоящее время я использую код php ниже для генерации канонических тегов по всему миру. Это работает, но я не хочу, чтобы запросы добавлялись к исходному URL.
<link rel="canonical" href="<?php $url="http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];echo $url;?>">
Например, если URL, который извлекается динамически,
http://www.example.com/category/product/umbrellas.php (это приемлемо)
http://www.example.com/category/product/umbrellas.php? npp = 72 (это недопустимо)
Как я могу изменить свой код, чтобы удалить что-либо после "?" оператор
~ Спасибо
1 ответ
Как отметил Марк Б, либо используйте parse_url, чтобы отделить URL, который намного безопаснее, чем вы делаете. Или используйте взрыв, чтобы просто удалить что-нибудь после?
<?php
list($request_uri,$request_args) = explode('?',$_SERVER['REQUEST_URI'],2);
echo $request_uri;
Обратите внимание, что приведенное выше довольно неприятно, вместо этого используйте parse_url http://php.net/parse_url