Funciones Url Amigable

Genera urls amigables en php


Crea url amigables con una simple función programada en php para personalizar cualquier cadena de caracteres en una url amigable para los buscadores.


/* TEST */
<?=slug('url título de pruebas')?>
/* RESULTADO */
url-titulo-de-pruebas

/**
  @desc     : Crear url amigable
  @status   : STABLE
  @build    : PASSED
  @version  : 0.0.3
  @fecha    : 15.10.2015
*/
function slug($url=NULL) {
  //Rememplazamos caracteres especiales latinos
  $find1 = array('á', 'é', 'í', 'ó', 'ú', 'ñ');
  $repl1 = array('a', 'e', 'i', 'o', 'u', 'n');
  $url   = str_replace($find1, $repl1, $url);
  
  //Añadimos los guiones
  $find2 = array(' ', '  ', '&', '\r\n', '\n', '+');
  $url   = str_replace($find2, '-', $url);
  
  //Eliminamos y Reemplazamos demás caracteres especiales
  $find3 = array('/[^a-z0-9\-<>]/', '/[\-]+/', '/<[^>]*>/');
  $repl3 = array('', '-', '');
  $url   = str_replace($find3, $repl3, $url);

  //Si el último caracter es un guión lo quitamos 
  if(!is_array($url) && substr($url, -1) == '-'){
    $url = substr($url, 0, -1);
  }
  return $url;
}