Prestashop

Constantes y variables para Prestashop 1.7

Constantes y variables para Prestashop 1.7.- Si estamos deseando personalizar nuestra tienda es seguro que lleguemos a este tema de conocer que son las constantes para programas por ejemplo unas consultas SQL personalizada, conocer el prefijo de las tablas, la ruta de imágenes, etc.

Entonces debemos de conocer acerca de las contantes predefinidas que ofrece Prestashop y las variables Smarty para trabajar en los ficheros TPL.

¿Qué constante usar en sus controladores en Prestashop?

Esto depende del área que estemos programado, por ejemplo, si deseamos obtener la ruta de las imágenes de nuestros productos entonces debemos de usar: la constante «_PS_IMG_DIR_»

¿Cuál usar _PS_ROOT_DIR_ o __PS_BASE_URI__ en Prestashop?

Primero hay que saber qué resultado da tal constante, por ejemplo:

  • La contante _PS_ROOT_DIR_.- Es para el lenguaje PHP y muestra la ruta absoluta: /var/www/html/prestashop
  • La constante __PS_BASE_URI__ .- Muestra la base absoluta de nuestra tienda y es relativa.

¿Cuál elegir en las plantillas Smarty {$urls.img_dir} o {$img_dir}?

  • La primera {$urls.img_dir} muestra la ruta de imagen personalizada, porque hace uso de la URL y puede ser por ejemplo las imágenes de nuestro tema.
  • La segunda {$img_dir} es la ruta absoluta de imágenes de nuestra tienda. «/img«

¿Qué constante usar y qué variables están disponibles?

Son preguntas muy comunes en el mundo de la programación en Prestashop, mi recomendación es conocer todas las constantes y que representa, además de conocer las principales variables por defecto que posee Prestashop.

Además, recuerden que se puede crear variables Smarty personalizada.

En este artículo le brindaremos a través de una tabla las diferentes constantes y variables de PHP, Smarty JavaScript y Twig a su disposición y las presenta con ejemplos y contextos visuales.

Datos importantes acerca de las variables y constantes en Prestashop

La presente guía asume que usted tiene o gestiona:

  • Una tienda similar a https://myshop.com/prefix/
  • Está alojado en su servidor en /var/www/html/prestashop/.
  • Tema: mi_tema
  • Directorio de administración: admin-dev
  • Idiomas: PHP, Smarty, JavaScript
  • Tipos de conceptos:
      • Ruta completa: ruta completa en su servidor (por ejemplo, /var/www/html/prestashop/README.md)
      • Ruta relativa: ruta relativa desde el directorio de instalación de prestashop (por ejemplo, /classes)
      • URL completa: URL completa, incluido el protocolo (http/https) (por ejemplo, http://myshop.com/prefix/)
      • URL relativa: URL relativa del directorio de instalación de prestashop (por ejemplo, /img/c)
      • Disponible en recepción
    • Acceso a frontoffice
    • Acceso a backoffice

Constantes y variables para Prestashop 1.7 [PHP, Smarty, JavaScript, Twig]

A continuación, utilice el buscador para encontrar sus constantes o variables:

Nombre Leng. Ejemplo Tipo Destino
_PS_ROOT_DIR_ PHP /var/www/html/prestashop full path front + back
_PS_CORE_DIR_ PHP /var/www/html/prestashop full path front + back
_PS_ADMIN_DIR_ PHP /var/www/html/prestashop/admin-dev full path back
basename(PS_ADMIN_DIR) PHP admin-dev folder name back
__PS_BASE_URI__ PHP /prefix/ relative url
_PS_MODE_DEV_ PHP true bool front + back
_PS_DEBUG_SQL_ PHP true bool front + back
_PS_THEME_URI_ PHP
_PS_DEBUG_PROFILING_ PHP true bool front + back
_PS_MODE_DEMO_ PHP true bool front + back
_PS_ALL_THEMES_DIR_ PHP /var/www/html/prestashop/themes/ front + back
_PS_BO_ALL_THEMES_DIR_ PHP /var/www/html/prestashop/Backoffice/themes/ front + back
_PS_CACHE_DIR_ PHP /var/www/html/prestashop/app/cache/dev/ front + back
_PS_CONFIG_DIR_ PHP /var/www/html/prestashop/config/ front + back
_PS_CUSTOM_CONFIG_FILE_ PHP /var/www/html/prestashop/config/settings_custom.inc.php front + back
_PS_CLASS_DIR_ PHP /var/www/html/prestashop/classes/ front + back
_PS_DOWNLOAD_DIR_ PHP /var/www/html/prestashop/download/ front + back
_PS_MAIL_DIR_ PHP /var/www/html/prestashop/mails/ front + back
_PS_MODULE_DIR_ PHP /var/www/html/prestashop/modules/ front + back
_PS_OVERRIDE_DIR_ PHP /var/www/html/prestashop/override/ front + back
_PS_PDF_DIR_ PHP /var/www/html/prestashop/pdf/ front + back
_PS_TRANSLATIONS_DIR_ PHP /var/www/html/prestashop/translations/ front + back
_PS_UPLOAD_DIR_ PHP /var/www/html/prestashop/upload/ front + back
_PS_CONTROLLER_DIR_ PHP /var/www/html/prestashop/controllers/ front + back
_PS_ADMIN_CONTROLLER_DIR_ PHP /var/www/html/prestashop/controllers/admin/ front + back
_PS_FRONT_CONTROLLER_DIR_ PHP /var/www/html/prestashop/controllers/front/ front + back
_PS_TOOL_DIR_ PHP /var/www/html/prestashop/tools/ front + back
_PS_GEOIP_DIR_ PHP /var/www/html/prestashop/app/Resources/geoip/ front + back
_PS_GEOIP_CITY_FILE_ PHP GeoLite2-City.mmdb front + back
_PS_VENDOR_DIR_ PHP /var/www/html/prestashop/vendor/ front + back
_PS_PEAR_XML_PARSER_PATH_ PHP /var/www/html/prestashop/tools/pear_xml_parser/ front + back
_PS_SWIFT_DIR_ PHP /var/www/html/prestashop/tools/swift/ front + back
_PS_TAASC_PATH_ PHP /var/www/html/prestashop/tools/taasc/ front + back
_PS_TCPDF_PATH_ PHP /var/www/html/prestashop/tools/tcpdf/ front + back
_PS_IMG_DIR_ PHP /var/www/html/prestashop/img/ front + back
_PS_CORE_IMG_DIR_ PHP /var/www/html/prestashop/img/ front + back
_PS_CAT_IMG_DIR_ PHP /var/www/html/prestashop/img/c/ front + back
_PS_COL_IMG_DIR_ PHP /var/www/html/prestashop/img/co/ front + back
_PS_EMPLOYEE_IMG_DIR_ PHP /var/www/html/prestashop/img/e/ front + back
_PS_GENDERS_DIR_ PHP /var/www/html/prestashop/img/genders/ front + back
_PS_LANG_IMG_DIR_ PHP /var/www/html/prestashop/img/l/ front + back
_PS_MANU_IMG_DIR_ PHP /var/www/html/prestashop/img/m/ front + back
_PS_ORDER_STATE_IMG_DIR_ PHP /var/www/html/prestashop/img/os/ front + back
_PS_PROD_IMG_DIR_ PHP /var/www/html/prestashop/img/p/ front + back
_PS_SHIP_IMG_DIR_ PHP /var/www/html/prestashop/img/s/ front + back
_PS_STORE_IMG_DIR_ PHP /var/www/html/prestashop/img/st/ front + back
_PS_SUPP_IMG_DIR_ PHP /var/www/html/prestashop/img/su/ front + back
_PS_TMP_IMG_DIR_ PHP /var/www/html/prestashop/img/tmp/ front + back
_PS_CACHEFS_DIRECTORY_ PHP /var/www/html/prestashop/cache/cachefs/ front + back
_PS_JQUERY_VERSION_ PHP 1.11.0 front + back
_PS_CACHE_CA_CERT_FILE_ PHP /var/www/html/prestashop/app/cache/dev/cacert.pem front + back
_PS_DEFAULT_THEME_NAME_ PHP classic front + back
_PS_THEME_DIR_ PHP /var/www/html/prestashop/themes/my_theme/ full path front + back
_PS_THEME_URI_ PHP /prefix/themes/my_theme/ relative url front + back
_PS_PARENT_THEME_DIR_ PHP /var/www/html/prestashop/themes/classic/ full path front + back
_PS_PARENT_THEME_URI_ PHP /prefix/themes/classic/ relative url front + back
_THEMES_DIR_ PHP /prefix/themes/ relative url front + back
_THEME_DIR_ PHP /prefix/themes/my_theme/ relative url front + back
_THEME_IMG_DIR_ PHP /prefix/themes/my_theme/assets/img/ relative url front + back
_THEME_CSS_DIR_ PHP /prefix/themes/my_theme/assets/css/ relative url front + back
_THEME_JS_DIR_ PHP /prefix/themes/my_theme/assets/js/ relative url front + back
_PS_IMG_ PHP /prefix/img/ relative url front + back
_PS_ADMIN_IMG_ PHP /prefix/img/admin/ relative url front + back
_PS_TMP_IMG_ PHP /prefix/img/tmp/ relative url front + back
_THEME_CAT_DIR_ PHP /prefix/img/c/ relative url front + back
_THEME_PROD_DIR_ PHP /prefix/img/p/ relative url front + back
_THEME_MANU_DIR_ PHP /prefix/img/m/ relative url front + back
_THEME_SUP_DIR_ PHP /prefix/img/su/ relative url front + back
_THEME_SHIP_DIR_ PHP /prefix/img/s/ relative url front + back
_THEME_STORE_DIR_ PHP /prefix/img/st/ relative url front + back
_THEME_LANG_DIR_ PHP /prefix/img/l/ relative url front + back
_THEME_COL_DIR_ PHP /prefix/img/co/ relative url front + back
_THEME_GENDERS_DIR_ PHP /prefix/img/genders/ relative url front + back
_PS_PROD_IMG_ PHP /prefix/img/p/ relative url front + back
_PS_JS_DIR_ PHP /prefix/js/ relative url front + back
_PS_CSS_DIR_ PHP /prefix/css/ relative url front + back
_THEME_PROD_PIC_DIR_ PHP /prefix/upload/ relative url front + back
_MAIL_DIR_ PHP /prefix/mails/ relative url front + back
_MODULE_DIR_ PHP /prefix/modules/ relative url front + back
\Context::getContext() PHP Object of class Context Object front + back
_DB_PREFIX_ PHP Your SQL table prefix
{$baseAdminUrl} Smarty /prefix/admin-dev/ relative url back
{$base_url} Smarty https://myshop.com/prefix/ full url back
{$context_mode} Smarty
{$logged_on_addons} Smarty
{$can_import} Smarty
{$table} Smarty customers back
{$current} Smarty index.php?controller=AdminCustomer back
{$token} Smarty Token used in the current URL back
{$host_mode} Smarty
{$stock_management} Smarty
{$no_order_tip} Smarty
{$no_customer_tip} Smarty
{$no_customer_message_tip} Smarty
{$GA_ACCOUNT_ID} Smarty
{$displayBackOfficeHeader} Smarty
{$displayBackOfficeTop} Smarty
{$submit_form_ajax} Smarty
{$breadcrumbs2} Smarty
{$quick_access_current_link_name} Smarty
{$quick_access_current_link_icon} Smarty
{$navigationPipe} Smarty
{$img_base_path} Smarty /admin-dev/ back
{$check_url_fopen} Smarty
{$check_openssl} Smarty
{$add_permission} Smarty
{$addons_register_link} Smarty
{$addons_forgot_password_link} Smarty
{$help_link} Smarty
{$maintenance_mode} Smarty
{$debug_mode} Smarty
{$lite_display} Smarty
{$url_post} Smarty index.php?controller=AdminCustomer&token={token} back
{$show_page_header_toolbar} Smarty
{$page_header_toolbar_title} Smarty
{$title} Smarty
{$toolbar_btn} Smarty
{$page_header_toolbar_btn} Smarty
{$show_new_orders} Smarty
{$show_new_customers} Smarty
{$show_new_messages} Smarty
{$help_box} Smarty
{$round_mode} Smarty
{$brightness} Smarty
{$bo_width} Smarty
{$bo_color} Smarty
{$employee} Smarty Object of class Employee Object back
{$search_type} Smarty
{$bo_query} Smarty
{$quick_access} Smarty
{$multi_shop} Smarty
{$shop_list} Smarty
{$current_shop_name} Smarty ‘My Shop’
{$shop} Smarty Object of class Shop Object back
{$shop_group} Smarty Object of class ShopGroup Object back
{$is_multishop} Smarty
{$multishop_context} Smarty
{$default_tab_link} Smarty
{$login_link} Smarty
{$collapse_menu} Smarty
{$img_dir} Smarty /prefix/img/ back
{$iso} Smarty fr back
{$class_name} Smarty AdminCustomerController back
{$iso_user} Smarty fr back
{$country_iso_code} Smarty FR back
{$version} Smarty 1.7.2.4 back
{$lang_iso} Smarty fr back
{$full_language_code} Smarty fr back
{$full_cldr_language_code} Smarty fr-FR back
{$link} Smarty Object of class Link Object back
{$shop_name} Smarty
{$base_url} Smarty
{$current_parent_id} Smarty
{$tabs} Smarty
{$current_tab_level} Smarty
{$install_dir_exists} Smarty
{$pic_dir} Smarty
{$controller_name} Smarty AdminCustomer back
{$current} Smarty index.php?controller=AdminCustomer
{$currentIndex} Smarty index.php?controller=AdminCustomer
{$bootstrap} Smarty
{$default_language} Smarty
{$display_addons_connection} Smarty
{$urls} Smarty
{$urls.base_url} Smarty https://myshop.com/prefix/ full url front
{$urls.current_url} Smarty https://myshop.com/prefix/v2-manager?show-old=1 full url front
{$urls.shop_domain_url} Smarty https://myshop.com/prefix full url front
{$urls.img_ps_url} Smarty https://myshop.com/prefix/img/ full url front
{$urls.img_cat_url} Smarty https://myshop.com/prefix/img/c/ full url front
{$urls.img_lang_url} Smarty https://myshop.com/prefix/img/l/ full url front
{$urls.img_prod_url} Smarty https://myshop.com/prefix/img/p/ full url front
{$urls.img_manu_url} Smarty https://myshop.com/prefix/img/m/ full url front
{$urls.img_sup_url} Smarty https://myshop.com/prefix/img/su/ full url front
{$urls.img_ship_url} Smarty https://myshop.com/prefix/img/s/ full url front
{$urls.img_store_url} Smarty https://myshop.com/prefix/img/st/ full url front
{$urls.img_col_url} Smarty https://myshop.com/prefix/img/co/ full url front
{$urls.img_url} Smarty https://myshop.com/prefix/themes/my_theme/assets/img/ full url front
{$urls.css_url} Smarty https://myshop.com/prefix/themes/my_theme/assets/css/ full url front
{$urls.js_url} Smarty https://myshop.com/prefix/themes/my_theme/assets/js/ full url front
{$urls.pic_url} Smarty https://myshop.com/prefix/upload/ full url front
{$urls.pages.address} Smarty https://myshop.com/prefix/adresse full url front
{$urls.pages.addresses} Smarty https://myshop.com/prefix/adresses full url front
{$urls.pages.authentication} Smarty https://myshop.com/prefix/connexion full url front
{$urls.pages.cart} Smarty https://myshop.com/prefix/panier full url front
{$urls.pages.category} Smarty https://myshop.com/prefix/index.php?controller=category full url front
{$urls.pages.cms} Smarty https://myshop.com/prefix/index.php?controller=cms full url front
{$urls.pages.contact} Smarty https://myshop.com/prefix/nous-contacter full url front
{$urls.pages.discount} Smarty https://myshop.com/prefix/reduction full url front
{$urls.pages.guest_tracking} Smarty https://myshop.com/prefix/suivi-commande-invite full url front
{$urls.pages.history} Smarty https://myshop.com/prefix/historique-commandes full url front
{$urls.pages.identity} Smarty https://myshop.com/prefix/identite full url front
{$urls.pages.index} Smarty https://myshop.com/prefix/ full url front
{$urls.pages.my_account} Smarty https://myshop.com/prefix/mon-compte full url front
{$urls.pages.order_confirmation} Smarty https://myshop.com/prefix/confirmation-commande full url front
{$urls.pages.order_detail} Smarty https://myshop.com/prefix/index.php?controller=order-detail full url front
{$urls.pages.order_follow} Smarty https://myshop.com/prefix/suivi-commande full url front
{$urls.pages.order} Smarty https://myshop.com/prefix/commande full url front
{$urls.pages.order_return} Smarty https://myshop.com/prefix/index.php?controller=order-return full url front
{$urls.pages.order_slip} Smarty https://myshop.com/prefix/avoirs full url front
{$urls.pages.pagenotfound} Smarty https://myshop.com/prefix/page-introuvable full url front
{$urls.pages.password} Smarty https://myshop.com/prefix/recuperation-mot-de-passe full url front
{$urls.pages.pdf_invoice} Smarty https://myshop.com/prefix/index.php?controller=pdf-invoice full url front
{$urls.pages.pdf_order_return} Smarty https://myshop.com/prefix/index.php?controller=pdf-order-return full url front
{$urls.pages.pdf_order_slip} Smarty https://myshop.com/prefix/index.php?controller=pdf-order-slip full url front
{$urls.pages.prices_drop} Smarty https://myshop.com/prefix/promotions full url front
{$urls.pages.product} Smarty https://myshop.com/prefix/index.php?controller=product full url front
{$urls.pages.search} Smarty https://myshop.com/prefix/recherche full url front
{$urls.pages.sitemap} Smarty https://myshop.com/prefix/Sitemap full url front
{$urls.pages.stores} Smarty https://myshop.com/prefix/magasins full url front
{$urls.pages.supplier} Smarty https://myshop.com/prefix/fournisseur full url front
{$urls.pages.register} Smarty https://myshop.com/prefix/connexion?create_account=1 full url front
{$urls.pages.order_login} Smarty https://myshop.com/prefix/commande?login=1 full url front
prestashop.cart Javascript products: [], totals:[], subtotal:[], products_count, summary_string front
prestashop.configuration Javascript front
prestashop.currency Javascript name:’euro’, iso_code:’EUR’, iso_code_num:’978″, sign:’€’ front
currency Javascript name:’euro’, iso_code:’EUR’, format:’’, sign:’€’ front
prestashop.customer Javascript lastname:'AAA', firstname:'bbb', email:’aaa@bbb.com’, … front
prestashop.language Javascript name: ‘Français (French)’, iso_code: 'fr', locale: ‘fr-FR’, language_code: 'fr', is_rtl: '0',… front
prestashop.page Javascript title:'', canonical: null, meta: {}, page_name: 'index', body_classes, … front
prestashop.shop Javascript name: '', email: '', registration_number: false, long: false, lat: false front
prestashop.urls Javascript base_url:'', current_url:'', shop_domain_url:'', img_ps_url:'', img_cat_url:’’, … front
baseAdminDir Javascript /prefix/admin-dev/ back
baseDir Javascript /prefix/ back
token Javascript token used in current URL &token={token} back
token_admin_orders Javascript ??? back
token_admin_customers Javascript ??? back
token_admin_customer_threads Javascript ??? back
_PS_VERSION_ Javascript ‘1.7.2.4’ back
help_class_name Javascript ‘AdminDashboard’ back
default_currency Twig $
root_url Twig /prefix/
app Twig object of class AppVariable

Conclusiones y recomendaciones

En este articulo hemos respondido algunas preguntas relacionadas a las variables y contantes en Prestashop. Además, hemos proporcionado una tabla con gran cantidad de constantes y definiciones que podemos conocer y usar.

Es importante conocer las constantes de este CMS para optimizar la programación para tener una interfaz dinámica y funcional.

Nestor Tapia

Bloggero, amante de la programación PHP, innovador y me fascina compartir información. Desde que conocí el entorno informatico y el internet me llamó la atención la programación, Por tal motivo he creado mi blog BAULPHP.COM para compartir mis experiencias con todos ustedes. ¡Gracias por leerme!.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba