Функция comment_author_email_link()
в WordPress используется для вывода HTML-ссылки на адрес электронной почты автора комментария. Ссылка создается в формате mailto:
, что позволяет пользователю быстро отправить email автору комментария через почтовый клиент.
Важно отметить, что функция должна быть использована внутри Цикла комментариев, чтобы корректно отобразить email автора. Если в настройках WordPress отключена опция обязательного заполнения имени и email, функция не выведет ничего.
comment_author_email_link( $linktext = '', $before = '', $after = '', $comment = 0 );
Параметры
- $linktext (строка, необязательный): Текст ссылки. По умолчанию отображается email комментатора.
- $before (строка, необязательный): Текст, который будет добавлен перед ссылкой. По умолчанию пусто.
- $after (строка, необязательный): Текст, который будет добавлен после ссылки. По умолчанию пусто.
- $comment (число/WP_Comment, необязательный): ID или объект комментария, для которого нужно получить ссылку на email автора. С версии 4.6. По умолчанию: 0 (текущий комментарий).
Возвращаемое значение
Функция возвращает null
. Она выводит HTML-код ссылки mailto:
на экран.
Пример 1: Вывод email комментатора
Этот пример демонстрирует, как вывести email комментатора на экран.
<?php
// Вывод email комментатора
echo 'Email: ';
comment_author_email_link();
?>
Пример 2: Изменение текста ссылки
В этом примере мы изменяем текст ссылки на «Связаться с автором комментария по почте» и добавляем текстовые метки до и после ссылки.
<?php
// Изменение текста ссылки и добавление дополнительных текстов
comment_author_email_link('Связаться с автором комментария по почте', ' ( ', ' ) ');
?>
В результате мы получим:
( <a href="mailto:[email protected]">Связаться с автором комментария по почте</a> )
Пример 3: Вывод ссылки на email автора комментария в шаблоне комментариев
Этот пример показывает, как использовать функцию в шаблоне комментариев для отображения ссылки на email автора.
<?php
// Вставьте этот код в ваш шаблон комментариев, например, в comments.php
if ( have_comments() ) :
foreach ( $comments as $comment ) :
// Получение ID комментария
$comment_id = $comment->comment_ID;
// Вывод ссылки на email автора комментария
echo '<p>Контактный email автора: ';
echo comment_author_email_link( $comment_id );
echo '</p>';
endforeach;
endif;
?>
Пример 4: Использование функции в админ-панели
Этот пример показывает, как использовать comment_author_email_link()
для отображения ссылки на email автора комментария в админ-панели.
<?php
// Вывод ссылки на email автора комментария в админ-панели
function custom_admin_comment_email_link( $comment_id ) {
$link = comment_author_email_link( $comment_id );
echo '<p>Контактный email автора: ' . $link . '</p>';
}
// Используйте этот код в вашем плагине или теме для вывода ссылки на email автора в админ-панели
add_action( 'manage_comments_custom_column', 'custom_admin_comment_email_link', 10, 1 );
?>
Важно
- Если email автора не указан, функция вернет пустую строку.
- Функция работает на основе
get_comment_author_email_link()
, но отличается тем, что непосредственно выводит HTML-код на экран. - Обратите внимание, что вывод адресов электронной почты может быть небезопасен, так как они могут быть использованы спамерами.
Заключение
Функция comment_author_email_link()
предоставляет простой способ отображения ссылки на email автора комментария в формате mailto:
, что позволяет пользователям легко отправить сообщение через почтовый клиент. Несмотря на свою полезность, важно помнить о потенциальных рисках, связанных с раскрытием адресов электронной почты, и использовать функцию с осторожностью для предотвращения спама.