Lekki i prosty formularz kontaktowy bez dodatkowych nieprzyjaznych dla użytkownika opcji. Możesz dodać formularz kontaktowy do dowolnej strony za pomocą kodu skrótowego contact_form
. Wtyczka jest zintegrowana z wtyczkami Akismet i GreCAPTCHA, które chronią przed spamem.
Lite Contact Form
Domyślnie wtyczka używa adresu e-mail administratora, który jest zdefiniowany w ustawieniach ogólnych WordPress. Można to zmienić, dodając atrybuty do kodu skrótowego.
[contact_form sender="noreply@domain.tld" recipient="Blog Admin <admin@domain.tld>"]
Wtyczka nie ma wbudowanych funkcji ochrony przed spamem ale jest zintegrowana z innymi wtyczkami, które najlepiej wykonują to zadanie. Możesz użyć do tego wtyczki Akismet lub/oraz GreCAPTCHA.
Domyślnie opis pól jest wyświetlany w tekście zastępczym, ale można go zmienić na etykiety.
[contact_form style="labels"]
Jeśli chcesz tylko zmienić styl CSS, po prostu dodaj selektory do pliku style.css w aktywnym motywie lub utwórz nowy plik lite-contact-form.css w aktywnym motywie.
Wtyczka jest prosta i nie ma ustawień dodawania niestandardowych pól, musisz dodać kod PHP np. w functions.php w aktywnym motywie.
Użyj funkcji add_filter, aby dodać niestandardowe pole, możesz użyć trzech filtrów.
function custom_fields_before() {
return '<p class="lcf-validate">
<input type="text" name="test" placeholder="Field with JS validation">
<span class="lcf-tip"></span>
</p>';
}
add_filter('lcf_before_fields', 'custom_fields_before');
function custom_fields_before_message() {
return '<p>
<input type="text" name="test" placeholder="Field without JS validation">
<span class="lcf-tip"></span>
</p>';
}
add_filter('lcf_before_message_field', 'custom_fields_before_message');
function custom_fields_after() {
return 'some html code';
}
add_filter('lcf_after_fields', 'custom_fields_after');
Możesz zweryfikować całe żądanie lub tylko swoje pole.
function custom_field_validate($result, $field, $value) {
if(empty($value)) {
$result['status'] = 'blocked';
$result['fields'][] = array('field' => $field, 'message' => 'This field is required.');
}
return $result;
}
add_filter('lcf_validate_field_name', 'custom_field_validate', 10, 3);
function custom_validate_request($result, $fields) {
if(...) {
$result['status'] = 'error';
$result['message'] = 'There was an error trying to send your message.';
}
return $result;
}
add_filter('lcf_validate', 'custom_validate_request', 10, 2);
Są jeszcze dwa filtry, których można użyć do zmiany tematu wiadomości e-mail i treści wiadomości.
function custom_mail_subject($subject, $fields) {
return $subject;
}
add_filter('lcf_mail_subject', 'custom_mail_subject', 10, 2);
function custom_mail_message($message, $fields) {
return $message;
}
add_filter('lcf_mail_message', 'custom_mail_message', 10, 2);