web-dev-qa-db-ja.com

重力フォームのカスタムテンプレートプレート

私のGravity Formsの "Address"ラベルをさらにカスタマイズしようとしています。現時点で彼らは「番地」、「市区町村」、「郵便番号」を読んでいます。

たとえば、「郵便番号」を「郵便番号」に変更します。コアのGFファイルをめちゃくちゃにせずに、テーマのこれらの値をオーバーライドするためにテンプレートを使用できるかどうか、誰もが知っていますか?

common.phpはこれらの値が格納されている場所のようです。

public static function get_address_types($form_id){

    $addressTypes = array(
        "international" =>  array("label" => __("International", "gravityforms"),"Zip_label" => apply_filters("gform_address_Zip_{$form_id}",apply_filters("gform_address_Zip", __("Zip / Postal Code", "gravityforms"), $form_id), $form_id),"state_label" => apply_filters("gform_address_state_{$form_id}",apply_filters("gform_address_state",__("State / Province / Region", "gravityforms"), $form_id), $form_id)),
        );

    return apply_filters("gform_address_types_{$form_id}", apply_filters("gform_address_types", $addressTypes, $form_id), $form_id);
}

任意の助けがいただければ幸いです。前もって感謝します。

4
realph

次のように、 gform_address_types フィルターを使用して、一気に束を変更できます。

/**
* customise the Address field labels
* @param array $addressTypes
* @return array
*/
add_filter('gform_address_types', function ($addressTypes) {
    $addressTypes['international']['Zip_label'] = 'Postcode';
    $addressTypes['international']['state_label'] = 'State';

    return $addressTypes;
});
2
webaware

きっとできます。重力フォームには たくさんのフックとフィルタ が用意されています。

それで さまざまなサブラベルをフィルタリングすることができます

add_filter( 'gform_address_Zip', 'call_it_a_post_code', 10, 2 );
function call_it_a_post_code( $label, $form_id ) {
    return 'Post code';
}

...あなたの "Post code"の例にあなたが望むことをするべきです。

1
Pat J