Passando parâmetros PHP através de URL's amigáveis
26/08/2017Hoje vamos aprender como passar parâmetros pelo php através de url amigáveis.
A principal utilização das URL Amigáveis é em relação ao SEO (Search Engine Optimization), ou seja, os mecanismos de busca (Google, Bing e outros) dão melhor classificação aos sites que possuem urls amigáveis do que aqueles que não possuem.
Vejam a diferença entre um endereço com url amigável e um sem:
#Sem url amigável
http://www.webdesignemfoco.com/artigos.php?categoria=sites&&pagina=1
#Com url amigável
http://www.webdesignemfoco.com/artigos/sites/1
Repare que o site com url amigável é bem mais limpo que um sem, não é mesmo?!
Alterando o Apache para receber Url's amigáveis
O primeiro passo para a construção de uma url limpa é alterar o nosso módulo Rewrite_module apache. Para tanto basta entrar na nossa pasta do apache/conf/httpd e buscar por "Rewrite_mod". Assim que aparecer na pesquisa, basta retirar a hashtag (#) do início do código.
Criando o arquivo .htaccess
Vamos criar um arquivo no nosso editor de códigos e salvar como ".htaccess". Com o arquivo aberto vamos digitar o seguinte código:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^parametros-([0-9]+)-(.*)$ parametros.php?id=$1&&categoria=$2
Arquivo index.php
Vamos criar duas divs simulando um produto fictício:
<div><img src="sapato.jpg" alt="sapato"></div>
<div><a href="parametros.php?id=1&&categoria=mocacin">Sapato Mocacin</a></div>
Arquivo parametros.php
Recebemos nossas variáveis GET e exibimos o valor delas.
$id=$_GET['id'];
$categoria=$_GET['categoria'];
echo "Esse produto possui id={$id} e categoria={$categoria}";