LogoLogo
Homepage
  • Documentations for PrestaShop 1.6
  • English documentation 1.6
    • Getting Started
      • What you need to get started
      • Installing PrestaShop
      • Installing PrestaShop on your computer
      • Installing PrestaShop using the command-line script
      • Updating and Uninstalling PrestaShop
      • Misc. information
    • Updating PrestaShop
      • Automatic update
      • Manual update
      • Making and restoring your own backup
      • In case of issues
    • User Guide
      • Training
      • Customizing your shop
      • Connecting to the PrestaShop back office
      • Discovering the Administration Area
      • Getting on board of PrestaShop
      • First steps with PrestaShop 1.6
      • Managing the Catalog
        • Managing Products
        • Managing Categories
        • Monitoring Your Catalog
        • Managing Product Attributes
        • Managing Product Features
        • Managing Manufacturers
        • Managing Suppliers
        • Building Image Maps
        • Managing Tags
        • Managing Attachments
      • Managing Orders
        • Orders
        • Invoices
        • Merchandise Returns
        • Delivery Slips
        • Credit Slips
        • Statuses
        • Order Messages
      • Managing Customers
        • Your customers
        • Customer addresses
        • Customer Groups
        • Shopping Carts
        • Customer Service
        • Your Contacts
        • Social Titles
        • Outstanding
      • Creating Price Rules and Vouchers
        • Cart Rules
        • Catalog price rules
        • Marketing modules
      • Managing Modules and Themes
        • Your Modules
        • Modules and Themes Catalog
        • Front office Positions
        • Payment Settings
      • Making the Native Modules Work
        • Administration modules
        • Advertising and Marketing modules
        • Analytics and Stats modules
        • Billing & Invoicing modules
        • Dashboard modules
        • Front Office Features modules
        • Mobile modules
        • Pricing and Promotions modules
        • SEO modules
        • Search and Filter modules
        • Shipping and Logistics modules
        • Site certification & Fraud prevention modules
        • Smart Shopping modules
        • Taxes & Invoicing modules
        • Translation modules
      • Managing Shipping
        • Managing Carriers
        • Shipping Preferences
      • Understanding Local Settings
        • Localization
        • Languages
        • Zones
        • Countries
        • States
        • Currencies
        • Taxes
        • Tax Rules
        • Translations
      • Understanding the Preferences
        • General Preferences
        • Orders Preferences
        • Products Preferences
        • Customers Preferences
        • Themes Preferences
        • SEO & URLs Preferences
        • CMS - Managing Static Content
        • Images Preferences
        • Store Contacts Preferences
        • Search Preferences
        • Maintenance Settings
        • Geolocation Preferences
      • Understanding the Advanced Parameters
        • Configuration Information
        • Performance Parameters
        • E-Mail Parameters
        • Multistore Parameters
        • CSV Import Parameters
        • DB Backup
        • SQL Manager
        • Logs Parameters
        • Webservice Parameters
      • Administering the back office
        • Administration Preferences
        • Quick Access Configuration
        • Employees Accounts Configuration
        • Employee Profiles
        • Profile permissions
        • Administration Menus Configuration
        • Merchant Expertise
      • Understanding Statistics
        • Statistics
        • Search Engines
        • Referrers
      • Advanced Stock Management
        • General Concepts
        • Presenting the Stock Management Interface
        • Stock Management Rules
      • Managing Multiple Shops
        • The multistore interface
        • Creating a new shop group
        • Creating a new shop
        • Setting a shop's URL
        • Sample Usages and Specifics
      • Complying with the GDPR
    • Developer Guide
      • Coding Standards
        • PHP Coding Standards
          • Pre-1.6.1.0 PHP Coding Standards
        • JavaScript Coding Standards
        • CSS, HTML, Smarty & Twig Coding Standards
        • Commits & Pull-requests Conventions
        • SQL Guidelines
      • Fundamentals of PrestaShop Development
      • Setting Up Your Local Development Environment
      • Diving into PrestaShop Core Development
        • Accessing the database
        • The Dispatcher
        • Controllers within PrestaShop
        • Views within PrestaShop
        • Managing Cookies
        • Managing Hooks
      • Creating a PrestaShop Module
        • What is a PrestaShop module?
        • Creating a first module
        • About the config.xml file
        • Adding a configuration page
        • Displaying content on the front office
        • Module translation
        • Enabling the Auto-Update
        • Development Troubleshooting
        • 1.6-specific Developer Documentation
          • Creating a Dashboard Module
          • Making your module work with Bootstrap
        • Miscellaneous developer documentation
          • Specifics of multistore module development
          • The Backward Compatibility Toolkit: Making your 1.5+ module compatible with PrestaS
          • Creating a payment module
          • Creating a carrier module
          • Tying your module to your Addons account
      • Developer tutorials
        • Best Practices of the Db Class
        • Developer tips and tricks
        • Handling special characters in links
        • Overriding default behaviors
        • PrestaShop's developer tools
        • Using jQuery and jQueryUI
        • Using the backward compatibility toolkit
        • Using the Context Object
        • Using the Helper classes
          • Using the HelperForm class
          • Using the HelperOptions class
          • Using the HelperList class
        • Using the PrestaShop Web Service
          • Web service one-page documentation
          • Web service tutorial
            • Chapter 1 - Creating an access to the back office
            • Chapter 2 - Discovery: Testing your access to the web service with the browser
            • Chapter 3 - First steps: Accessing the web service and listing customers
            • Chapter 4 - Data retrieval: Retrieving a customer
            • Chapter 5 - Data modification: Updating a customer
            • Chapter 6 - Data creation: Creating a remote online form
            • Chapter 7 - Data removal: Removing customer accounts from the database
            • Chapter 8 - Advanced use
            • Chapter 9 - Image management
            • Chapter 10 - Price management
            • Cheat-sheet: Concepts outlined in this tutorial
          • Web service reference
      • Contributing to PrestaShop
        • Contributing code to PrestaShop
        • How to use the Forge to contribute to PrestaShop
        • How to write a commit message
      • PrestaShop Cloud-specific development
    • Designer Guide
      • Theme development fundamentals
      • Organization of a Theme
      • Laying the Theme's Foundations
      • Theme templates and Smarty
      • Using jQuery and Ajax
      • Best practices
      • Bootstrap, Sass and Compass in PrestaShop 1.6
        • Using Bootstrap
        • Using Sass
        • Using Compass
      • Tying your theme to your Addons account
    • System Administrator Guide
      • Making your PrestaShop installation more secure
    • Merchant's Guide
      • Our e-commerce advices
      • Sample price rules
    • FAQ
      • Using PrestaShop 1.6 with WordPress
    • Troubleshooting
  • Documentation française 1.6
    • Guide de démarrage
      • Ce dont vous avez besoin
      • Installer PrestaShop
      • Installer PrestaShop sur votre propre ordinateur
      • Installer PrestaShop en ligne de commande
      • Mettre PrestaShop à jour
      • Informations diverses
    • Guide de mise à jour
      • Mise à jour automatique
      • Mise à jour manuelle
      • Faire une sauvegarde et la restaurer
      • En cas de problème
    • Guide de l'utilisateur
      • Formations
      • Personnaliser votre boutique
      • Se connecter au back-office de PrestaShop
      • Découvrir la zone d'administration
      • Premiers pas avec PrestaShop 1.6
      • Gérer le catalogue
        • Gérer les produits
        • Gérer les catégories
        • Faire le suivi de votre catalogue
        • Gérer les attributs de vos produits
        • Gérer les caractéristiques de vos produits
        • Gérer les fabricants
        • Gérer les fournisseurs
        • Construire des scènes
        • Gérer les mots-clés (tags)
        • Gérer les documents joints
      • Gérer les commandes
        • Commandes
        • Factures
        • Retours produits
        • Bons de livraison
        • Avoirs
        • États de commande
        • Messages prédéfinis
      • Gérer les clients
        • Vos clients
        • Adresses des clients
        • Groupes de clients
        • Paniers
        • Service Après-Vente
        • Vos contacts
        • Titres de civilité
        • Encours autorisés
      • Mettre en place des promotions
        • Règles paniers
        • Règles de prix catalogue
        • Modules marketing
      • Gérer les modules et les thèmes
        • Vos modules
        • Catalogue de modules et thèmes
        • Positions sur le front-office
        • Paramètres de paiement
      • Configurer les modules natifs
        • Modules Administration
        • Modules Drop-shipping
        • Modules Facturation
        • Modules Fonctionnalités front-office
        • Modules Guides d'achats
        • Modules Mobile
        • Modules Paiement
        • Modules Places de marché
        • Modules Prix & Promotion
        • Modules Publicité et marketing
        • Modules Recherche et filtres
        • Modules Référencement - SEO
        • Modules Sécurité des Paiements
        • Modules Statistiques et Analyses
        • Modules Transporteur et logistique
        • Modules Traduction
      • Gérer la livraison
        • Gérer les transporteurs
        • Préférences de livraison
      • Comprendre les réglages locaux
        • Localisation
        • Langues
        • Zones (fr)
        • Pays
        • États
        • Devises
        • Taxes (fr)
        • Règles de taxe
        • Traductions
      • Comprendre les préférences
        • Préférences générales
        • Préférences des commandes
        • Préférences des produits
        • Préférences des clients
        • Préférences des thèmes
        • Préférences SEO & URL
        • CMS - Gérer le contenu statique
        • Préférences des images
        • Préférences des coordonnées & magasins
        • Préférences de la recherche
        • Préférences de maintenance
        • Préférences de géolocalisation
      • Comprendre les paramètres avancés
        • Informations de configuration
        • Paramètres de performances
        • Paramètres des e-mails
        • Paramètres multiboutique
        • Paramètres d'import CSV
        • Sauvegarde BDD
        • Gestionnaire SQL
        • Paramètres de log
        • Paramètres du service web
      • Administrer le back-office
        • Préférences de l'administration
        • Configuration de l'Accès rapide
        • Configuration des comptes des employés
        • Profils des employés
        • Permissions des employés
        • Configuration des menus de l'administration
        • Expertise PrestaShop (Merchant Expertise)
      • Comprendre les statistiques
        • Statistiques
        • Moteurs de recherche
        • Affiliés
      • Gestion avancée des stocks
        • Concepts généraux
        • Présentation des interfaces gestion des stocks
        • Règles de gestion des stocks
      • Gérer plusieurs boutiques
        • L'interface multiboutique
        • Créer un nouveau groupe de boutiques
        • Créer une nouvelle boutique
        • Mettre en place l'adresse d'une boutique
        • Exemples d'utilisations et utilisations spécifiques
      • Embarquer à bord de PrestaShop
      • Etre conforme au RGPD
    • Guide du développeur
      • Adapter votre module à Bootstrap
      • Créer un module pour le tableau de bord
    • Guide de l'administrateur système
      • Rendre votre installation de PrestaShop plus sûre
      • Nos bons conseils
    • Guide du vendeur
      • Exemples de promotions
    • Questions fréquentes
    • Dépannage
  • Documentación española 1.6
    • Guía de Actualización
      • PrestaShop 1.6 : Actualización automática
      • PrestaShop 1.6 : Actualización manual
    • Introducción
      • Lo que necesita para empezar
      • Instalación de PrestaShop
      • Instalación de PrestaShop en su ordenador
      • Instalación de PrestaShop utilizando la secuencia de línea de comandos
      • Actualizar y desinstalar Prestashop
      • Informaciones diversas
    • Guía del Usuario
      • Formación
      • Personalización de tu tienda
      • Conexión al back-office de PrestaShop
      • Descubriendo el Área de Administración
      • Súbete a bordo de Prestashop - Haz un recorrido guiado
      • Primeros pasos con PrestaShop 1.6
      • Gestionar el Catálogo
        • Gestionar Productos
        • Gestionar Categorías
        • Monitorear tu Catálogo
        • Gestionar Atributos del Producto
        • Gestionar Características del Producto
        • Gestionar Fabricantes
        • Gestionar Proveedores
        • Gestionar Etiquetas
        • Mapeo de imágenes
        • Gestionar Archivos adjuntos
      • Gestionar Pedidos
        • Pedidos
        • Facturas
        • Devoluciones de mercancía
        • Albaránes de entrega
        • Facturas por abono (Notas de crédito)
        • Estados de Pedidos
        • Mensajes para Pedidos predefinidos
      • Gestionar Clientes
        • Tus clientes
        • PrestaShop 1.6 : Direcciones de clientes
        • Grupos de clientes
        • Carritos de compra
        • Servicio de atención al cliente
        • Tus Contactos
        • Tratamientos (Títulos sociales)
        • Saldo pendiente por cobrar (B2B)
      • Crear Reglas de precios y Cupones de descuento
        • Reglas del carrito
        • Reglas de Precios del catálogo
        • Módulos de Marketing
      • Gestionar Módulos y Temas
        • Tus Módulos
        • Catálogo de Módulos y Temas
        • Posiciones de los módulos en el Front-Office
        • Configurar Métodos de pago y restricciones
      • Configurar y trabajar con los Módulos nativos
        • Módulos de Administración
        • Módulos de Publicidad y Marketing
        • Módulos de Análisis y Estadísticas
        • Módulos de Impuestos y Facturación
        • Módulos Inicio
        • Módulos de Aplicaciones Front-Office
        • Módulos de Mercado
        • Módulos de Dispositivos móviles
        • Módulos de Pago Seguro
        • Módulos de Plataformas de pago
        • Módulos de Precios y Descuentos
        • Módulos SEO
        • Módulos de Búsqueda y Filtrado
        • Módulos de Envío y Logística
        • Módulos de Compras Inteligentes
        • Módulos de Traducciones
      • Gestionar Transporte
        • Gestionar Transportistas
        • Preferencias de Transporte
      • Comprender la configuración local
        • Localización
        • Idiomas
        • Zonas
        • Países
        • Provincias (Estados)
        • Monedas
        • Impuestos
        • Reglas de impuestos
        • Traducciones
      • Comprender las Preferencias
        • Preferencias Generales
        • Preferencias de Pedidos
        • Preferencias de Productos
        • Preferencias de Clientes
        • Preferencias de Temas
        • Preferencias SEO y URLs
        • CMS - Gestionar el Contenido Estático
        • Preferencias de Imágenes
        • Preferencias de Contactos de la tienda
        • Preferencias de Búsqueda
        • Preferencias de Mantenimiento
        • Preferencias de Geolocalización
      • Comprender los Parámetros avanzados
        • Información sobre la Configuración
        • Parámetros de Rendimiento
        • Parámetros de Correo electrónico
        • Parámetros Multitienda
        • Parámetros de Importación de archivos CSV
        • Copia de seguridad de la Base de Datos
        • Gestor de consultas SQL
        • Parámetros de Registros/Logs
        • Parámetros Webservice
      • Administrar el Back-Office
        • Administración de Preferencias
        • Configuración de Acceso rápido
        • Configuración de Cuentas de Empleados
        • Perfiles de Empleados
        • Permisos de Perfiles
        • Configuración de Menús de Administración
        • Experiencia Comercial (Experiencia minorista)
      • Comprender las Estadísticas
        • Estadísticas
        • Motores de búsqueda
        • Programa de afiliados
      • Gestión avanzada de stock
        • Conceptos Generales
        • Presentación de la interfaz back-office para gestionar el stock
        • Reglas del sistema de gestión
      • Gestionar múltiples tiendas
        • La interfaz multitienda
        • Crear un nuevo grupo de tiendas
        • Crear una nueva tienda
        • Configurar la URL de una tienda
        • Ejemplos de usos del modo multitienda
      • Cumplimiento de la legislación europea del RGPD
    • Guía del Desarrollador
      • Estándares de Codificación
  • Deutsche Dokumentation 1.6
    • Erste Schritte
      • Was für die Installation benötigt wird
    • Benutzerhandbuch
      • Übungen
      • Anpassung des Shops
      • Der PrestaShop Adminbereich
      • Entdecken der Administrationsoberfläche
      • Durchstarten mit PrestaShop
      • Erste Schritte in PrestaShop 1.6
      • Verwaltung des Katalogs
        • Artikel verwalten
        • Verwaltung der Kategorien
        • Kontrollübersicht
        • Artikelvarianten
        • Artikeleigenschaften
        • Hersteller
        • Lieferanten
        • Bildserien
        • Tags verwalten
        • Anhänge
      • Verwalten von Bestellungen
        • Bestellungen
        • Rechnungen
        • Warenrücksendungen
        • Lieferscheine
        • Rückvergütungen
        • Status
        • Bestellnachrichten
      • Kundenverwaltung
        • Kunden
        • Adressen
        • Gruppen
        • Warenkörbe
        • Kundenservice
        • Kontakte
        • Anreden
        • Offene Posten
      • Preisregeln und Gutscheine erstellen
        • Warenkorb Preisregeln
        • Katalog Preisregeln
        • Marketing-Addons
      • Module und Templates verwalten
        • Module
        • Modul- und Template-Shop
        • Positionen
        • Zahlungsart
      • Funktionen der Standardmodule
        • Verwaltungsmodule
        • Module zu Werbung & Marketing
        • Module zu Statistiken & Analysen
        • Module zu Zahlungen und Rechnungen
        • Dashboardmodule
        • Module zu Front-Office-Funktionen
        • Mobil-Module
        • Module zu Preisen & Sonderangeboten
        • SEO-Module
        • Such- und Filter-Module
        • Module zu Versand & Logistik
        • Module zur Seitenverifzierung und Betrugsprävention
        • Smart-Shopping-Module
        • Module zu Steuern & Rechnungen
        • Übersetzungsmodule
      • Versand
        • Versanddienste
        • Voreinstellungen verwalten
      • Lokalisierung
        • Lokalisierung verwalten
        • Sprachen
        • Gebiete
        • Länder
        • Bundesländer
        • Währungen
        • Steuersätze
        • Steuerregeln
        • Übersetzungen
      • Voreinstellungen
        • Allgemein
        • Voreinstellung Bestellungen
        • Voreinstellung Artikel
        • Voreinstellung Kunden
        • Templates
        • SEO & URLs
        • CMS-Seiten
        • Bilder
        • Shopadressen
        • Suche
        • Wartung
        • Geotargeting
      • Erweiterte Einstellungen
        • Systemeinstellungen
        • Leistung
        • E-Mail
        • Multishop
        • CSV-Import
        • Datenbank-Backup
        • SQL-Abfragen
        • Log-Dateien
        • Webservice
      • Verwaltung
        • Verwalten der Voreinstellungen
        • Schnellzugriff
        • Mitarbeiter
        • Profile
        • Berechtigungen
        • Menüpunkte
        • Handelserfolg
      • Statistiken
        • Statistiken verwalten
        • Suchmaschinen
        • Referrer
      • Erweiterte Lagerverwaltung
        • Allgemeines Konzept
        • Die Oberfläche der Lagerverwaltung
        • Regeln zur Lagerverwaltung
      • Verwalten mehrerer Shops
        • Das Multishop Interface
        • Erstellen einer neuen Shop Gruppe
        • Erstellen eines neuen Shops
        • Die URL eines Shops festlegen
  • Polska dokumentacja 1.6
    • Początek (PrestaShop 1.6)
      • Czego potrzebujesz, by zacząć?
      • Instalacja PrestaShop
    • Aktualizacja PrestaShop
      • Automatyczna aktualizacja
      • Ręczna aktualizacja
    • Przewodnik użytkownika
      • Szkolenia
      • Dostosowanie Twojego sklepu
      • Połączenie z panelem administracyjnym
      • Odkrywanie obszaru administracyjnego
      • Rozpocznij pracę z PrestaShopem
      • Pierwsze kroki
      • Zarządzanie katalogiem
        • Zarządzanie produktami
        • Zarządzanie kategoriami
        • Monitorowanie Twojego katalogu
        • Zarządzanie atrybutami produktów
        • Zarządzanie cechami produktów
        • Zarządzanie producentami
        • Zarządzanie dostawcami
        • Tworzenie map obrazów
        • Zarządzanie tagami
        • Zarządzanie załącznikami
      • Zarządzanie zamówieniami
        • Zamówienia
        • Faktury
        • Zwroty produktów
        • Druki wysyłki
        • Potwierdzenia zwrotów
        • Statusy
        • Powiadomienia o zamówieniu
      • Zarządzanie klientami
        • Twoi klienci
        • Adresy klientów
        • Grupy klientów
        • Koszyki zakupowe
        • Serwis obsługi klienta
        • Kontakty
        • Zwroty grzecznościowe
        • Saldo
      • Ustalanie reguł cenowych i promocyjnych
        • Reguły koszyka
        • Reguły cenowe katalogu
        • Moduły marketingu
      • Zarządzanie modułami i szablonami
        • Twoje moduły
        • Katalog modułów i szablonów
        • Pozycje we Front-Office
        • Ustawienia płatności
      • Konfiguracja modułów domyślnych
        • Moduły Administracyjne
        • Moduły Reklamy i Marketingu
        • Moduły Statystyk i Analiz
        • Moduły Fakturowania
        • Moduły Funkcjonalności Front-Office
        • Moduły Mobilne
        • Moduły Cen i promocje
        • Moduły pozycjonowania i SEO
        • Moduły Wyszukiwania i filtrów
        • Moduły Transportu i logistyki
        • Moduły Bezpieczeństwa płatności
        • Inne Moduły
      • Zarządzanie wysyłką
        • Zarządzanie przewoźnikami
        • Ustawienia wysyłki
      • Poznaj Ustawienia lokalne
        • Lokalizacja
        • Języki
        • Strefy
        • Kraje
        • Województwa lub regiony
        • Waluty
        • Podatki
        • Reguły podatków
        • Tłumaczenia
      • Poznaj Preferencje
        • Ustawienia ogólne
        • Zamówienia - Ustawienia
        • Produkty - Ustawienia
        • Klienci - Ustawienia
        • Szablony - Ustawienia
        • SEO & URL
        • CMS - Ustawienia
        • Zdjęcia - Ustawienia
        • Kontakty Sklepu
        • Szukaj
        • Przerwa techniczna
        • Geolokalizacja
      • Poznaj Parametry Zaawansowane
        • Informacje konfiguracyjne
        • Wydajność
        • Adres e-mail
        • Multisklep
        • Import CSV
        • Kopia zapasowa DB
        • Menadżer SQL
        • Logi
        • API
      • Administracja Panelem Adminstracyjnym
        • Preferencje Administracyjne
        • Szybki dostęp - konfiguracja
        • Konfiguracja kont Pracowników
        • Profile Pracowników
        • Uprawnienia
        • Menu - konfiguracja
        • Merchant Expertise Administracja
      • Poznaj Statystki
        • Statystyki
        • Wyszukiwarki
        • Polecający
      • Zaawansowane Zarządzanie magazynem
        • Uwagi ogólne
        • Prezentacja interfejsu zarządzania magazynem
        • Zasady zarządzania magazynem
      • Zarządzanie Multisklepem
        • Interfejs Mutlisklepu
        • Tworzenie nowej grupy sklepów
        • Tworzenie nowego sklepu
        • Ustalanie nowego adresu URL sklepu
        • Przykładowe użycie i specyfika
    • Przewodnik dewelopera
      • Coding Standards-
      • Fundamentals of PrestaShop Development -
      • Setting Up Your Local Development Environment -
      • Diving into PrestaShop Core Development -
        • Accessing the database-
        • The Dispatcher-
        • Controllers within PrestaShop-
        • Views within PrestaShop-
        • Managing Cookies -
        • Managing Hooks -
      • Creating a PrestaShop Module -
        • What is a PrestaShop module?-
        • Creating a first module-
        • About the config.xml file -
        • Adding a configuration page -
        • Displaying content on the front office -
        • Module translation -
        • Enabling the Auto-Update -
        • Development Troubleshooting -
        • 1.6-specific Developer Documentation -
          • Creating a Dashboard Module -
          • Making your module work with Bootstrap -
        • Miscellaneous developer documentation -
          • Specifics of multistore module development -
          • The Backward Compatibility Toolkit: Making your 1.5+ module compatible with PrestaS
          • Creating a payment module -
          • Creating a carrier module -
          • Tying your module to your Addons account -
      • Developer tutorials-
        • Best Practices of the Db Class -
        • Developer tips and tricks -
        • Handling special characters in links -
        • Overriding default behaviors -
        • PrestaShop's developer tools -
        • Using jQuery and jQueryUI -
        • Using the backward compatibility toolkit -
        • Using the Context Object -
        • Using the Helper classes -
        • Using the PrestaShop Web Service -
      • Contributing to PrestaShop -
        • Contributing code to PrestaShop -
        • How to use the Forge to contribute to PrestaShop -
        • How to write a commit message -
    • Przewodnik sprzedawcy
      • Our e-commerce advices -
      • Sample price rules -
    • FAQ - Najczęściej zadawane pytania
      • Używanie PrestaShop1.6 z WordPress
    • Rozwiązywanie problemów
    • Przewodnik projektanta
      • Podstawy rozwoju szablonu
      • Organizacja szablonu
      • Układanie Fundamentów Tematu
      • PSzablony tematyczne i Smarty
      • Korzystanie z jQuery i Ajax
      • Najlepsze praktyki
      • Bootstrap, Sass i Compass w PrestaShop 1.6
        • Używanie Bootstrap
        • Używanie Sass
        • Using Compass -
      • Tying your theme to your Addons account -
  • Documentazione Italiana 1.6
    • Come Cominciare
      • Di cosa hai bisogno per cominciare
      • Installazione di Prestashop
      • Installazione di PrestaShop sul tuo computer
      • Installazione di PrestaShop usando lo script da riga di comando.
    • Aggiornamento di PrestaShop
      • Aggiornamento automatico
    • Guida per l'Utente
      • Formazione
      • Personalizzare il tuo negozio
      • Connettersi al back office di PrestaShop
      • Scoprire l'Area Amministrativa
      • Salire a bordo di PrestaShop
      • Primi passi con PrestaShop 1.6
      • Gestire il Catalogo
        • Gestire i Prodotti
        • Gestire le Categorie
        • Osservare il Tuo Catalogo
        • Gestire gli Attributi Prodotto
        • Gestire le Funzioni Prodotto
        • Gestire i Produttori
        • Gestire i Fornitori
        • Creare mappature di immagini
        • Gestire i Tags
        • Gestire gli allegati
      • Gestione ordini
        • Fatture
        • Merce resa
        • Note di credito
        • Ordini
    • Guida allo sviluppo
      • Sovrascrittura del comportamento di default
    • Integrazione alla Guida Ufficiale
      • Codice Tracking corrieri Italiani
  • Nederlandse documentatie 1.6
    • Aan de slag
      • Benodigdheden
      • PrestaShop installeren
      • PrestaShop installeren op uw computer
      • PrestaShop installeren met behulp van het command line script
      • PrestaShop bijwerken en deïnstalleren
      • Overige informatie
    • PrestaShop bijwerken
      • Automatisch bijwerken
      • Handmatig bijwerken
      • Backups aanmaken en terugzetten
      • Wanneer er problemen optreden
    • Gebruikershandleiding
      • Cursussen & trainingen
      • Uw winkel aanpassen
      • Verbinding maken met de back office
      • Kennismaken met het administratiepaneel
      • Kom aan boord van PrestaShop
      • Eerste stappen met PrestaShop 1.6
      • De catalogus beheren
        • Producten beheren
        • Categorieën beheren
        • Uw catalogus monitoren
        • Productattributen beheren
        • Productkenmerken beheren
        • Fabrikanten beheren
        • Leveranciers beheren
        • Image mapping toepassen
        • Tags beheren
        • Bijlagen beheren
      • Bestellingen beheren
        • Bestellingen
        • Facturen
        • Retourzendingen
        • Pakbonnen
        • Creditnota's
        • Statussen
        • Bestellingsberichten
      • Klanten beheren
        • Uw klanten
        • Klantadressen
        • Klantengroepen
        • Winkelwagens
        • Klantenservice
        • Uw contacten
        • Aanhefsvormen
        • Openstaand bedrag
      • Prijsregels en waardebonnen aanmaken
        • Winkelwagenregels
        • Catalogus prijsregels
        • Marketingmodules
      • Modules en thema's beheren
        • Uw modules
        • Module- en themacatalogus
        • Frontoffice-posities
        • Betaalinstellingen
      • Vooraf geïnstalleerde modules gebruiken
        • Administratiemodules
        • Reclame- en marketingmodules
        • Analyse- en statistiekmodules
        • Modules voor betaalmethoden en gateways
        • Dashboardmodules
        • Modules voor extra winkelfuncties
        • Mobiele modules
        • Prijs- en promotiemodules
        • SEO-modules
        • Zoek- en filtermodules
        • Verzending- en logistiekmodules
        • Modules voor site-certificatie en fraudepreventie
        • Vergelijkingssites & Feed-beheer
        • Belasting- en facturatiemodules
        • Vertaalmodules
      • Zendingen beheren
        • Vervoerders beheren
        • Verzendinstellingen
      • Lokalisatie-instellingen
        • Lokalisatie
        • Talen
        • Zones / gebieden
        • Landen
        • Staten / provincies
        • Valuta's
        • Belastingen
        • Belastingregels
        • Vertalingen
      • Algemene instellingen
        • Algemeen instellen
        • Bestellingen instellen
        • Producten instellen
        • Klanten instellen
        • Thema's instellen
        • SEO & URL's instellen
        • CMS instellen - statische content beheren
        • Afbeeldingen instellen
        • Winkelcontacten beheren
        • Zoekinstellingen
        • Onderhoudsinstellingen
        • Geolocatie instellen
      • Geavanceerde instellingen
        • Configuratie-informatie bekijken
        • Prestaties instellen
        • E-mail instellen
        • Multistore instellen
        • CSV-bestanden importeren
        • Database backup
        • SQL-beheer
        • Logboek bekijken
        • Webservice instellen
      • Backoffice beheren
        • Administratie instellen
        • Snelle toegang instellen
        • Medewerkers instellen
        • Medewerkersprofielen instellen
        • Permissies instellen
        • Menu's instellen
        • Verkoopervaring instellen
      • Statistieken
        • Statistieken bekijken
        • Zoekmachines instellen
        • Referrers bekijken
      • Geavanceerd voorraadbeheer
        • Algemene concepten
        • Voorraadbeheer-interface
        • Regels voor voorraadbeheer
      • Meerdere winkels beheren
        • De multistore-interface
        • Een nieuwe winkelgroep aanmaken
        • Een nieuwe winkel aanmaken
        • Een URL voor de winkel instellen
        • Gebruiksvoorbeelden
    • Handleiding voor de winkelier
      • Onze e-commerce adviezen
      • Voorbeelden van prijsregels
    • Veelgestelde vragen
      • PrestaShop 1.6 integreren met WordPress
    • Probleemoplossing
  • Documentação em português 1.6
    • Começando com PrestaShop
      • O que você precisa para começar?
      • Instalando o PrestaShop
      • Instalando o PrestaShop em seu computador
      • Instalando o PrestaShop usando scripts de linha de comando
      • Atualizando e Desinstalando o PrestaShop
      • Outras Informações
    • Atualização do PrestaShop
      • Atualização Automática
      • Atualização Manual
      • Criando e restaurando o seu próprio backup
      • Em caso de problemas
    • Guia do Usuário
      • Treinamentos
      • Personalizando sua loja
      • Acessando o Back Office do PrestaShop
      • Descobrindo a Área Administrativa
      • Primeros Passos no PrestaShop 1.6
      • Gerenciamento do Catálogo
        • Gerenciamento dos Produtos
  • Οδηγίες χρήσης 1.6
    • Ξεκινώντας
      • Τι χρειάζεστε για να ξεκινήσετε
Powered by GitBook
On this page
  • The getContent() method
  • Displaying the form
  • Diving in displayForm()
  • Using HelperForm

Was this helpful?

  1. English documentation 1.6
  2. Developer Guide
  3. Creating a PrestaShop Module

Adding a configuration page

Your module can get a "Configure" link in the back office module list, and therefore let the user change some settings. This "Configure" link appears with addition of the getContent() method to your main class. This is a standard PrestaShop method: its sole existence sends a message to the back office, saying "there's a configuration page in this module, display the configuration link".

But having a getContent() public method in the MyModule object does only make the "Configure" link appear; it does not create the configuration page out of nowhere. We are going to explain how to create one, where we will be able to edit the content of the MYMODULE_NAME variable that we stored in the ps_configuration data table.

The getContent() method

First, here is the complete code for the getContent() method:

public function getContent()
{
    $output = null;

    if (Tools::isSubmit('submit'.$this->name))
    {
        $my_module_name = strval(Tools::getValue('MYMODULE_NAME'));
        if (!$my_module_name 
          || empty($my_module_name) 
          || !Validate::isGenericName($my_module_name))
            $output .= $this->displayError($this->l('Invalid Configuration value'));
        else
        {
            Configuration::updateValue('MYMODULE_NAME', $my_module_name); 
            $output .= $this->displayConfirmation($this->l('Settings updated'));
        }
    }
    return $output.$this->displayForm();
}

The getContent()method is the first one to be called when the configuration page is loaded. Therefore, we use it to first update any value that might have been submitted by the form that the configuration page contains.

Here is a line by line explanation:

  1. Tools::isSubmit() is a PrestaShop-specific method, which checks if the indicated form has been validated. In this case, if the configuration form has not yet been validated, the whole if() block is skipped and PrestaShop will only use the last line, which displays the configuration with the current values, as generated by the displayForm() method.

  2. Tools:getValue() is a PrestaShop-specific method, which retrieve the content of the POST or GET array in order to get the value of the specified variable. In this case, we retrieve the value of the MYMODULE_NAME form variable, turn its value into a text string using the strval() method, and stores it in the $my_module_name PHP variable.

  3. We then check for the existence of actual content in $my_module_name, including the use of Validate::isGenericName(). The Validate object contains many data validation methods, among which is isGenericName(), a method that helps you keep only strings that are valid PrestaShop names – meaning, a string that does not contain special characters, for short.

  4. If any of these checks fail, the configuration will open with an error message, indicating that the form validation failed. The $output variable, which contains the final rendition of the HTML code that makes the configuration page, thus begins with an error message, created using PrestaShop's displayError() method. This method returns the correct HTML code for our need, and since that code is first in $output, this means the configuration will open with that message.

  5. If all these checks are successful, this means we can store the value in our database. As we saw earlier in this tutorial, the Configuration object has just the method we need: updateValue() will store the new value for MYMODULE_NAME in the configuration data table. To that, we add a friendly message to the user, indicating that the value has indeed been saved: we use PrestaShop's displayConfirmation() method to add that message as the first data in the $output variable – and therefore, at the top of the page.

  6. Finally, we use the custom displayForm() method (which we are going to create and explain in the next section) in order to add content to $output (whether the form was submitted or not), and return that content to the page. Note that we could have included the code for displayForm() right within getContent(), but chose to separate the two for readability and separation of concerns.

This form-validation code is nothing new for PHP developers, but uses some of the PrestaShop methods that you will very regularly use.

Displaying the form

The configuration form itself is displayed with the displayForm() method. Here is its code, which we are going to explain after the jump:

public function displayForm()
{
    // Get default language
    $default_lang = (int)Configuration::get('PS_LANG_DEFAULT');
    
    // Init Fields form array
    $fields_form[0]['form'] = array(
        'legend' => array(
            'title' => $this->l('Settings'),
        ),
        'input' => array(
            array(
                'type' => 'text',
                'label' => $this->l('Configuration value'),
                'name' => 'MYMODULE_NAME',
                'size' => 20,
                'required' => true
            )
        ),
        'submit' => array(
            'title' => $this->l('Save'),
            'class' => 'btn btn-default pull-right'
        )
    );
    
    $helper = new HelperForm();
    
    // Module, token and currentIndex
    $helper->module = $this;
    $helper->name_controller = $this->name;
    $helper->token = Tools::getAdminTokenLite('AdminModules');
    $helper->currentIndex = AdminController::$currentIndex.'&configure='.$this->name;
    
    // Language
    $helper->default_form_language = $default_lang;
    $helper->allow_employee_form_lang = $default_lang;
    
    // Title and toolbar
    $helper->title = $this->displayName;
    $helper->show_toolbar = true;        // false -> remove toolbar
    $helper->toolbar_scroll = true;      // yes - > Toolbar is always visible on the top of the screen.
    $helper->submit_action = 'submit'.$this->name;
    $helper->toolbar_btn = array(
        'save' =>
        array(
            'desc' => $this->l('Save'),
            'href' => AdminController::$currentIndex.'&configure='.$this->name.'&save'.$this->name.
            '&token='.Tools::getAdminTokenLite('AdminModules'),
        ),
        'back' => array(
            'href' => AdminController::$currentIndex.'&token='.Tools::getAdminTokenLite('AdminModules'),
            'desc' => $this->l('Back to list')
        )
    );
    
    // Load current value
    $helper->fields_value['MYMODULE_NAME'] = Configuration::get('MYMODULE_NAME');
    
    return $helper->generateForm($fields_form);
}

While this might look like a huge block of code for a single value to change, this block actually uses some of PrestaShop's method to make it easier to build forms, most notably the HelperForm object.

Diving in displayForm()

Let's run down that method:

  1. Using the Configuration::get() method, we retrieve the value of the currently chosen language ("PS_LANG_DEFAULT"). For security reasons, we cast the variable into an integer using (int).

  2. In preparation for the generation of the form, we must build an array of the various titles, textfields and other form specifics. To that end, we create the $fields_form variable, which will contain a multidimensional array. Each of the arrays it features contains the detailed description of the tags the form must contain. From this variable, PrestaShop will render the HTML form as it is described. In this example, we define three tags (<legend>, <input> and <submit>) and their attributes using arrays. The format is quite easy to get: the legend and submit arrays simply contain the attributes to each tag, while the input contains as many <input> tags are needed, each being in turn an array which contains the necessary attributes. For instance:

    'input' => array(
        array(
            'type' => 'text',
            'label' => $this->l('Configuration value'),
            'name' => 'MYMODULE_NAME',
            'size' => 20,
            'required' => true
        ))

    ...generates the following HTML tags:

    <label>Configuration value </label>
    <div class="margin-form">
      <input id="MYMODULE_NAME" class="" type="text" size="20" value="my friend" name="MYMODULE_NAME">
      <sup>*</sup>
    <div class="clear"></div>

    As you can see, PrestaShop is quite clever, and generates all the code that is needed to obtain a useful form. Note that the value of the main array is actually retrieved later in the form generation code.

  3. We then create an instance of the HelperForm class. This section of the code is explained in the next section of this chapter.

  4. Once the HelperForm settings are all in place, we generate the form based on the content of the $fields_form variable.

Using HelperForm

HelperForm is one of the helper methods that were added with PrestaShop 1.5, along with HelperOptions, HelperList, HelperView and HelperHelpAccess. They enable you to generate standard HTML elements for the back office as well as for module configuration pages. You can get more information about Helper classes in the "Helpers" chapter of this developer guide, with a page dedicated to HelperForm.

Here is our sample code, as a reminder:

$helper = new HelperForm();

// Module, Token and currentIndex
$helper->module = $this;
$helper->name_controller = $this->name;
$helper->token = Tools::getAdminTokenLite('AdminModules');
$helper->currentIndex = AdminController::$currentIndex.'&configure='.$this->name;

// Language
$helper->default_form_language = $default_lang;
$helper->allow_employee_form_lang = $default_lang;

// title and Toolbar
$helper->title = $this->displayName;
$helper->show_toolbar = true;        // false -> remove toolbar
$helper->toolbar_scroll = true;      // yes - > Toolbar is always visible on the top of the screen.
$helper->submit_action = 'submit'.$this->name;
$helper->toolbar_btn = array(
    'save' =>
    array(
        'desc' => $this->l('Save'),
        'href' => AdminController::$currentIndex.'&configure='.$this->name.'&save'.$this->name.
        '&token='.Tools::getAdminTokenLite('AdminModules'),
    ),
    'back' => array(
        'href' => AdminController::$currentIndex.'&token='.Tools::getAdminTokenLite('AdminModules'),
        'desc' => $this->l('Back to list')
   )
);

// Load current value
$helper->fields_value['MYMODULE_NAME'] = Configuration::get('MYMODULE_NAME');

return $helper->generateForm($fields_form);

Our example uses several of HelperForm's attributes: they need to be set before we generate the form itself from the $fields_form variable:

  • $helper->module: requires the instance of the module that will use the form.

  • $helper->name_controller: requires the name of the module.

  • $helper->token: requires a unique token for the module. getAdminTokenLite() helps us generate one.

  • $helper->currentIndex:

  • $helper->default_form_language: requires the default language for the shop.

  • $helper->allow_employee_form_lang: requires the default language for the shop.

  • $helper->title: requires the title for the form.

  • $helper->show_toolbar: requires a boolean value – whether the toolbar is displayed or not.

  • $helper->toolbar_scroll: requires a boolean value – whether the toolbar is always visible when scrolling or not.

  • $helper->submit_action: requires the action attribute for the form's <submit> tag.

  • $helper->toolbar_btn: requires the buttons that are displayed in the toolbar. In our example, the "Save" button and the "Back" button.

  • $helper->fields_value[]: this is where we can define the value of the named tag.

Finally, after all is set and done, we can call the generateForm() method, which will take care of putting it all together and, as its name says, generate the form that the user will use to configure the module's settings.

Here is the rendition of the form as it is presently written – which you can see by yourself by clicking on the "Configure" link for the module in the back office:

Change the value to whichever you like, click on the "Save" button, then go reload the homepage: your module is indeed updated with the new string!

PreviousAbout the config.xml fileNextDisplaying content on the front office

Last updated 4 years ago

Was this helpful?