Foros del Web » Programando para Internet » PHP »

Ayuda! Urls Amigables desde 0

Estas en el tema de Ayuda! Urls Amigables desde 0 en el foro de PHP en Foros del Web. Saludos, tal como lo dice el titulo necesito ayuda con esto de las url amigables desde 0, por que por más que intento no me ...
  #1 (permalink)  
Antiguo 01/10/2010, 18:11
 
Fecha de Ingreso: julio-2010
Mensajes: 158
Antigüedad: 14 años, 4 meses
Puntos: 3
Ayuda! Urls Amigables desde 0

Saludos, tal como lo dice el titulo necesito ayuda con esto de las url amigables desde 0, por que por más que intento no me salen.

Tengo el archivo:

articulo.php

Y obtengo las direcciones normalmente como todos:

articulo?id=1

El valor 1 lo extraigo de la base de datos, de la fila llamada id_articulos, en esa misma base de datos hay otra fila que se llama titulo_articulo suponiendo que:

id_articulos = 1
titulo_articulos = saludos-a-todos

Me gustaria que me quede:

mipagina.com/articulos/saludos-a-todos

Y no:

mipagina.com/articulo?id=1

Espero puedan ayudarme.
  #2 (permalink)  
Antiguo 01/10/2010, 18:15
Avatar de NUCKLEAR
Moderador radioactivo
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba-Argentina
Mensajes: 5.688
Antigüedad: 19 años
Puntos: 890
Respuesta: Ayuda! Urls Amigables desde 0

Se hace con .htaccess como supiongo que ya sabras, pero como condicion debes pasarle la id del articulo de manera obligatoria.
Asi como lo quieres seria guardar la url un campo de tu bd y tambien con .htacess pasarle el valor y dar la respuesta.

Pon el htaccess queestas usando.
__________________
Drupal Argentina
  #3 (permalink)  
Antiguo 01/10/2010, 20:23
Avatar de Miguelithox  
Fecha de Ingreso: diciembre-2008
Ubicación: Viña del Mar
Mensajes: 287
Antigüedad: 15 años, 10 meses
Puntos: 7
Respuesta: Ayuda! Urls Amigables desde 0

Primero deberías darte cuenta que el artículo que deseas ver se define por la ID y no por el título, entonces la url debería estar incluída la ID, yo la cambiaría por esto:
http://mipagina.com/articulos/1-saludos-a-todos.html

Luego creas un archivo llamado .htaccess (Yo ocupo el Notepad++ que pesa poco y es rápido), y pegas esto:

Cita:
RewriteBase /
RewriteEngine on
Rewriterule ^articulos/(.*)-(.*).html$ articulo.php?id=$1&titulo=$2
Puse en negrita lo de PHP por que no sé si es php lo que estás programando, ya que en tu post no dice nada de php.

Saludos, espero que te sirva.
  #4 (permalink)  
Antiguo 01/10/2010, 21:12
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 15 años, 4 meses
Puntos: 641
Respuesta: Ayuda! Urls Amigables desde 0

primero que nada verifica que tu archivo se llame .htaccess
XD

luego en tu archivo .htaccess
debe ir esto

Código Apache:
Ver original
  1. Options +FollowSymLinks #habilita las urls amigables#
  2. RewriteEngine On #Habilita el módulo RewriteEngine#
  3. RewriteCond &#37;{REQUEST_FILENAME} !-f#evita que los archivos sigan las reglas de urls amigables#
  4. RewriteCond %{REQUEST_FILENAME} !-d#lo mismo#
  5. RewriteBase / #aqui va la carpta base de tu dominio#
  6. RewriteRule ^post/(.+)/(.+)$ post.php?id=$1&title=$2 [L,QSA]# esta es una regla con banderas "flags"#
  7. #lo que hace es que al escribir una url asi
  8. #miweb.com/23/saludos-a-todos
  9. #la tome como si fuera
  10. #miweb.com/post.php?id=23&title=saludos-a-todos
  11. #y puedes ponerla como el compañero de arriba te dijo tambien, esto solo lo puse como muestra
  12. #
  #5 (permalink)  
Antiguo 01/10/2010, 21:19
Avatar de Miguelithox  
Fecha de Ingreso: diciembre-2008
Ubicación: Viña del Mar
Mensajes: 287
Antigüedad: 15 años, 10 meses
Puntos: 7
Respuesta: Ayuda! Urls Amigables desde 0

El que puse yo funciona perfectamente, por que el archivo .htaccess en sí ya viene habilitado lo que tienes tu en la línea 1. Pero mientras le sirva todo bien (:
  #6 (permalink)  
Antiguo 01/10/2010, 21:48
 
Fecha de Ingreso: julio-2010
Mensajes: 158
Antigüedad: 14 años, 4 meses
Puntos: 3
Respuesta: Ayuda! Urls Amigables desde 0

Cita:
Iniciado por Miguelithox Ver Mensaje
Primero deberías darte cuenta que el artículo que deseas ver se define por la ID y no por el título, entonces la url debería estar incluída la ID, yo la cambiaría por esto:
[url]http://mipagina.com/articulos/1-saludos-a-todos.html[/url]

Luego creas un archivo llamado .htaccess (Yo ocupo el Notepad++ que pesa poco y es rápido), y pegas esto:



Puse en negrita lo de PHP por que no sé si es php lo que estás programando, ya que en tu post no dice nada de php.

Saludos, espero que te sirva.
Si, si manejo php, pero segun entiendo, necesito primero cambiar lo que muestro en la url, es decir mipagina.com/articulo?id=saludos-a-todos.php en lugar de mipagina.com/articulo?id=1 no?
  #7 (permalink)  
Antiguo 01/10/2010, 21:53
Avatar de Miguelithox  
Fecha de Ingreso: diciembre-2008
Ubicación: Viña del Mar
Mensajes: 287
Antigüedad: 15 años, 10 meses
Puntos: 7
Respuesta: Ayuda! Urls Amigables desde 0

Cita:
Iniciado por cyber_dark Ver Mensaje
Si, si manejo php, pero segun entiendo, necesito primero cambiar lo que muestro en la url, es decir mipagina.com/articulo?id=saludos-a-todos.php en lugar de mipagina.com/articulo?id=1 no?
Si, eso lo cambiar por ejemplo en el código HTML:

Código HTML:
<a href="/articulo/' . $row['ID_ARTICULO'] . '-' . url_amigable($row['titulo']) . '.html">Texto</a> 
Osea es código html con php, ya que con php muestras tus artículos.

y la función url_amigable()
Código PHP:
function url_amigable($url) {

// Tranformamos todo a minusculas

$url strtolower($url);

//Rememplazamos caracteres especiales latinos

$find = array('á''é''í''ó''ú''ñ');

$repl = array('a''e''i''o''u''n');

$url str_replace ($find$repl$url);

// Añaadimos los guiones

$find = array(' ''&''\r\n''\n''+');
$url str_replace ($find'-'$url);

// Eliminamos y Reemplazamos demás caracteres especiales

$find = array('/[^a-z0-9\-<>]/''/[\-]+/''/<[^>]*>/');

$repl = array('''-''');

$url preg_replace ($find$repl$url);

return 
$url;


  #8 (permalink)  
Antiguo 01/10/2010, 22:08
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 15 años, 4 meses
Puntos: 641
Respuesta: Ayuda! Urls Amigables desde 0

Cita:
Iniciado por Miguelithox Ver Mensaje
El que puse yo funciona perfectamente, por que el archivo .htaccess en sí ya viene habilitado lo que tienes tu en la línea 1. Pero mientras le sirva todo bien (:
Yo no dije que no sirviera, lo que hice fue explicarle para que funcionaban las lineas que yo añadí, ya que pueden ser fundamentales
  #9 (permalink)  
Antiguo 01/10/2010, 22:24
 
Fecha de Ingreso: julio-2010
Mensajes: 158
Antigüedad: 14 años, 4 meses
Puntos: 3
Respuesta: Ayuda! Urls Amigables desde 0

Gracias por responder tan rapido Miguelithox. Hay un problema pues me genera una url asi:

http://mipagina.com/articulos/1-saludos-a-todos.html

en lugar de:

http://mipagina.com/articulos/saludos-a-todos.html
  #10 (permalink)  
Antiguo 01/10/2010, 22:31
Avatar de Miguelithox  
Fecha de Ingreso: diciembre-2008
Ubicación: Viña del Mar
Mensajes: 287
Antigüedad: 15 años, 10 meses
Puntos: 7
Respuesta: Ayuda! Urls Amigables desde 0

Como te dije anteriormente, el número sirve para identificar la ID del artículo, ya que ese archivo se guía por la ID y no por el título, es mejor que lo dejes así :)

Si lo haces por título se podrían repetir resultados, por eso es preferible usar la ID ya que es una ID única para cada artículo.
  #11 (permalink)  
Antiguo 01/10/2010, 23:09
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 15 años, 4 meses
Puntos: 641
Respuesta: Ayuda! Urls Amigables desde 0

tambien podrias hacer que saliera asi

http://mipagina.com/articulos/1/saludos-a-todos.html

como dice miguelithox, si soolo llamas a una consulta por el nombre del post podrias tener titulos repetidos, lo cual nunca pasaria con el id
  #12 (permalink)  
Antiguo 02/10/2010, 17:33
 
Fecha de Ingreso: julio-2010
Mensajes: 158
Antigüedad: 14 años, 4 meses
Puntos: 3
Respuesta: Ayuda! Urls Amigables desde 0

Perdón si abuso de ustedes, pero como ago para hacer esto ahora.

En la pagina index.php muestro los primeros 10 resultados, y en la pagina articulo.php muestro los datos de cada resultado, pero añadiendo ese codigo que me diste no logro hacerlo.

index.php
Código:
<? include('config.php');

function url_amigable($url) { 

// Tranformamos todo a minusculas 

$url = strtolower($url); 

//Rememplazamos caracteres especiales latinos 

$find = array('á', 'é', 'í', 'ó', 'ú', 'ñ'); 

$repl = array('a', 'e', 'i', 'o', 'u', 'n'); 

$url = str_replace ($find, $repl, $url); 

// Añaadimos los guiones 

$find = array(' ', '&', '\r\n', '\n', '+'); 
$url = str_replace ($find, '-', $url); 

// Eliminamos y Reemplazamos demás caracteres especiales 

$find = array('/[^a-z0-9\-<>]/', '/[\-]+/', '/<[^>]*>/'); 

$repl = array('', '-', ''); 

$url = preg_replace ($find, $repl, $url); 

return $url; 

} 

$num_por_pag = 10;
$resultado = mysql_query("SELECT * FROM mitabla ORDER BY id_articulos DESC LIMIT 0, $num_por_pag"); 

while($fila = mysql_fetch_array($resultado))
 {
 echo' 

 <a href="/articulo/' . $fila['id_articulo'] . '-' . url_amigable($fila['titulo_articulo']) . '.html"> '.$fila[titulo_articulo].' </a>

 <br>';  
 }

?>
articulo.php

Código:
<? include('config.php');



$resultado = mysql_query("SELECT * FROM mitabla"); 

while($fila = mysql_fetch_array($resultado))
 {
 echo' 

 $fila['dato1'];
 $fila['dato2'];
 $fila['dato3'];

<br>';  
 }
?>

Pero marca error, me imagino que es por que articulo.php no sabe detecta que id es la que debe mostrar. Espero puedan ayudarme.
  #13 (permalink)  
Antiguo 02/10/2010, 17:48
Avatar de Miguelithox  
Fecha de Ingreso: diciembre-2008
Ubicación: Viña del Mar
Mensajes: 287
Antigüedad: 15 años, 10 meses
Puntos: 7
Respuesta: Ayuda! Urls Amigables desde 0

Cita:
Iniciado por cyber_dark Ver Mensaje
Perdón si abuso de ustedes, pero como ago para hacer esto ahora.

En la pagina index.php muestro los primeros 10 resultados, y en la pagina articulo.php muestro los datos de cada resultado, pero añadiendo ese codigo que me diste no logro hacerlo.

index.php
Código:
<? include('config.php');

function url_amigable($url) { 

// Tranformamos todo a minusculas 

$url = strtolower($url); 

//Rememplazamos caracteres especiales latinos 

$find = array('á', 'é', 'í', 'ó', 'ú', 'ñ'); 

$repl = array('a', 'e', 'i', 'o', 'u', 'n'); 

$url = str_replace ($find, $repl, $url); 

// Añaadimos los guiones 

$find = array(' ', '&', '\r\n', '\n', '+'); 
$url = str_replace ($find, '-', $url); 

// Eliminamos y Reemplazamos demás caracteres especiales 

$find = array('/[^a-z0-9\-<>]/', '/[\-]+/', '/<[^>]*>/'); 

$repl = array('', '-', ''); 

$url = preg_replace ($find, $repl, $url); 

return $url; 

} 

$num_por_pag = 10;
$resultado = mysql_query("SELECT * FROM mitabla ORDER BY id_articulos DESC LIMIT 0, $num_por_pag"); 

while($fila = mysql_fetch_array($resultado))
 {
 echo' 

 <a href="/articulo/' . $fila['id_articulo'] . '-' . url_amigable($fila['titulo_articulo']) . '.html"> '.$fila[titulo_articulo].' </a>

 <br>';  
 }

?>
articulo.php

Código:
<? include('config.php');



$resultado = mysql_query("SELECT * FROM mitabla"); 

while($fila = mysql_fetch_array($resultado))
 {
 echo' 

 $fila['dato1'];
 $fila['dato2'];
 $fila['dato3'];

<br>';  
 }
?>

Pero marca error, me imagino que es por que articulo.php no sabe detecta que id es la que debe mostrar. Espero puedan ayudarme.
Exacto, no dejas definida la ID del artículo.

Hazlo de la siguiente forma:
articulo.php
Código PHP:
<?php
include('config.php');

$id = (int) $_GET['id'];

$request mysql_query("SELECT * FROM mitabla WHERE id = $id"); 

while(
$row mysql_fetch_array($request)) {
echo 
'Hola<br />';
echo 
$row['titulo'] . ' - Mensaje: ' $row['mensaje'] . '<br />';
echo 
$row['dato3'];
}
?>
No tengas miedo a preguntas, las dudas a todos nos surgen ;)
  #14 (permalink)  
Antiguo 02/10/2010, 23:34
 
Fecha de Ingreso: julio-2010
Mensajes: 158
Antigüedad: 14 años, 4 meses
Puntos: 3
Respuesta: Ayuda! Urls Amigables desde 0

Cita:
Iniciado por Miguelithox Ver Mensaje
Exacto, no dejas definida la ID del artículo.

Hazlo de la siguiente forma:
articulo.php
Código PHP:
<?php
include('config.php');

$id = (int) $_GET['id'];

$request mysql_query("SELECT * FROM mitabla WHERE id = $id"); 

while(
$row mysql_fetch_array($request)) {
echo 
'Hola<br />';
echo 
$row['titulo'] . ' - Mensaje: ' $row['mensaje'] . '<br />';
echo 
$row['dato3'];
}
?>
No tengas miedo a preguntas, las dudas a todos nos surgen ;)
Pero si la ago de esa forma solo esta capturando la id del articulo, y deberia de capturar la id_articulos y titulo_articulo, por que me marca error si pongo el enlace como me dijiste:

<a href="/articulo/' . $row['ID_ARTICULO'] . '-' . url_amigable($row['titulo']) . '.html">Texto</a>
  #15 (permalink)  
Antiguo 02/10/2010, 23:43
Avatar de Miguelithox  
Fecha de Ingreso: diciembre-2008
Ubicación: Viña del Mar
Mensajes: 287
Antigüedad: 15 años, 10 meses
Puntos: 7
Respuesta: Ayuda! Urls Amigables desde 0

Cita:
Iniciado por cyber_dark Ver Mensaje
Pero si la ago de esa forma solo esta capturando la id del articulo, y deberia de capturar la id_articulos y titulo_articulo, por que me marca error si pongo el enlace como me dijiste:

<a href="/articulo/' . $row['ID_ARTICULO'] . '-' . url_amigable($row['titulo']) . '.html">Texto</a>
Sólo necesitas la ID, el título queda para mejor indexación en google y esas cosas.
¿Qué error te tira?

P.D: Acuérdate cambiar lo de ID_ARTICULO por el nombre real de la id de tu artíclo al igual que el titulo. ($row['ID_TITULO'] y $row['titulo'])
  #16 (permalink)  
Antiguo 02/10/2010, 23:59
 
Fecha de Ingreso: julio-2010
Mensajes: 158
Antigüedad: 14 años, 4 meses
Puntos: 3
Respuesta: Ayuda! Urls Amigables desde 0

No eh olvidado cambiar los nombres reales, me marca error de no encontrar la pagina.
  #17 (permalink)  
Antiguo 03/10/2010, 10:12
Avatar de Miguelithox  
Fecha de Ingreso: diciembre-2008
Ubicación: Viña del Mar
Mensajes: 287
Antigüedad: 15 años, 10 meses
Puntos: 7
Respuesta: Ayuda! Urls Amigables desde 0

¿Pusiste el .htaccess junto con su código?
  #18 (permalink)  
Antiguo 03/10/2010, 12:09
 
Fecha de Ingreso: julio-2010
Mensajes: 158
Antigüedad: 14 años, 4 meses
Puntos: 3
Respuesta: Ayuda! Urls Amigables desde 0

Sí, si lo puse.
  #19 (permalink)  
Antiguo 03/10/2010, 17:52
Avatar de Miguelithox  
Fecha de Ingreso: diciembre-2008
Ubicación: Viña del Mar
Mensajes: 287
Antigüedad: 15 años, 10 meses
Puntos: 7
Respuesta: Ayuda! Urls Amigables desde 0

Cita:
Iniciado por cyber_dark Ver Mensaje
Ninguna otra idea?
Borra todo tu código del .htaccess y cámbialo por este:
Código:
RewriteBase /
RewriteEngine on
Rewriterule ^articulos/(.*)/(.*).html$ articulo.php?id=$1
index.php
Código PHP:
<? include('config.php');

function 
url_amigable($url) { 

// Tranformamos todo a minusculas 

$url strtolower($url); 

//Rememplazamos caracteres especiales latinos 

$find = array('á''é''í''ó''ú''ñ'); 

$repl = array('a''e''i''o''u''n'); 

$url str_replace ($find$repl$url); 

// Añaadimos los guiones 

$find = array(' ''&''\r\n''\n''+'); 
$url str_replace ($find'-'$url); 

// Eliminamos y Reemplazamos demás caracteres especiales 

$find = array('/[^a-z0-9\-<>]/''/[\-]+/''/<[^>]*>/'); 

$repl = array('''-'''); 

$url preg_replace ($find$repl$url); 

return 
$url



$num_por_pag 10;
$resultado mysql_query("
SELECT *
FROM mitabla
ORDER BY id_articulos DESC
LIMIT 0, $num_por_pag
"
); 

while(
$fila mysql_fetch_array($resultado)) {
echo 
'<a href="articulo/' $fila['id_articulo'] . '/' url_amigable($fila['titulo_articulo']) . '.html"> ' $fila['titulo_articulo'] . ' </a><br />';  
}

?>
  #20 (permalink)  
Antiguo 03/10/2010, 19:32
 
Fecha de Ingreso: julio-2010
Mensajes: 158
Antigüedad: 14 años, 4 meses
Puntos: 3
Si funcionaba, me puse a investigar y se me olvido mencionar, que era un subdominio donde estoy trabajando con las urls amigables, tenia que poner:

RewriteBase /misubdominio

Muchisimas gracias por todo Miguelithox y memoadian.

Al agregar eso, ahora tengo que ponerle a mi codigo de una imagen ../../ para que pueda reconecerla, alguna otra solución para este problema?

Última edición por GatorV; 04/10/2010 a las 09:30
  #21 (permalink)  
Antiguo 04/10/2010, 16:52
 
Fecha de Ingreso: julio-2010
Mensajes: 158
Antigüedad: 14 años, 4 meses
Puntos: 3
Respuesta: Ayuda! Urls Amigables desde 0

Insisto, en como puedo hacer para que el numero no salga.

mipagina.com/saludos-a-todos.html

y no

mipagina.com/10/saludos-a-todos.html

Si modifico esto:

<a href="/articulo/' . $row['ID_ARTICULO'] . '/' . url_amigable($row['titulo']) . '.html">Texto</a>

por esto:

<a href="/articulo/' . url_amigable($row['titulo']) . '.html">Texto</a>

No funciona, puesto que el archivo articulo.php no tiene como reconocer la id.
  #22 (permalink)  
Antiguo 04/10/2010, 20:00
Avatar de Miguelithox  
Fecha de Ingreso: diciembre-2008
Ubicación: Viña del Mar
Mensajes: 287
Antigüedad: 15 años, 10 meses
Puntos: 7
Respuesta: Ayuda! Urls Amigables desde 0

Es difícil lo que quieres hacer (Que te reconozca el artículo por título y no por ID), pero no imposible, pero te lo vuelvo a decir, deja la ID así nada más, si no no podrás ver los artículos.
  #23 (permalink)  
Antiguo 04/10/2010, 20:15
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 15 años, 4 meses
Puntos: 641
Respuesta: Ayuda! Urls Amigables desde 0

a ver te diré una forma pero allá tu si luego tienes problemas, ya que quitar el id en estos casos puede generarte muchos problemas.

la forma es que al hacer la consulta, no reconozcas por el id si no por el titulo, pero aqui viene una gran problema y es que dicen los que saben que en las urls no debes tener mayusculas ni signos extraños, por lo que si aplicas esto tendrias que aceptar urls del tipo

http://miweb.com/EL nuevo software de LInux¡¡¡

ya que el titulo de tu post podria ser eso :S que mal ¿no?

se pierde el sentido de urls amigables y ademas limitas los signos en tus posts

ahora bien podrias solucionarlo teniendo una tabla mysql así:

id | nom_post | nom_link
------------------------------------------------
2 | El BUEN linux¡¡¡ | el-buen-linux

para que?

pues facil, al insertar en tu BD cualquier nuevo post al titulo lo guardas en tu BD como nom_post, de este modo lo puedes imprimir en tu web tal como lo guardaste en la BD con acentos, Ñ, etc. y luego le pasas una funcion que te quite todo eso y lo remplaze con guiones como la que ya tienes, despues de eso guardarla como nom link y asi podrás llamarla desde la url
(el problema de esto es que te saldrian dos urls iguales con estos dos titulos por ejemplo
EL Buen LinuX¡¡¡
El buen linux)

una vez entendido el riesgo podemos hacer la consulta
teniendo una url amigable de este modo

http://miweb.com/articulos/la-buena-vida.html

que reescriba en Rewrite rule así

Rewriterule ^articulos/(.*).html$ articulo.php?titulo=$1

tendriamos simplemente que poner esto:

SELECT * FROM mitabla WHERE nom_link = $GET['titulo'];

ahora si, buscamos en la tabla la coincidencia por el titulo del post sin problemas de signos por lo menos y no por el id y con buenos resultados.

espero haya sido claro, y te sirva de algo lo que dije.
  #24 (permalink)  
Antiguo 04/10/2010, 20:47
 
Fecha de Ingreso: julio-2010
Mensajes: 158
Antigüedad: 14 años, 4 meses
Puntos: 3
Respuesta: Ayuda! Urls Amigables desde 0

Pues seria cosa de cambiar:

$id = (int) $_GET['id']
$request = mysql_query("SELECT * FROM mitabla WHERE id = $id");

por:

$id = $_GET['titulo_articulo']
$request = mysql_query("SELECT * FROM mitabla WHERE titulo_articulo = $titulo_articulo");

No? Pero el problema es que $titulo_articulo ya esta transformado, con los guiones y convertido a minusculas.
  #25 (permalink)  
Antiguo 04/10/2010, 21:17
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 15 años, 4 meses
Puntos: 641
Respuesta: Ayuda! Urls Amigables desde 0

lo primero ya lo simplificaste, bien

Cita:
Iniciado por cyber_dark Ver Mensaje
Pues seria cosa de cambiar:
No? Pero el problema es que $titulo_articulo ya esta transformado, con los guiones y convertido a minusculas.
ahora esta parte, seria cosa de modificar los nombres de la base de datos ya que asi no te va a identificar nada pues en tu link esto:

la-buena-vida

no coincide con esto:

La buena vida

por eso decia que pusieras nombre de post y nombre de link o alias en la BD, de este modo se trabaja más facil, de hecho asi lo hago yo para algunas cosas. no precisamente SEO

te lo digo por que si no usas un alias tendrias problemas para imprimir tus post por ejemplo

en el titulo apareceria así

<h1>la-buena-vida</h1>

teniendo los dos ya sabes a cual llamar en cualquier caso, ahora dices que ya esta todo transformado a minusculas, por la funcion que le pasas, pero no es del todo cierto, solo parece que esta transformado, pero si la quitas vuelve a la normalidad, en fin ya sabes bastante, solo es cosa de que te las inegnies.
  #26 (permalink)  
Antiguo 05/10/2010, 18:53
 
Fecha de Ingreso: julio-2010
Mensajes: 158
Antigüedad: 14 años, 4 meses
Puntos: 3
Respuesta: Ayuda! Urls Amigables desde 0

Cita:
Iniciado por memoadian Ver Mensaje
lo primero ya lo simplificaste, bien

por eso decia que pusieras nombre de post y nombre de link o alias en la BD, de este modo se trabaja más facil, de hecho asi lo hago yo para algunas cosas. no precisamente SEO
De hecho eso fue justamente lo que hice, y todo bien, el problema es que solo funciona para los nuevos posts enviados. Para los anteriores ¿no hay forma de que agregue el link al nombre del post, sin que sea manualmente?
  #27 (permalink)  
Antiguo 14/01/2011, 21:04
(Desactivado)
 
Fecha de Ingreso: noviembre-2010
Ubicación: Malaga
Mensajes: 225
Antigüedad: 14 años
Puntos: 0
Respuesta: Ayuda! Urls Amigables desde 0

-Cuando trate de buscar el metodo get por titulo te dara estos 2 errores :

1- el titulo suele contener simbolos por lo cual si el %20 no se encuentra el GET no ara caso.

2- el titulo puee variar y ser semejante a otros entonces todo se ira a la mierda,

lo que quieres hacer deves asignarlo en la base de datos.

Etiquetas: amigables, url
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 18:11.