Проблемы с использованием антиспамбота()


У меня есть настраиваемое поле в теме, которое содержит адрес электронной почты, и я был рад найти antispambot()

<p><a href="mailto:<?php antispambot(the_field('queries_e-mail')); ?>"> <?php echo antispambot(the_field('queries_e-mail'));?></a></p>

Он выглядит нормально и работает так, как задумано (т. Е. он открывает окно создания почты), но когда я просматриваю источник кода, он не выглядит закодированным.

<p><a href="mailto:[email protected]"> [email protected]</a></p>

В соответствии с Кодексом по умолчанию используется:

<?php echo antispambot("[email protected]"); ?>

Который должен выводить:

&#106;&#111;h&#110;&#46;&#100;&#111;&#101;&#64;mysit&#101;.&#99;&#111;&#109;

Однако в моем случае кодировка, похоже, не работает.

Author: mantis, 2013-11-22

1 answers

Я думаю, что проблема в эхо против возвращение,

Т.е. что вы используете the_field вместо get_field.

То, что вы пытаетесь сделать, похоже на следующее:

 antispambot( echo( '[email protected]' ) )

Но echo ничего не возвращает.

Пожалуйста, попробуйте:

<?php $email = antispambot( get_field( 'queries_e-mail' ) ); ?>

<p>
    <a href="mailto:<?php echo $email; ?>"> 
        <?php echo $email; ?>
    </a>
</p>
 2
Author: birgire, 2013-11-22 20:51:27