Post Top Ad

Your Ad Spot

sábado, 12 de septiembre de 2020

Cómo eliminar "/ en" de las URL en PrestaShop

Si tiene varios idiomas instalados en su tienda, todas las URL incluirán el código de idioma. E incluso cuando abra la página de inicio de su sitio, obtendrá ese sufijo de idioma, incluso para el idioma predeterminado. No se ve bien, pero afortunadamente puede corregir este comportamiento.
Este tutorial describe cómo eliminar el código de idioma predeterminado de sus URL (generalmente "/ en").

Funciona para PrestaShop 1.5 / 1.6

Tienes que usar anulaciones para hacer esto.
  1.  Crear (o editar si existe) el archivo /override/classes/Link.php
    Pegar este código en ese archivo (o combinarlo con el código existente):
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    <? php

    class Link extiende LinkCore
    función
        protegida getLangLink $ id_lang null , Context $ context null $ id_shop null $ parent_result = parent :: getLangLink $ id_lang $ context $ id_shop if $ parent_result if $ id_lang == Configuración ::
       
           

           
                get 'PS_LANG_DEFAULT' {
                    retorno '' ;
                else {
                    return $ parent_result ;
                }
            }
        }
    }
  2.  Crear (o editar si existe) el archivo /override/classes/Tools.php
    Pegar este código en ese archivo (o combinarlo con el código existente):
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    <? php

    class Tools extiende ToolsCore
    función
        pública estática setCookieLanguage $ cookie null {         parent :: setCookieLanguage $ cookie if $ cookie $ cookie = Context :: getContext -> cookie if ! Tools :: getValue 'isolang' )
       


           
               
           

            && Herramientas :: getValue 'id_lang' && Herramientas :: isSubmit 'id_category_layered' {
                $ cookie -> id_lang = Configuration :: get 'PS_LANG_DEFAULT' ;
                Context :: getContext -> idioma nuevo idioma $ cookie -> id_lang ;
            }

            / * Si el archivo de idioma no está presente, debe usar el archivo de idioma predeterminado * /
            if $ Cookie -> id_lang || ! Validate :: isUnsignedId $ cookie -> id_lang {
                $ cookie -> id_lang ( int ) Configuración :: get 'PS_LANG_DEFAULT' ;
                Context :: getContext -> idioma nuevo idioma $ cookie ->id_lang ;
            }

            $ iso = Idioma :: getIsoById ( int $ cookie -> id_lang ;
            include_once ( _PS_THEME_DIR_ 'lang /' $ iso '.php' ;

            return $ iso ;
        }
    }
    Tenga en cuenta que en la línea # 13 usamos la expresión Tools :: isSubmit ('id_category_layered') . Ayuda al módulo Blocklayered a determinar correctamente el idioma. También puede agregar a esta línea sus otros módulos que tienen problemas para determinar el idioma.
  3. Ahora borre el caché de la tienda ( cómo borrar el caché ).
¡Todo listo! Abra su sitio web y compruebe el resultado.

No hay comentarios.:

Publicar un comentario

Dejanos tu comentario para seguir mejorando!

outbrain

Páginas