Ordenar alfabéticamente las etiquetas en el bloque de etiquetas de Prestashop

Para ordenar alfabéticamente las etiquetas, en el bloque de etiquetas de Prestashop, podemos hacer lo siguiente:

Vamos al fichero:

/classes/Tag.php

Buscamos lo siguiente:


public static function getMainTags($id_lang, $nb = 10)
{
$groups = FrontController::getCurrentCustomerGroups();
$sqlGroups = (count($groups) ? 'IN ('.implode(',', $groups).')' : '= 1');

return Db::getInstance(_PS_USE_SQL_SLAVE_)->ExecuteS('
SELECT t.name, COUNT(pt.id_tag) AS times
FROM `'._DB_PREFIX_.'product_tag` pt
LEFT JOIN `'._DB_PREFIX_.'tag` t ON (t.id_tag = pt.id_tag)
LEFT JOIN `'._DB_PREFIX_.'product` p ON (p.id_product = pt.id_product)
WHERE t.`id_lang` = '.(int)($id_lang).'
AND p.`active` = 1
AND p.`id_product` IN (
SELECT cp.`id_product`
FROM `'._DB_PREFIX_.'category_group` cg
LEFT JOIN `'._DB_PREFIX_.'category_product` cp ON (cp.`id_category` = cg.`id_category`)
WHERE cg.`id_group` '.$sqlGroups.'
)
GROUP BY t.id_tag
ORDER BY times DESC
LIMIT 0, '.(int)($nb));
}

Continúa leyendo Ordenar alfabéticamente las etiquetas en el bloque de etiquetas de Prestashop

Reseña – Módulo para entrar como cliente desde el panel de administración en Prestashop

Lo primero de todo el autor del módulo es axelmdp (El módulo es totalmente gratuito)

¿Qué hace el módulo?

El módulo permite desde el panel administración, el poder seleccionar un cliente registrado y que podamos entrar en la tienda con sus credenciales.

Continúa leyendo Reseña – Módulo para entrar como cliente desde el panel de administración en Prestashop

Desactivar registros automáticos en Prestashop

Es posible que nos entre la necesidad de que cuando los usuarios se registren en la tienda, estos registros no sean activados automáticamente (y luego poder activarlos desde la zona de clientes en el panel de administración), para ello podemos ir al siguiente fichero:

El fichero que debemos modificar es:

/controllers/AuthController.php

Buscamos la siguiente línea de código:

$customer->active = 1;

Y simplemente la cambiamos por:

$customer->active = 0;

Como podéis ver, hemos cambiado el valor 1 por 0.

1 => Activado por defecto
0 => Desactivado por defecto

Continúa leyendo Desactivar registros automáticos en Prestashop

Mostrar solo los nuevos productos en el feed en Prestashop

Prestashop lleva un módulo llamado “Fuente de productos RSS“,  pero este módulo no está preparado para mostrar los nuevos productos, simplemente muestra los productos destacados, pero nos puede entrar la necesidad de modificarlo para mostrar solo los nuevos productos.

Para eso debemos ir al fichero:

/modules/feeder/rss.php

Buscar la siguiente línea:

$products = Product::getProducts((int)($cookie->id_lang), 0, ($number > 10 ? 10 : $number), $orderBy, $orderWay, $id_category, true);

Continúa leyendo Mostrar solo los nuevos productos en el feed en Prestashop

Borrar historial de stock (movimientos de stock) en Prestashop

Historial de stock en Prestashop
Historial de stock en Prestashop

Es posible, que de pronto nos entre la necesidad dejar la siguiente pantalla vacía:

Para vaciar el historial de movimientos de stock, tenemos varias opciones, una seria ejecutar la siguiente de instrucción en la consola SQL:

TRUNCATE `prefijotabla_stock_mvt` ;

También, podemos editar el siguiente fichero:
Continúa leyendo Borrar historial de stock (movimientos de stock) en Prestashop

Como generar traducciones manuales en Prestashop

Es posible que, en un momento, nos entre la curiosidad de realizar las traducciones manuales en los ficheros de los lenguajes, por ejemplo si abrimos el fichero es.php de la plantilla por defecto, vemos las siguientes lineas:

(Solo pego un extracto)


$_LANG['404_1d3ac0a5826e47e3c2761085e97877f6'] = 'Página no disponible';
$_LANG['404_902b0d55fddef6f8d651fe1035b7d4bd'] = 'Error';
$_LANG['404_4f4816c6984e3c832882b39d8fecbd2c'] = 'Lo sentimos, la página no se encuentra disponible.';
$_LANG['404_21dfea356c48679a5ce6671ee307d2a4'] = 'Para buscar un artículo, por favor, indique su nombre en el siguiente campo:';
$_LANG['404_a68ba7d969d1294a35138fa501dfb078'] = 'Busque en nuestra tienda:';

Continúa leyendo Como generar traducciones manuales en Prestashop

Ocultar fecha de creación de cuenta del cliente en el Back-Office en Prestashop

Puede ser que nos entre la necesidad en un futuro ocultar la fecha de la creación de la cuenta en el panel de administración de la tienda:

Fecha registro clientes Prestashop
Fecha registro clientes Prestashop

Para ello debemos modificar el fichero: carpeta-administracion/tabs/AdminCustomers.php
Continúa leyendo Ocultar fecha de creación de cuenta del cliente en el Back-Office en Prestashop

Borrar notificación de actualizaciones al entrar al panel de administración en Prestashop

Para borrar las notificaciones de actualizaciones en Prestashop al entrar al panel de administración debemos ir al siguiente fichero:

directorio_administracion/tabs/AdminHome.php

Buscar estas líneas:

if (@ini_get('allow_url_fopen'))
{
$upgrade = new Upgrader();
if($update = $upgrade->checkPSVersion())
echo '<div style="margin-bottom:30px;"><h3>'.$this->l('New PrestaShop version available').' : <a style="text-decoration: underline;" href="'.$update['link'].'" target="_blank">'.$this->l('Download').'&amp;nbsp;'.$update['name'].'</a> !</h3></div>';
}
else
{
echo '<p>'.$this->l('Update notification unavailable').'</p>';
echo '<p>&amp;nbsp;</p>';
echo '<p>'.$this->l('To receive PrestaShop update warnings, you need to activate the <b>allow_url_fopen</b> command in your <b>php.ini</b> config file.').' [<a href="http://www.php.net/manual/'.$isoUser.'/ref.filesystem.php">'.$this->l('more info').'</a>]</p>';
echo '<p>'.$this->l('If you don\'t know how to do that, please contact your host administrator !').'</p><br />';
}

Continúa leyendo Borrar notificación de actualizaciones al entrar al panel de administración en Prestashop

Falta error: Out of memory en Prestashop

En determinadas ocasiones debido a las restricciones del hosting donde tengamos alojada la tienda, nos puede saltar un error de este tipo.

Fatal error: Out of memory (allocated .......)

Este error es posible solventarlo, si accedemos al fichero config/config.inc.php y añadimos esta línea:

ini_set('memory_limit','128M');

En caso de que no funcionara, tendríamos que pedirle la ampliación al mismo hosting. Los 128M los he colocado a modo de ejemplo, en vuestro caso si el allocated supera al final los 128M, deberías poner un límite más alto. Continúa leyendo Falta error: Out of memory en Prestashop