wpmudev-sls
2/11/2018 - 12:37 PM

[MarketPress] - Filter address fields

[MarketPress] - Filter address fields

<?php
/**
* Plugin Name: [MarketPress] - Filter address fields
* Plugin URI: https://premium.wpmudev.org/
* Description: Filter profile fields to add placeholders, remove laels etc. This can be used as a guide
* Author: Panos Lyrakis @ WPMUDEV
* Author URI: https://premium.wpmudev.org/
* License: GPLv2 or later
*/

add_filter( 'mp_checkout/address_fields_array', function( $address_fields, $type ) {

	$elements_names_placeholders = array( 
		'billing[first_name]' => 'Insert your first name',
		'billing[last_name]' => 'Insert your last name',
		'billing[email]' => 'Insert your email'
	);

	if( is_array( $address_fields ) ) {

		foreach( $address_fields as $field_key => $address_field ) {

			if( isset( $address_field[ 'subfields' ] ) ) {

				if( ! is_array( $address_field[ 'subfields' ] ) ){
					continue;
				}

				foreach ( $address_field[ 'subfields' ] as $sub_key => $sub_field ) {
					
					if( isset( $sub_field['name'] ) && isset( $elements_names_placeholders[ $sub_field['name'] ] ) ){
						$address_fields[ $field_key ]['subfields'][ $sub_key ]['atts']['placeholder'] = $elements_names_placeholders[ $sub_field['name'] ];
						$address_fields[ $field_key ]['subfields'][ $sub_key ]['label'] = '';
					}

				}

			}
			else{
				if( isset( $address_field['name'] ) && isset( $elements_names_placeholders[ $address_field['name'] ] ) ){
					$address_fields[ $field_key ]['atts']['placeholder'] = $elements_names_placeholders[ $address_field['name'] ];
					$address_fields[ $field_key ]['label'] = '';
				}
			}

		}
		
	}

	return $address_fields;

}, 10, 2 );