tl; dr
Ukryj adres e-mail przed botami bez używania skryptów i zachowaj mailto:
funkcjonalność. Metoda musi również obsługiwać czytniki ekranu.
Podsumowanie
Maskowanie wiadomości e-mail bez korzystania ze skryptów lub formularzy kontaktowych
Adres e-mail musi być całkowicie widoczny dla ludzi i zachowywać
mailto:
funkcjonalnośćAdres e-mail nie może być w postaci obrazu .
Adres e-mail musi być „całkowicie” ukryty przed robotami spamującymi, robotami spamującymi i innymi typami programów zbierających
Pożądany efekt:
Żadnych skryptów , proszę. W projekcie nie ma używanych skryptów i chciałbym, żeby tak zostało .
Adres e-mail jest wyświetlany na stronie lub można go łatwo wyświetlić po jakiejś interakcji użytkownika, takiej jak otwarcie modalu.
Użytkownik może kliknąć na adres e-mail, co z kolei mogłoby wyzwolić
mailto:
funkcjonalność.Kliknięcie wiadomości e-mail spowoduje otwarcie aplikacji poczty elektronicznej użytkownika.
Innymi słowy,
mailto:
funkcjonalność musi działać.Adres e-mail jest niewidoczny lub nie jest identyfikowany jako adres e-mail dla botów (obejmuje to źródło strony)
Nie mam skrzynki odbiorczej pełnej spamu
Co NIE działa
Dodanie formularza kontaktowego - lub czegoś podobnego - zamiast adresu e-mail
Nienawidzę formularzy kontaktowych . Rzadko wypełniam formularz kontaktowy. Jeśli nie ma adresu e-mail, szukam numeru telefonu, a jeśli go nie ma, zaczynam szukać alternatywnej usługi. Wypełniłbym formularz kontaktowy tylko wtedy, gdybym absolutnie musiał.
Zastąpienie adresu obrazem adresu
Stwarza to OGROMNĄ wadę dla kogoś korzystającego z czytnika ekranu ( pamiętaj o niedowidzących w przyszłych projektach )
Usuwa również tę
mailto:
funkcję, chyba że klikniesz obraz, a następnie dodaszmailto:
funkcję jakohref
link, ale to mija się z celem i teraz e-mail jest widoczny dla botów.
Co może zadziałać:
Sprytne wykorzystanie
pseudo-elements
wCSS
Rozwiązania wykorzystujące
base64
kodowaniePodzielenie adresu e-mail i rozłożenie części w dokumencie, a następnie złożenie ich z powrotem w modalny sposób, gdy użytkownik kliknie przycisk (prawdopodobnie będzie to wymagało wielu
CSS
klas i użyciaanchor tags
)Zmiana
html
atrybutów za pośrednictwemCSS
@MortezaAsadi z wdziękiem wspomniał o możliwości w komentarzach poniżej. Oto link do pełnej wersji - Artykuł pochodzi z 2012 roku:
Co by było, gdybyśmy mogli użyć CSS do zmiany atrybutów HTML?
Inne kreatywne rozwiązania, które wykraczają poza mój zakres wiedzy.
Podobne pytania / poprawki
(To świetna poprawka zaproponowana przez Joe Mallera, działa dobrze, ale jest oparta na skrypcie . Oto jak to wygląda;
<SCRIPT TYPE="text/javascript">
emailE = 'emailserver.com'
emailE = ('yourname' + '@' + emailE)
document.write('<A href="mailto:' + emailE + '">' + emailE + '</a>')
</script>
<NOSCRIPT>
Email address protected by JavaScript
</NOSCRIPT>
Szukam funkcji zaciemniania adresu e-mail tylko php
(Sprytne rozwiązanie wykorzystujące obie
PHP
iCSS
najpierw odwrócenie wiadomości e-mail za pomocą PHP, a następnie odwrócenie jej z powrotem za pomocą CSS) Bardzo obiecujące rozwiązanie, które działa świetnie! Ale jest to zbyt łatwe do rozwiązania .Czy w dzisiejszych czasach warto zaciemniać adresy e-mail w sieci?
(Poprawka Javascript)
Najlepszy sposób na zaciemnienie adresu e-mail w witrynie internetowej?
Wybrana odpowiedź działa . W rzeczywistości działa naprawdę dobrze. Polega na zakodowaniu wiadomości e-mail jako
html entities
. Czy można to poprawić?Oto jak to wygląda;
<A HREF="mailto: yourname@domain.com"> yourname@domain.com </A>
Czy zaciemnianie adresu e-mail faktycznie działa?
(Wybrana odpowiedź na to pytanie SuperUser jest świetna i przedstawia badanie ilości spamu otrzymanego przy użyciu różnych metod zaciemniania.
Wygląda na to, że manipulowanie adresem e-mail za pomocą,
CSS
abyrtl
działał. Jest to ta sama metoda, której użyto w pierwszym pytaniu, do którego nawiązałem w tej sekcji.Nie jestem pewien, jaki wpływ
mailto:
na wyniki miałoby dodanie funkcjonalności do poprawki.Istnieje również wiele innych pytań dotyczących SO, na które wszystkie mają podobne odpowiedzi. Nie znalazłem niczego, co pasowałoby do mojego pożądanego efektu
Pytanie:
Czy byłoby możliwe zwiększenie wydajności (tj. Jak najmniej spamu) powyższych metod zaciemniania wiadomości e-mail poprzez połączenie dwóch lub więcej poprawek (lub nawet dodanie nowych), podczas gdy:
A- Utrzymanie mailto:
funkcjonalności; i
B- Obsługa czytników ekranu
Edytować:
Wiele z poniższych odpowiedzi i komentarzy stawia bardzo dobre pytanie, wskazując jednocześnie na niemożliwość zrobienia tego bez jakiegoś powodujs
Pytanie, które jest zadawane / sugerowane, brzmi:
Dlaczego nie używać
js
?
Odpowiedź brzmi, że mam alergię js
Jednak żarty na bok,
Trzy główne powody, dla których zadałem to pytanie, to:
Formularze kontaktowe są coraz bardziej akceptowane jako zamiennik podawania adresu e-mail - czego nie powinny.
Jeśli można to zrobić bez skryptów, należy to zrobić bez skryptów.
Ciekawość: (ponieważ
js
obecnie używam jednej z poprawek) chciałem sprawdzić, czy omówienie tej sprawy doprowadziłoby do lepszego sposobu zrobienia tego.
mailto:
funkcjonalność i nie chcesz używać Javascript, to po prostu nie jest to możliwe.