通过使用 MailTo 宏,您可以放心的将邮件地址写在wiki中,不必担心邮件地址被垃圾邮件程序收集(这种机器人程序专门收集电子邮件地址),或被垃圾邮件制造者非法使用。

用法

<<MailTo(Firstname DOT Lastname AT example DOT net)>>

或者

<<MailTo(Firstname DOT Lastname AT example DOT net, link text)>>

这个宏应该做些什么?

我们需要区分已登录用户和匿名用户(其中包含了垃圾邮件机器人程序)。

已登录用户应该可以看到邮件地址,并且应该可以通过点击链接来使用该邮件地址。

匿名用户的情况比较棘手 — 他们可能是“普通”用户,也可能是一些专门收集邮件地址的人或者其他什么东西(比如,垃圾邮件机器人)。这些邮件地址可能被滥用于发送商业邮件,这也是因特网上普遍存在的问题。

已登录用户

他们将看到下面的结果:

匿名用户

匿名用户(比如垃圾邮件机器人程序和其它用途的机器人程序)将只能得到和宏参数一样的结果:

纯文本,没有 mailto: 链接。聪明的“人类”将可以解释这些文字,并把得到的地址手动填加到电子邮件程序里。

但是一个自动化的机器应该不能从中提取出有用信息,因而忽略它(除非这种机器人程序非常聪明,这种情况下,请看下面的介绍)— 这个宏命令就达到了它的目的,防止垃圾邮件。

工作原理及更多示例

对于匿名用户,本宏命令会简单得将其得到的参数直接输出。

对于已登录用户,本宏命令会按照如下方法处理其参数:

  1. 下面的“全大写”单词将被替换成相应字符:
    • AT

      @

      DOT

      .

      DASH

      -

  2. 其他的“全大写”单词,例如:NO SPAM NOSPAM WHATEVER I DONT WANT SPAM 等等,将会被清除(替换成空字符串)。
  3. 删除所有空白字符。
  4. 创建一个能够被点击的 mailto: 链接。

当然,一个特别聪明的垃圾邮件机器人有可能正确识别和转换通常用作“垃圾邮件保护单词”的单词,例如: AT, DOT 和 NOSPAM 。如果你在其中加入了任意的单词或空格,这种事情就不太可能发生了。但垃圾邮件机器人还是能够识别出它里面包含有您的邮件地址. ;)

这里,您可以简单的比较一下已登录用户和匿名用户见到的 MailTo 的不同效果:

(!) 有了随意加入“全大写”单词的能力,每个用户都可以随意增加机器人或者非登录用户的阅读障碍。如果它难以被人看懂,你收到的邮件可能就不会像以前那么多了。 ;)

此页的英文版本:HelpOnMacros/MailTo