Jump to content
  • 0

Hiperłącze w sekcji pola "dane kontaktowe sklepu"


adam.smolarek

Question

Witam,

mam włączony moduł blok sklepów, który konfiguruje przez dane kontaktowe sklepu. W tej mini wyszukiwarce sklepów chciałbym, aby klient po wyszukaniu sklepu, był przenoszony na stronę określonego produktu, poprzez kliknięcie nazwy (poniżej printscreen). Niestety gdy próbuję, wpisać w konfiguracji pola nazwa (w backoffice) coś takiego:

<a href="http://mojadomena.pl/index.php?id_product=9&controller=product"> Kwiaciarnia Śródmieście </a>

to dostaję ostrzeżenie: "Pole imię jest nieprawidłowe" (drugi printscreen)

Czy ktoś wie może jak "przemycić" takie hiperłącze w nazwie pola?
 

post-773658-0-91870000-1395780719_thumb.jpg

post-773658-0-68508400-1395781108_thumb.jpg

Link to comment
Share on other sites

6 answers to this question

Recommended Posts

  • 0

Nie sugeruj się tym "imię" bo to chodzi o pole "nazwa" - taki mały chochlik z tłumaczeń wyskoczył.

chodzi o to, że to pole nie akceptuje żadnych znaków poza literami i znakami typu spacja, myślnik.

6Cd1IjE.png

 

jeżeli koniecznie chcesz wpisać tam inne znaki, konieczne jest zmodyfikowanie:

a) albo klasy validate.php, która przeprowadza walidację pól (funkcja isName)

B) albo definicję obiektu tak, aby definicja nie korzystała z tej funkcji walidacji

Link to comment
Share on other sites

  • 0

Dziękuję za podpowiedź. Zrobiłem tak jak pisałeś Vekia. Wyedytowałem plik classes\validate.php i usunąłem z kodu znaczniki < > /

public static function isName($name)
    {
        return preg_match(Tools::cleanNonUnicodeSupport('^[^0-9!,;?=+()@#"°{}_$%]*$/u'), stripslashes($name));
    }

Zapisałem zmiany, wyczyściłem cache przeglądarki oraz usunąłem class_index.php aby się stworzył na nowo. Po czym otworzyłem backoffice i jeszcze raz wprowadziłem nazwę sklepu, tym razem w znacznikach <a>Kwiaciarnia Śródmieście</a> - niestety nie pomogło, i nadal jest komunikat "pole imie jest nieprawidłowe."
Czy masz jeszcze jakiś pomysł jak to zrobić?

Link to comment
Share on other sites

  • 0

zerknij w funkcję Tools::cleanNonUnicodeSupport :)

ale nie wiem czy to dobry pomysł na modyfikowanie tej funkcji.

ta funkcja wykorzystywana jest przy walidacji imienia i nazwiska klienta...

 

lepiej będzie zmienićdefinicję obiektu i sposób walidacji tego konkretnego pola wprowadzanego w back office.

Link to comment
Share on other sites

  • 0

classes/Store,php

 

jest tam linia:

'name' => 			array('type' => self::TYPE_STRING, 'validate' => 'isGenericName', 'required' => true, 'size' => 128), 

zamieniamy na:

'name' => 			array('type' => self::TYPE_STRING, 'validate' => 'isAnything', 'required' => true, 'size' => 128),'
Link to comment
Share on other sites

  • 0

Dzięki za odpowiedź. Ta zmiana kodu rzeczywiście pomogła, i Presta pozwala zapisać pole Name wraz ze znacznikami html. Natomiast jak już podlinkowałem tytuł, to znika on we frontendzie, tzn. zamiast hiperłącza, które można kliknąć jest puste pole. Ech... Coś się na to poradzi?

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...