Buscar por codigo S...
 
Avisos
Vaciar todo

Buscar por codigo SKU

9 Respuestas
4 Usuarios
0 Reactions
5,320 Visitas
Respuestas: 44
Eminent Member
Topic starter
 

Buenas tardes,
al realizar una busqueda por el Cod SKU, tanto por el Backend como por el Frond el sistema no me localiza ningun articulo de los ingresados en la basa de articulos, a que puede deberse esto ?..en configuracion tengo clicado la opcion e busqueda SKU.

jOOMLA 2.5
vIRTUEMART 2.0

Muchas gracias.

URL del sitio: http://juguete3-cp47.webjoomla.es/index.php?option=com_virtuemart&view=category&virtuemart_category_id=20


 
Respondido : 27/03/2012 6:08 pm
Jhon
 Jhon
Respuestas: 44989
Illustrious Member Moderator
 

Hola Carlos

Al parecer es un bug de virtuemart, puedes revisar los siguientes hilos de discusión:
http://forum.virtuemart.net/index.php?topic=96837.0
http://forum.virtuemart.net/index.php?topic=96283.0

Saludos.


 
Respondido : 27/03/2012 6:47 pm
Respuestas: 44
Eminent Member
Topic starter
 

Muchas gracias Jhon,
ya funciona en el Frond haciendo los cambios sugeridosen el segundo link, ahora solo queda en el Back...

Un saludo


 
Respondido : 27/03/2012 8:06 pm
Luis Mendez Alejo
Respuestas: 23273
Illustrious Member
 

Hola Carlos Llanes,

¿Puedes indicarnos en detalle que es lo que queda del backend referente al fallo de Virtuemart?

Si procede documentalo con capturas por favor.

Saludos


 
Respondido : 27/03/2012 10:20 pm
Respuestas: 44
Eminent Member
Topic starter
 

Buenas,
pues veras es muy extraño ya que me he dado cuanta que ahora tampoco funciona en el Frond, he ido al fichero product.php y las dos lineas edidatas apesar de gravarlas ahora ya vuelven a su estado anterior sin el añadido product_sku:

Around Line 94 Replace This:
Code: [Select]

$this->valid_search_fields= array('product_name');

With This:
Code: [Select]

$this->valid_search_fields= array('product_name','product_sku');

Around Line 132 Replace This:
Code: [Select]

$valid_search_fields = array('product_name');

With This:
Code: [Select]

$valid_search_fields = array('product_name','product_sku');


 
Respondido : 28/03/2012 7:02 am
David Noguera
Respuestas: 4433
Famed Member Moderator
 

Hola Carlos, entiendo por lo que dices que has grabado los cambios pero al cabo del rato vuelven a estar como estaban anteriormente??

Has aplicado alguna atcualización de VirtueMart mientras tanto??

Saludos!


 
Respondido : 28/03/2012 9:35 am
Respuestas: 44
Eminent Member
Topic starter
 

Buenas David,
ya he localizado el problema reside en los permisos de escritira del fichero, ahora ya esta ok, pero surge otro problemilla, veras la mayoria de los articulos que comercializamos tienen el codigo SKU 1-11111 me explico casi siempre contiene un guion medio despues del primer digito y el buscador omite este simbolo y por ello no encuentra los SKU...

Gracies,


 
Respondido : 28/03/2012 4:26 pm
David Noguera
Respuestas: 4433
Famed Member Moderator
 

Hola Carlos,

parece que el problema está en que VirtueMart elimina ciertos caracteres de antes de hacer la búsqueda (escapa el código) lo cual está bien, pero en este caso a tí te fastidia.. por que no te deja buscar tus SKUs.., busca en el fichero / administrator / components / com_virtuemart / models / product.php

Esta línea de código:

$keyword = '"%' . $this->_db->getEscaped($this->keyword, true) . '%"';

y déjala así:

$app = JFactory::getApplication();
if($app->isSite() ){
   $keyword = '"%' . $this->_db->getEscaped($this->keyword, true) . '%"';
}else{
   $keyword = '"%' . $this->keyword . '%"';
}

Si te fijas he quitado el escape para hacer las búsquedas desde el Backend, pero lo he mantenido desde el frontend, ya que es peligroso quitar el escape, por que pueden usar ese campo de bíusqueda para hacerte una inyección SQL y hackearte fácilmente el sitio...

Desde el backend lo he dejado sin escape por que entiendo que lo vas a usar tú únicamente y no vas a hacer ninguna inyección SQL, pero has de tener cuidado con quien usa el backend de tu sitio...

De esta forma debería de dejarte..

PD: Desde aquí se puede ver el código del fichero: https://github.com/VirtueMart/virtuemart/blob/master/administrator/components/com_virtuemart/models/product.php

Saludos!!


 
Respondido : 28/03/2012 5:31 pm
Respuestas: 44
Eminent Member
Topic starter
 

Muchas gracias David.


 
Respondido : 28/03/2012 8:25 pm