September 12th, 2008 Category: Zend Framework
6 Comments »
Ayer estrenamos el primer portal de noticias hecho exclusivamente con Zend Framework.
Titulos Regionales, es el nombre que le dio el cliente al portal.
Todavia nos falta mucho desarrollo, y varios detalles. Pero sobre la marcha vamos a ir corrigiendo los problemas, y cosas que falten.
Activar opciones de SEO, que por lo que estuve viendo en ZF, lo puedo solucionar muy facil sin la necesidad de agregar reglas de ruteo al Zend_Route, y .htaccess, ya que si le agrego un parametro final a las url, con el nombre del titulo .html, las toma igual, porque interpreta a ese nombre como un parametro mas por get
.
Enlace: http://www.titulosregionales.com.ar/
Invitame una Cerverza
Comentar
6 Responses
http://www.titulosregionales.com.ar/noticias/ver/noticia/461/
es lo mismo que
http://www.titulosregionales.com.ar/noticias/ver/noticia/461/la-ues-rosario-recordara-la-noche-de-los-lapices.html
Es mas que nada un hack, no es nada especial, y seria bueno implementar la forma correcta, pero por eso aclaro que es como un hack.
Para ver una noticia, tenes que llamar al controller Noticias, al action Ver, y le pasas una variable noticia=461, de esta forma funciona actualmente, el modulo, pero si yo ademas a la url le agrego un string mas, como si fuera el nombre del archivo /la-ues-rosario-recordara-la-noche-de-los-lapices.html el buscador (supongo), lo va a interpretar como si fuera la pagina en cuestion. Pero esto solo serviria para disfrazar la url.
http://www.titulosregionales.com.ar/noticias/la-ues-rosario-recordara-la-noche-de-los-lapices.html
Es decir, quitar "ver", "noticia" y "461" pues no aportan nada. Además cuanto más larga es la URL, menos peso cogen sus términos. Y un término, cuando más a la derecha de la URL, menos peso tiene.
Veo que tu página no es multi-idioma, yo ahora investigo si es posible traducir las URL's con el Zend_Controller_Router_Route. Es decir que quedase algo como:
http://www.titulosregionales.com.ar/news/ues-rosario-remembering-pencils-night.html
(las traducciones sacadas de un TMX por ejemplo)
Si alguien sabe algo....
Saludos!
Pero yo estaba proponiendo una solucion casi sin tocar codigo.
Tene en cuenta, que ver, si lo voy a necesitar, porque me determina el action del controller, y en este caso, ver no es el unico que tiene. Esta buena la data que me das de la prioridad de la url.
$frontController = Zend_Controller_Front::getInstance();
$router = $frontController->getRouter();
$routeIdioma = new Zend_Controller_Router_Route(
':module/:submodule/*', // tomas 2 parámetros de URL
array(
'mycontroller' => 'ver',
'module' => $defaultNamespace->module,
'submodule' => $defaultNamespace->submodule
)
);
$router->addRoute('route_idioma', $routeIdioma);
$frontController->setRouter($router);
Los parámetros module y submodule se toman de la URL. En el caso de que tuvieras: http://www.titulosregionales.com.ar/noticias/la-ues-rosario-recordara-la-noche-de-los-lapices.html, tendríamos que:
module = noticias
submodule = la-ues-rosario-recordara-la-noche-de-los-lapices.html
El parámero "ver" se pasaría como parámetro y no aparecería en la URL, dando relevancia SEO a los términos que verdaderamente pueden aportarte peso.
Espero te sirva.
Saludos !
Pero mi problema es que ver no es el controller, sino el Action. Mi controller es el Noticias::verAction(); esta seria la relacion.
Pero me interesa, lo que aportas sobre SEO.


