Jump to content

Edit History

wepresta

wepresta

28 minutes ago, the_supermac said:

Grazie gentilissimo, la versione è l a8.1.4, il tema è il classico ma modificato con Creative Elements (ma la pagina di login non è stata alterata) ....

Ho aperto authentication.tpl, ci trovo dentro questo:
...

    {block name='display_after_login_form'}
        {hook h='displayCustomerLoginFormAfter'}
      {/block}
      <div class="no-account">
        <a href="{$urls.pages.register}" data-link-action="display-register-form">
          {l s='No account? Create one here' d='Shop.Theme.Customeraccount'}
        </a>
      </div>
...

Modificato in:
  {block name='display_after_login_form'}
        {hook h='displayCustomerLoginFormAfter'}
      {/block}
      <div class="no-account">
        <a href="{$urls.pages.authentication}?create_account=1" data-link-action="display-register-form">
          {l s='No account? Create one here' d='Shop.Theme.Customeraccount'}
        </a>
      </div>

Ma dopo la pulizia della cache mi da lo stesso errore....

Il link ora viene così: https://pixsys.shop/en/login?create_account=1  . Ho provato anche l'altro che mi hai suggerito https://pixsys.shop/en/authentication?create_account=1 ma non funziona nessuno dei due, ovvero il primo rimanda qui https://pixsys.shop/en/index.php?controller=registration e restituisce 404, il secondo invece non crasha ma mi dice che non trova la pagina

Capito: il problema non è il link che avete messo, è lo script del tema che intercetta quel link perché avete lasciato:

data-link-action="display-register-form"

Nel tema Classic quel “data-link-action” viene gestito in JS e può forzare la navigazione verso controller=registration (che nel vostro caso punta a una route inesistente → 404).

Fate così :

In authentication.tpl togliete proprio data-link-action="display-register-form"

Lasciate un link “normale” verso la pagina di login con create_account:

<a href="{$urls.pages.authentication}?create_account=1"> {l s='No account? Create one here' d='Shop.Theme.Customeraccount'} </a>

Note:

{$urls.pages.authentication} in PS8 di solito è /login, quindi è corretto.

/authentication come URL “pulita” spesso non esiste, quindi è normale che dia 404.

Se dopo aver tolto data-link-action continua comunque a finire su controller=registration, allora è un override/modulo (molto probabilmente Creative Elements o un modulo SEO/URL) che sovrascrive prestashop.urls.pages.register. In quel caso, test rapido: disabilitate temporaneamente Creative Elements (ou moduli SEO/URL) e riprovate.

wepresta

wepresta

28 minutes ago, the_supermac said:

Grazie gentilissimo, la versione è l a8.1.4, il tema è il classico ma modificato con Creative Elements (ma la pagina di login non è stata alterata) ....

Ho aperto authentication.tpl, ci trovo dentro questo:
...

    {block name='display_after_login_form'}
        {hook h='displayCustomerLoginFormAfter'}
      {/block}
      <div class="no-account">
        <a href="{$urls.pages.register}" data-link-action="display-register-form">
          {l s='No account? Create one here' d='Shop.Theme.Customeraccount'}
        </a>
      </div>
...

Modificato in:
  {block name='display_after_login_form'}
        {hook h='displayCustomerLoginFormAfter'}
      {/block}
      <div class="no-account">
        <a href="{$urls.pages.authentication}?create_account=1" data-link-action="display-register-form">
          {l s='No account? Create one here' d='Shop.Theme.Customeraccount'}
        </a>
      </div>

Ma dopo la pulizia della cache mi da lo stesso errore....

Il link ora viene così: https://pixsys.shop/en/login?create_account=1  . Ho provato anche l'altro che mi hai suggerito https://pixsys.shop/en/authentication?create_account=1 ma non funziona nessuno dei due, ovvero il primo rimanda qui https://pixsys.shop/en/index.php?controller=registration e restituisce 404, il secondo invece non crasha ma mi dice che non trova la pagina

Capito: il problema non è il link che avete messo, è lo script del tema che intercetta quel link perché avete lasciato:

data-link-action="display-register-form"

Nel tema Classic quel “data-link-action” viene gestito in JS e può forzare la navigazione verso controller=registration (che nel vostro caso punta a una route inesistente → 404).

Fate così (test semplice):

In authentication.tpl togliete proprio data-link-action="display-register-form"

Lasciate un link “normale” verso la pagina di login con create_account:

<a href="{$urls.pages.authentication}?create_account=1"> {l s='No account? Create one here' d='Shop.Theme.Customeraccount'} </a>

Note:

{$urls.pages.authentication} in PS8 di solito è /login, quindi è corretto.

/authentication come URL “pulita” spesso non esiste, quindi è normale che dia 404.

Se dopo aver tolto data-link-action continua comunque a finire su controller=registration, allora è un override/modulo (molto probabilmente Creative Elements o un modulo SEO/URL) che sovrascrive prestashop.urls.pages.register. In quel caso, test rapido: disabilitate temporaneamente Creative Elements (ou moduli SEO/URL) e riprovate.

×
×
  • Create New...