Advanced Custom Fields (ACF) to popularna wtyczka do WordPressa, która pozwala na używanie zaawansowanych pól niestandardowych. Daje to możliwość łatwej rozbudowy możliwości CMS’a i dopasowania do potrzeb klientów.
Jest ona na tyle popularna, że sama w sobie doczekała się wtyczek, które dodatkowo rozszerzają jej funkcjonalność o inne. Jedną z nich jest Advanced Forms for ACF, czyli Zaawansowane formularze dla ACF.
Daje ona możliwość łatwego tworzenia formularzy front-endowych przy użyciu pól ACF. Obsługuje ona wszystkie typy pól niestandardowych, a dodatkowo oferuje możliwość choćby dodania takiego wpisu jako wpis lub stronę do systemu (możemy w ten sposób stworzyć narzędzie do publikacji treści dla gości, którzy potem mogą mieć nawet możliwość ich późniejszych edycji).
W samych ustawieniach nie znajdziemy jednak opcji na zmianę domyślnej treści przycisku, która brzmi „Submit”. Dlatego w tym krótkim poradniku wyjaśnimy Wam, jak to można zrobić.
1. Za pomocą shortcode
Każdy formularz posiada swój indywidualny shortcode, który pozwala wyświetlić go na stronie. Wygląda on następująco:
[advanced_form form="form_ID"]Tekst przycisku wysłania formularza możemy zmienić dodając do shortcode argument.
[advanced_form submit_text="Wyślij" form="form_ID"]W ten sposób tekst na przycisku zmieni się z „Submit” na „Wyślij”.
2. Stworzenie dedykowanej funkcji
Jeśli korzystamy z wielu formularzy i chcemy domyślnie zmienić tekst na polski, to możemy stworzyć dedykowaną funkcję, którą dodamy w pliku functions.php motywu. Wystarczy, że stworzymy funkcję, która będzie modyfikować argumenty formularza. Jednocześnie sprawdzimy w niej, czy nie użyto w samym shortcode argumentu, tak by zmieniać tylko domyślny tekst „Submit”. W niektórych formularzach możemy chcieć używać bardziej spersonalizowanego tekstu i nie chcemy, aby w takim wypadku funkcja go nadpisywała.
function custom_af_submit_text($args, $form) {
if (!isset($args['submit_text']) || $args['submit_text'] === 'Submit') {
$args['submit_text'] = 'Wyślij';
}
return $args;
}
add_filter('af/form/args', 'custom_af_submit_text', 10, 2);Tę funkcję wystarczy wkleić do swojego pliku functions.php. Jeśli w formularzu istnieje domyślny tekst „Submit”, zmieni go na „Wyślij”. Jeśli za pomocą argumentu w shortcode ustawiliśmy już jakiś tekst dla przycisku, wtedy pozostawi go bez zmiany.






