LogoLogo
Homepage
  • Documentations for PrestaShop 1.4
  • English documentation 1.4
    • Getting Started
    • Updating PrestaShop
    • User Guide
      • Training
      • Customizing your shop
      • Browsing the front-office
      • Connecting to the PrestaShop back-office
      • Adding Products and Product Categories
      • A Look inside the Catalog
      • Managing Customers
      • Managing Orders
      • Managing Payment Methods
      • Managing Shipping
      • Understanding Statistics
      • Managing Modules
      • Managing Employees
      • Understanding the Preferences
      • Exploring PrestaShop's Tools
      • PrestaShop Support
    • System Administrator Guide
    • Developer Guide
      • Developer tutorials
        • Using the REST webservice
          • Chapter 1 - Creating Access to Back Office
          • Chapter 2 - Discovery - Testing access to the web service with the browser
          • Chapter 3 - First steps - Access the Web service and list client
            • 3.1 - Access the web service
            • 3.2 - Handling errors
            • 3.3 - List clients
          • Chapter 4 - Retrieve Data - Retrieving a Client
          • Chapter 5 - Modification - Update client
          • Chapter 6 - Creation - Remote Online Form
          • Chapter 7 - Removal - Remove customer accounts from the database
          • Chapter 8 - Advanced Use
          • Cheat-sheet - Concepts outlined in this tutorial
        • Understanding and using hooks
        • Synchronization via Hooks
        • Modules, Classes and Controller Override
        • Modules, Override, Web Service
        • Db class good practices for Prestashop 1.4
        • Carrier modules - functions, creation and configuration
        • Creating your own payment module
        • Accelerated Security Course - Episode 1 - Never Trust Foreign Data
        • Accelerated Security Course - Episode 2 - SQL Injections
        • Accelerated Security Course - Episode 3 - XSS
        • Accelerated Security Course - Episode 4 - CSRF
      • Fundamentals
      • Creating a PrestaShop module
      • Development standard
      • Public and overloadable methods
      • Web-service reference
      • How to use the forge to contribute to PrestaShop
      • Rocky's guides
        • PrestaShop 1.4.3 Development Guide
          • Architecture
          • Overriding Files
          • Creating Modules
          • Cookie Structure
          • Database Structure
        • PrestaShop 1.4.3 Performance Guide
    • Designer Guide
      • Coding a theme
      • Design tips
      • Implementing layered navigation in a theme
    • Troubleshooting
    • FAQ
    • User contributions
    • Documentation PDFs
  • Documentation française 1.4
    • Guide de démarrage
    • Mettre à jour PrestaShop
    • Guide de l'utilisateur
      • Formation
      • Personnaliser votre boutique
      • Se connecter au back-office de Prestashop
      • Ajouter des produits et des catégories de produits
      • Un aperçu du catalogue
      • Gérer les clients
      • Gérer les commandes
      • Gérer les méthodes de paiement
      • Gérer le transport
      • Comprendre les statistiques
      • Gérer les modules
      • Gérer les employés
      • Comprendre les préférences
      • Explorer les outils de PrestaShop
      • Obtenir de l'aide
    • Guide de l'administrateur système
    • Guide du développeur
      • Fondamentaux
      • Créer un module PrestaShop
      • Tutoriels pour développeurs
        • Tutoriel Webservice REST
          • Chapitre 1 - Mise en place - Création des accès dans le Back Office
          • Chapitre 2 - Découverte - Tester l'accès au service web avec le navigateur
          • Chapitre 3 - Premiers pas - Accéder au service web et lister les clients
            • 3.1 Accéder au service web
            • 3.2 Gestion des erreurs
            • 3.3 Lister les clients
          • Chapitre 4 - Récuperer des données : Récupérer un client
          • Chapitre 5 - Modification : Mettre à jour un client
          • Chapitre 6 - Création : Formulaire d'ajout à distance
          • Chapitre 7 - Suppression : Retirer des comptes client de la base
          • Chapitre 8 – Utilisation avancée
          • Chapitre 9 - Gestion des images
          • Chapitre 10 - Gestion des prix
          • Mémento : Notions énoncées dans ce tutoriel
        • Mieux comprendre et utiliser les hooks
        • La synchronisation via les Hooks
        • Surcharge et override
        • Modules, surcharge, web service
        • Les bonnes pratiques de la classe Db sur Prestashop 1.4
        • Les modules transporteurs - fonctionnement, création, configuration
        • Cours de sécurité accéléré no. 1 - Never trust foreign data
        • Cours de sécurité accéléré no. 2 - Injections SQL
        • Cours de sécurité accéléré no. 3 - XSS
        • Cours de Sécurité accéléré no. 4 - CSRF
    • Guide du designer
      • Conseils en design
      • Créer un thème
    • Guide du Vendeur
    • Import Wiki FR
      • Dépannage
        • Changer la taille maximum de téléchargement de fichiers
        • Comment ajouter une page à PrestaShop
        • Générer le fichier .htaccess par Prestashop pour avoir des URLs simplifiées
        • Générer un nouveau mot de passe manuellement
        • Import CSV
        • Personnalisation des mails clients
        • Problème d'allocation mémoire chez 1&1
        • Problème pour se connecter après avoir effacé une langue
        • Votre site ne répond plus, une page blanche s’affiche
      • Fidéliser les Clients
      • Gestion des Taxes
      • Installer Un Module
      • Sauvegarder votre Base de Données
    • PDF de la documentation
    • Contributions des utilisateurs
    • Questions fréquentes
  • Documentación española 1.4
    • Introducción
    • Actualización de PrestaShop
    • Guía de Usuario
      • Entrenamiento
      • Personalización de su tienda
      • Exploración del front-office
      • Conexión al back-office PrestaShop
      • Añadir Productos y Categorías de Productos
      • Una Mirada Dentro del Catálogo
      • Gestión de Clientes
      • Gestión de Pedidos
      • Gestión de Métodos de Pago
      • Gestión de Envío
      • Comprensión de las Estadísticas
      • Gestión de Módulos
      • Gestión de Empleados
      • Comprensión de Preferencias
      • Exploración de las herramientas de PrestaShop
      • Soporte PrestaShop
    • Guía del Administrador del Sistema
    • Guía del Desarrollador
      • Aspectos Fundamentales
      • Creación de un módulo de PrestaShop
      • Estándares de desarrollo
      • Manuales de desarrollador
        • Utilización del servicio web REST
          • Capítulo 1 - Creación de Acceso al Back Office
          • Capítulo 2 - Descubrimiento - Pruebas de acceso al servicio web con el navegador
          • Capítulo 3 - Primeros pasos - Acceso al servicio Web y lista de clientes
            • 3.1 - Acceso al servicio web
            • 3.2 - Manejo de errores
            • 3.3 - Enumeración de clientes
          • Capítulo 4 - Recuperación de datos - Recuperación de un cliente
          • Capítulo 5 - Modificación - Actualización de cliente
          • Capítulo 6 - Creación - Formulario En Línea Remoto
          • Capítulo 7 - Eliminación - Eliminar cuentas de clientes de la base de datos
          • Capítulo 8 - Uso avanzado
        • Comprensión y uso de hooks
        • Sincronización a través de Hooks
        • Módulos, Reemplazo, Servicio Web
        • Módulos, Clases y Reemplazo del Controlador
        • Buenas prácticas de Clase DB para Prestashop 1.4
        • Módulos de transportistas - funciones, creación y configuración
        • Curso Acelerado de Seguridad - Episodio 1 - Nunca Confíe en Datos Exteriores
        • Curso Acelerado de Seguridad - Episodio 2 - Inyecciones SQL
        • Curso Acelerado de Seguridad - Episodio 3 - XSS
        • Curso Acelerado de Seguridad - Episodio 4 - CSRF
      • Referencia del servicio web
    • Guía de Diseñador
      • Codificación de un tema
      • Consejos de Diseño
    • Solución de problemas
    • Preguntas Frecuentes
Powered by GitBook
On this page
  • Reemplazo del Núcleo
  • Servicio Web
  • ¿Cómo elegir?

Was this helpful?

  1. Documentación española 1.4
  2. Guía del Desarrollador
  3. Manuales de desarrollador

Módulos, Reemplazo, Servicio Web

PreviousSincronización a través de HooksNextMódulos, Clases y Reemplazo del Controlador

Last updated 4 years ago

Was this helpful?

TEste artículo fue escrito por Damien Metzger, y fue publicado por primera vez .

*Desde la creación de PrestaShop, nuestros módulos han sido la forma más fácil y potente para que los comerciantes personalicen sus tiendas. * Sin embargo, PrestaShop v1.4 lanzado dos nuevas posibilidades para su tienda y su negocio para ir más lejos, más rápido y ser más eficiente: vamos a presentar a la forma de reemplazar el núcleo y utilizar el servicio web.

Reemplazo del Núcleo

La sobrescritura permite a todos los desarrolladores, ya sean trabajadores independientes o si trabajan para una agencia web, cambiar el comportamiento de las clases que componen el núcleo de PrestaShop — ¡sin modificarlo ! De esta forma puede también extender el código de PrestaShop ya sea para reemplazarlo con su propio código, optimizarlo para satisfacer las necesidades de la tienda, por ejemplo, o simplemente para agregar instrucciones a los ya existentes.

Ahora con la versión 1.4, un desarrollador que desea modificar una clase PrestaShop ya no toca los archivos principales. En su lugar, crear un archivo en la carpeta / override que aparece en la base del software.

Ejemplo

Para agregar un mensaje como “Hello world!” cada vez que cargue un producto — que es perfectamente inútil, por supuesto — sólo tiene que colocar el archivo Product.php en la carpeta / override / clases y en el archivo debe escribir:

class Product extends ProductCore
{
  public function __construct($id_product = NULL, $full = false, $id_lang = NULL)
  {
    echo 'Hello World !';
    parent::__construct($id_product, $full, $id_lang);
  }
}

Por lo tanto, un técnico que trabaja en su tienda puede identificar inmediatamente las modificaciones realizadas. Por otra parte — ¡y esto es muy importante ! — actualizar PrestaShop a una versión futura, mejorada será considerablemente más fácil. Usted sólo tendrá que probar la compatibilidad de estas 'clases reemplazadas' en lugar de hacer un largo y tedioso diff con los archivos de la nueva versión.

Si usted no se siente cómodo con el concepto de Herencia (programación orientada a objetos) — la cual es necesaria para la creación de una clase hija — usted debe echar un vistazo a algunos datos en Wikipedia:

Servicio Web

Los servicios web están cada vez más presente en todas las áreas de la computación y son esenciales para la evolución continua de la web, y por lo tanto también para el comercio electrónico.

¡Cuando son aplicados a PrestaShop, los servicios web permiten a desarrolladores, familiarizados o no con el desarrollo de PrestaShop, recuperar y enviar de forma remota información a la tienda sin tener acceso al código del software!

La tecnología que PrestaShop ha escogido para su servicio web es REST. La principal ventaja de este estilo de arquitectura es que está basado en el formato XML. Los archivos XML intercambiados entre el cliente y el servicio web se hacen de manera intuitiva, sin tener que leer varias páginas de documentos específicos a la aplicación. Un desarrollador familiarizado con esta tecnología puede utilizar el servicio con facilidad y un principiante se adaptará muy rápidamente.

PrestaShop ofrece a los desarrolladores una librería PHP que les permite utilizar el servicio Web sin necesidad de realizar archivos XML manualmente. Varios códigos de ejemplo se ofrecen también para entender mejor las diferentes opciones.

¿Cómo elegir?

Si bien estas tres herramientas permiten modificar el comportamiento de todo el mundo y agregar funciones a una tienda, también cuentan con tres aplicaciones muy diferentes. La elección de la herramienta adecuada no debe tomarse a la ligera.

Si desea realizar cambios específicos en su tienda, los cuales nunca serán usados ??en otras partes, entonces en la mayoría de los casos la decisión de sobrescribir el núcleo - clases o controladores--, será la mejor solución. De hecho, es la forma más natural y eficiente de realizar dichos cambios. Usted sin embargo, tendrá que controlar su funcionamiento después de una actualización, especialmente si se hicieron correcciones a las funciones que ha sobrescrito o si algunas de ellos son obsoletos.

¿Qué pasa si en lugar de hacer cambios a su una tienda, usted tiene la intención de empaquetar y distribuir los cambios? Por ejemplo, usted puede desear colocarlos en el sitio web de descargas PrestaShop Addons. En este caso, tendrá que elegir un módulo. El uso de un módulo también ayuda a mantener las cosas limpias: su sistema conectado nos permite de inmediato y de manera sencilla ver los cambios se hicieron para cada evento iniciado por la tienda. Alguien mirando el código, con el fin de utilizar o mejorarlo, inmediatamente podrían identificar el alcance de acción del módulo.

Por último, pero no menos importante, el servicio web es la mejor opción cuando la tienda debe interactuar con un software externo. Esta técnica no sólo permite que la aplicación de terceros se comunique con la tienda sin necesidad de añadir el código, sino que también puede proteger la información confidencial mediante la limitación de derechos.

Una guía paso a paso en el servicio web está disponible en el sitio de documentación PrestaShop:

Usted puede encontrar más información acerca de REST en Wikipedia:

el 4 de mayo de 2011, en el blog PrestaShop
http://es.wikipedia.org/wiki/Herencia_(informática)
http://doc.prestashop.com/
http://es.wikipedia.org/wiki/Representational_State_Transfer