Categorías
Prestashop

Uncaught Error: Class ‘Tools’ not found. classes/db/Db.php:794

Localize en su servidor el fichero Db.php que se encuentra en /classes/db/Db.php

Busque Tools::nl2br en el código y cambiarlo por nl2br

Antes del cambio

$string = strip_tags(Tools::nl2br($string));

$string = strip_tags(Tools::nl2br($string));

Después del cambio

$string = strip_tags(nl2br($string));

Categorías
Prestashop

Variables globales Prestashop

Información General de la tienda

{$shop.name} Nombre de la tienda 
{$shop.email} Correo electrónico de la tienda 
{$shop.logo} Logotipo de la tienda 
{$shop.favicon} Icono de la tienda (mapa, título de la ventana del navegador, etc.) 
{$shop.address.address1} Dirección de la tienda 1 
{$shop.address.address2} Dirección de la tienda 2 
{$shop.address.postcode} Código postal de la tienda 
{$shop.address.city} Ciudad de la tienda 
{$shop.address.state} Estado (provincia) de la tienda 
{$shop.address.country} País de la tienda 
{$shop.phone} Teléfono de la tienda 
{$shop.fax} Fax de la tienda

Divisas

{$currency.name} Nombre de la moneda en uso (euro, dólar estadounidense, etc.) 
{$currency.iso_code} Moneda Código ISO de la moneda en uso (Eur, USD, etc.) 
{$currency.sign} Símbolo de la moneda en uso (€, $, etc.) 
{$currency.iso_code_num} Número de código ISO de la moneda en uso (978 para euro, 840 para dólar estadounidense, etc.)

Idiomas

{$language.name} Nombre del idioma en uso (ejemplo: inglés) 
{$language.iso_code} Código ISO del idioma en uso (it para italiano, fr para francés, etc.) 
{$language.language_code} Código del idioma en uso (it para italiano, en-us para inglés americano, etc.) 
{$language.is_rtl} (1 cuando el idioma se escribe de derecha a izquierda; 0 si se escribe de izquierda a derecha)   
{$language.id} Valor de ID del idioma en uso

Paginas y elementos del prestashop

{$urls.base_url} Dirección web de la tienda (ejemplo: https://www.themebooster.com) 
{$urls.current_url} Dirección web actual (url), la página que estamos viendo 
{$urls.shop_domain_url} Dominio de la tienda 
{$urls.img_ps_url} Url del directorio raíz de imágenes {$ 
urls.img_cat_url} Url del directorio de imágenes de categorías 
{$urls.img_lang_url} Url del directorio de imágenes de idiomas 
{$urls.img_prod_url} Url del directorio de imágenes de productos 
{$urls.img_manu_url} Url del directorio de imágenes de fabricantes 
{$urls.img_sup_url} Url del directorio de imágenes de proveedores 
{$urls.img_ship_url} Url del directorio de imágenes de transportistas 
{$urls.img_store_url} Url del directorio de imágenes de la tienda física 
{$urls.img_url} Url de directorio de imágenes del tema 
{$urls.css_url} Url del directorio de archivos css que utiliza el tema 
{$urls.js_url} Url del directorio de archivos javascript que utiliza el tema 
{$urls.pic_url} Url del directorio donde se cargaron los archivos 
{$page.page_name} Nombre de la página (plantilla de archivo) 
{$page.meta.title} Título de la página (SEO) 
{$page.meta.description} Contenido de la descripción de la etiqueta (SEO) 
{$page.meta.keywords} Contenido de las palabras clave de la etiqueta (SEO) 
{$page.meta.robots} Regla para buscadores: bloquea o no la indexación de la página (SEO) 
{$page.canonical} Indica la URL canónica (principal) para evitar la duplicación de contenidos (SEO) 
{$urls.pages.address} Url de la sección "Mi dirección" (usuario registrado) 
{$urls.pages.addresses} Url de la sección "Mis direcciones" (usuario registrado) 
{$urls.pages.authentication} Url de la página de autenticación 
{$urls.pages.cart} Url de la página del carrito (resumen del pedido) 
{$urls.pages.category} Url de la categoría 
{$urls.pages.cms} Url de la página (tipo CMS) 
{$urls.pages.contact} Url de la página de contacto 
{$urls.pages.discount} Url de la página de cupones de descuento 
{$urls.pages.guest_tracking} Url de seguimiento para clientes no registrados 
{$urls.pages.history} Url de la página "Historial de pedidos" (usuario registrado) 
{$urls.pages.identity} Url de la página "Datos personales" (usuario registrado) 
{$urls.pages.index} Url de la página de inicio 
{$urls.pages.my_account} Url de la página "Mi cuenta" (usuario registrado) 
{$urls.pages.order_confirmation} URL de la página de "Confirmación de pedido" 
{$urls.pages.order_follow}Url en el "Seguimiento de pedidos" (usuario registrado) 
{$urls.pages.order} Url de la página "Pedido" 
{$urls.pages.order_return} Url de la página "Devolución de pedido" 
{$urls.pages.order_slip} Url de la página "Comprobante de pedido" { 
$urls.pages.pagenotfound} Url del "404 - Página no encontrada" 
{$urls.pages.password} Url de la página "Recuperar contraseña" 
{$urls.pages.pdf_invoice} Url de la factura en PDF 
{$urls.pages.pdf_order_return} Url de devolución de pedido en PDF 
{$urls.pages.pdf_order_slip} Url del comprobante de pedido en PDF 
{$urls.pages.prices_drop} Url de la página "Nuestras ofertas" 
{$urls.pages.product} Url de la página "Producto" 
{$urls.pages.search} Url de la página "Buscar" 
{$urls.pages.sitemap} Url de la página "Mapa del sitio" 
{$urls.pages.stores} Url de la página "Tiendas/Nuestras tiendas" 
{$urls.pages.supplier} Url de la página "Proveedores" 
{$urls.pages.register} Url de la página "Registrarse" 
{$urls.pages.order_login} Url de la página "Login" 
{$urls.theme_assets} Url del directorio "assets" del tema 
{$urls.actions.logout} Url para desconectarse del sitio (usuario registrado)

Carrito

{$cart.totals.total.amount} Importe total del carrito sin moneda (ej: 45,00) 
{$cart.totals.total.value} Importe total del carrito con moneda (ej: 45,00 €) 
{$cart.totals.total_ including_tax.amount} Importe total del carrito, incluidos impuestos, sin moneda (ej: 45,00) 
{$cart.totals.total_ including_tax.value} Importe total del carrito, incluidos impuestos, con moneda (ej: 45,00 €) 
{$cart.totals.total_scribing_tax.amount} Importe total del carrito, excluidos impuestos, sin moneda (ej: 35,70) 
{$cart.totals.total_scribing_tax.value} Importe total del carrito, excluidos impuestos, con moneda (ej: 35,70 €) 
{$cart.products_count} Número de productos en el carrito 
{$cart.subtotals.products.amount} La cantidad de productos en el carrito sin moneda 
{$cart.subtotals.products.value} La cantidad de productos en el carrito con moneda 
{$cart.subtotals.shipping.amount} El monto del envío en el carrito sin moneda 
{$cart.subtotals.shipping.value} El monto del envío en el carrito con moneda

Clientes

{$customer.lastname} Apellido del cliente 
{$customer.firstname} Nombre del cliente 
{$customer.email} Correo electrónico del cliente (proporcionado durante el registro) 
{$customer.birthday} Cumpleaños del cliente 
{$customer.newsletter} Suscrito al boletín informativo (1 si está suscrito, 0 si no está suscrito) 
{$customer.newsletter_date_add} Fecha de suscripción al boletín informativo 
{$customer.ip_registration_newsletter} IP del cliente en el registro del boletín informativo 
{$customer.optin} Suscrito a ofertas de socios (1 si está suscrito, 0 si no está suscrito) 
{$customer.date_add } Registro del cliente 
{$customer.date_upd} Última actualización (registro del cliente) 
{$customer.id} ID del cliente 
{$customer.id_default_group} Grupo de ID al que está asociado el cliente 
{$customer.is_logged} Verificar si el cliente está "conectado" (1 sí, 0 no) 
{$customer.gender.name[$customer.gender.id]} Género del cliente (ejemplo: Sra., Sr., etc.) 
{$customer.addresses[AddressID].city} Ciudad de la dirección del cliente con un ID (AddressID, ejemplo 8, donde 8 es el ID de la dirección del cliente), porque un cliente puede tener varias direcciones 
{$customer.addresses[AddressID].alias} Alias ​​de la dirección 
{$customer.addresses[AddressID].firstname} Nombre del titular de la dirección 
{$customer.addresses[AddressID].lastname} Apellido del titular de la dirección 
{$customer.addresses[AddressID].company} Empresa del titular de la dirección 
{$customer.addresses[AddressID].address1} Dirección 1 del titular de la dirección 
{$customer.addresses[AddressID].address2} Dirección 2 del titular de la dirección 
{$customer.addresses[AddressID].postcode} Código postal del titular de la dirección 
{$customer.addresses[AddressID].id_state} Estado del ID del titular de la dirección 
{$customer.addresses[AddressID].state} Nombre del estado del titular de la dirección 
{$customer.addresses[AddressID].state_iso} Código ISO del estado del titular de la dirección 
{$customer.addresses[AddressID].id_country} País del ID del titular de la dirección {$customer.addresses[ 
AddressID].country} Nombre del país del titular de la dirección 
{$customer.addresses[AddressID].country_iso} País ISO del titular de la dirección 
{$customer.addresses[AddressID].phone} Teléfono del titular de la dirección 
{$customer.addresses[AddressID].phone_mobile} Teléfono móvil del titular de la dirección 
{$customer.addresses[AddressID].dni} DNI del titular de la dirección 
{$customer.addresses[AddressID].vat_number} Número de IVA del titular de la dirección
{$customer.addresses[AddressID].formatted} Dirección Dirección formateada del titular

Ejemplos de condiciones mas utilizadas en prestashop

Si estas en la pagina de Inicio/Home

{if $page.page_name == 'index'}
  contenido a mostrar
{/if}

Si estas en una página de contenido (CMS)

{if $page.page_name == 'cms'}
   contenido a mostrar 
{/if}

Si estas en la página del carrito

{if $page.page_name == 'cart'}
   contenido a mostrar 
{/if}

Si el usuario ha iniciado sesión (login)

{if $customer.is_logged}
   contenido para mostrar 
{/if}

Mostrar un mensaje de bienvenida traducible y el nombre si el usuario que ha iniciado sesión

{if $customer.is_logged && $customer.firstname} 
  {l s='Hi' d='Shop.Theme.Global'} {$customer.firstname}
{/if}

Mostrar un mensaje traducible en función de si el usuario está registrado o no a la Newsletter

{if $customer.newsletter == 0}
  {l s='¡Suscríbete a nuestro boletín!' d='Shop.Theme.Customeraccount'}
{else}
  {l s='Ya estás suscrito a nuestra newsletter' d='Shop.Theme.Customeraccount'}
{/if}

Categorías
Prestashop

Como borrar los datos de la demo de prestashop

Para ello debemos dirigirnos a los módulos y buscar el de «PrestaShop Cleaner» es totalmente gratuito y desarrollado por PrestaShop

Una vez instalado, pulsamos en configurar y podemos elegir que borrar.

Catálogo

Esta parte elimina productos, características, categorías, etiquetas, imágenes, precios, adjuntos, escenas, stock de productos, grupos de atributos y valores, fabricantes, proveedores…

Pedidos y clientes

Este sección eliminará clientes, carritos, pedidos, conexiones, invitados, mensajes, estadísticas …

Limitaciones de la integridad funcional

Comprueba que todas las relaciones/integridad estén correctas

Limpieza de la base de datos

Elimina todos los residuos que han quedado de la demo

Categorías
Prestashop

Activar SSL mediante la base de datos

La solución es entrar en la base de datos y en la tabla de prefijo_configuration (el prefijo va depende de tu configuracion)

Buscar los campos PS_SSL_ENABLED y PS_SSL_ENABLED_EVERYWHERE y poner los 2 valores a 1 que sería activado, con esto activamos el SSL en la tienda y en todas las páginas

Si por el contrario queremos desactivarlo, pondremos los valores de esos campos a 0

Categorías
Prestashop

¿Como poner el slider de la home del prestashop al 100% de la pantalla?

Te vas a la ruta del servidor themes/classic/assets/css/custom.css 

body.page-index #wrapper .container{max-width:100%;width:100%;padding-left:0;padding-right:0}
 body.page-index #wrapper .featured-products,body.page-index #wrapper .banner,body.page-index #wrapper #custom-text{margin:0 15px}
 @media (min-width: 992px) {
 body.page-index #wrapper .featured-products,body.page-index #wrapper .banner,body.page-index #wrapper #custom-text{max-width:940px}
 }
 @media (min-width: 1200px) {
 body.page-index #wrapper .featured-products,body.page-index #wrapper .banner,body.page-index #wrapper #custom-text{max-width:1140px}
 }
 @media (max-width: 991px) {
 body.page-index #wrapper .featured-products,body.page-index #wrapper .banner,body.page-index #wrapper #custom-text{max-width:100%}
 }
 .carousel-control .icon-prev,.carousel-control .icon-next{margin:0}
Categorías
Prestashop

¿Como quitar el cuadro de seleccionar moneda en prestashop?

Tienes que ir a la sección de módulos y buscar «moneda» y pulsar en desactivar el modulo, ya no te aparecerá el selector.

Categorías
Prestashop

PrestaShop 1.6.x. Error “An error occurred while updating an object. product ()”

Para solucionar este problema “An error occurred while updating an object. product ()”

Usted debe ejecutar las siguientes SQL en su servidor de base de datos, cambiado ps_ por el prefijo de su base de datos.

ALTER TABLE `ps_product` ADD` pack_stock_type` int (11) DEFAULT UNSIGNED '3';
ALTER TABLE `ps_product_shop` ADD` pack_stock_type` int (11) DEFAULT UNSIGNED '3';
ALTER TABLE `ps_pack` ADD` id_product_attribute_item` int (10) NOT NULL UNSIGNED DESPUÉS `id_product_item`;
ALTER TABLE `ps_pack` DROP PRIMARY KEY