• Resolved Jack

    (@jack1132132)


    Hello,

    Is there a better way to create a locality dropdown which depends on the choice from the district dropdown?
    Right now I have a different dropdown field for each district selected, and the conditions for that, but it can leave a lot of room for mistakes.


    Thank you.

Viewing 9 replies - 1 through 9 (of 9 total)
  • Thread Starter Jack

    (@jack1132132)

    @missveronicatv ,

    Hello,

    I didn’t know about that feature.

    However, how can I use the filter in that case for the city in the user directory?

    Thank you.

    • This reply was modified 2 years, 1 month ago by Jack.

    @jack1132132

    Both District and City will have their own meta_keys/values.

    Thread Starter Jack

    (@jack1132132)

    Hello,

    How can I prevent this issue of “No Results Found” while the ajax is calling the callback to fetch the cities?

    Here’s a video demonstrating this: https://vimeo.com/797950730


    Thank you.

    missveronica

    (@missveronicatv)

    @jack1132132

    Can you post here in the Forum with formatting CODE your code snippets.

    Thread Starter Jack

    (@jack1132132)

    Hello @missveronicatv

    I used the example code in the link to make it work for my case, here’s the code:

    
    
    function custom_district_list_dropdown() { 	
    
    	$coutries = array( 
    		 "Aveiro" => "Aveiro", 
    		 "Beja" => "Beja" ,
    		 "Braga" => "Braga" ,
    		 "Bragan?a" => "Bragan?a" ,
    		 "Castelo Branco" => "Castelo Branco" ,
    		 "Coimbra" => "Coimbra" ,
    		 "évora" => "évora" ,
    		 "Faro" => "Faro" ,
    		 "Guarda" => "Guarda" ,
    		 "Leiria" => "Leiria" ,
    		 "Lisboa" => "Lisboa" ,
    		 "Portalegre" => "Portalegre" ,
    		 "Porto" => "Porto" ,
    		 "Santarém" => "Santarém" ,
    		 "Setúbal" => "Setúbal" ,
    		 "Viana do Castelo" => "Viana do Castelo" ,
    		 "Vila Real" => "Vila Real" ,
    		 "Viseu" => "Viseu" ,
    		 "Madeira" => "Madeira" ,
    		 "A?ores" => "A?ores" ,
    	); 		
    
    	return $coutries;         
    }
    
    function getCitiesDropdownList( $has_parent = false ){ 
    
    	$parent_options = isset( $_POST['parent_option'] ) ? $_POST['parent_option'] : false;
    	
    
    	$all_options = Array(
    
    	'Aveiro' => Array
    		(
    			'Albergaria-a-Velha' => 'Albergaria-a-Velha',
    			'Anadia' => 'Anadia',
    			'Argoncilhe' => 'Argoncilhe',
    			'Arouca' => 'Arouca',
    			'Aveiro' => 'Aveiro',
    			'Castelo de Paiva' => 'Castelo de Paiva',
    			'Espinho' => 'Espinho',
    			'Estarreja' => 'Estarreja',
    			'Fermentelos' => 'Fermentelos',
    			'Gafanha da Nazaré' => 'Gafanha da Nazaré',
    			'Mealhada' => 'Mealhada',
    			'Murtosa' => 'Murtosa',
    			'Oliveira de Azemeis' => 'Oliveira de Azemeis',
    			'Oliveira do Bairro' => 'Oliveira do Bairro',
    			'Ovar' => 'Ovar',
    			'Santa Maria da Feira' => 'Santa Maria da Feira',
    			'Sever do Vouga' => 'Sever do Vouga',
    			'S?o Jo?o da Madeira' => 'S?o Jo?o da Madeira',
    			'Vagos' => 'Vagos',
    			'Vale de Cambra' => 'Vale de Cambra',
    			'águeda' => 'águeda',
    			'ílhavo' => 'ílhavo',
    		),
    
    	'Porto' => Array
    		(
    			'Alfena' => 'Alfena',
    			'Amarante' => 'Amarante',
    			'Arcozelo' => 'Arcozelo',
    			'Aver-o-Mar' => 'Aver-o-Mar',
    			'Bai?o' => 'Bai?o',
    			'Castel?es de Cepeda' => 'Castel?es de Cepeda',
    			'Ermezinde' => 'Ermezinde',
    			'Felgueiras' => 'Felgueiras',
    			'Gondomar' => 'Gondomar',
    			'Lousada' => 'Lousada',
    			'Mafamude' => 'Mafamude',
    			'Maia' => 'Maia',
    			'Marco de Canavezes' => 'Marco de Canavezes',
    			'Matosinhos' => 'Matosinhos',
    			'Olival' => 'Olival',
    			'Paredes' => 'Paredes',
    			'Pa?os de Ferreira' => 'Pa?os de Ferreira',
    			'Penafiel' => 'Penafiel',
    			'Porto' => 'Porto',
    			'Póvoa de Varzim' => 'Póvoa de Varzim',
    			'Rio Tinto' => 'Rio Tinto',
    			'Santo Tirso' => 'Santo Tirso',
    			'Trofa' => 'Trofa',
    			'Valadares' => 'Valadares',
    			'Valongo' => 'Valongo',
    			'Vila Nova de Gaia' => 'Vila Nova de Gaia',
    			'Vila do Conde' => 'Vila do Conde',
    		),
    
    	'Viseu' => Array
    		(
    			'Armamar' => 'Armamar',
    			'Canas de Senhorim' => 'Canas de Senhorim',
    			'Carregal do Sal' => 'Carregal do Sal',
    			'Castro Daire' => 'Castro Daire',
    			'Cinf?es' => 'Cinf?es',
    			'Lamego' => 'Lamego',
    			'Mangualde' => 'Mangualde',
    			'Moimenta da Beira' => 'Moimenta da Beira',
    			'Mortágua' => 'Mortágua',
    			'Nelas' => 'Nelas',
    			'Oliveira de Frades' => 'Oliveira de Frades',
    			'Penalva do Castelo' => 'Penalva do Castelo',
    			'Penedono' => 'Penedono',
    			'Resende' => 'Resende',
    			'Santa Comba D?o' => 'Santa Comba D?o',
    			'Sernancelhe' => 'Sernancelhe',
    			'Sát?o' => 'Sát?o',
    			'S?o Jo?o da Pesqueira' => 'S?o Jo?o da Pesqueira',
    			'S?o Pedro do Sul' => 'S?o Pedro do Sul',
    			'Tabua?o' => 'Tabua?o',
    			'Tarouca' => 'Tarouca',
    			'Tondela' => 'Tondela',
    			'Vila Nova de Paiva' => 'Vila Nova de Paiva',
    			'Viseu' => 'Viseu',
    		),
    
    	'Braga' => Array
    		(
    			'Amares' => 'Amares',
    			'Barcelos' => 'Barcelos',
    			'Braga' => 'Braga',
    			'Cabeceiras de Basto' => 'Cabeceiras de Basto',
    			'Celeiroz' => 'Celeiroz',
    			'Celorico de Basto' => 'Celorico de Basto',
    			'Esposende' => 'Esposende',
    			'Fafe' => 'Fafe',
    			'Famalic?o' => 'Famalic?o',
    			'Ferreiros' => 'Ferreiros',
    			'Guimar?es' => 'Guimar?es',
    			'Joane' => 'Joane',
    			'Póvoa de Lanhoso' => 'Póvoa de Lanhoso',
    			'Real' => 'Real',
    			'Riba de Ave' => 'Riba de Ave',
    			'Terras de Bouro' => 'Terras de Bouro',
    			'Vieira do Minho' => 'Vieira do Minho',
    			'Vila Verde' => 'Vila Verde',
    			'Vizela' => 'Vizela',
    		),
    
    	'Vila Real' => Array
    		(
    			'Alijó' => 'Alijó',
    			'Boticas' => 'Boticas',
    			'Chaves' => 'Chaves',
    			'Mes?o Frio' => 'Mes?o Frio',
    			'Mondim de Basto' => 'Mondim de Basto',
    			'Montalegre' => 'Montalegre',
    			'Mur?a' => 'Mur?a',
    			'Peso da Régua' => 'Peso da Régua',
    			'Ribeira de Pena' => 'Ribeira de Pena',
    			'Sabrosa' => 'Sabrosa',
    			'Santa Marta de Penagui?o' => 'Santa Marta de Penagui?o',
    			'Valpa?os' => 'Valpa?os',
    			'Vila Pouca de Aguiar' => 'Vila Pouca de Aguiar',
    			'Vila Real' => 'Vila Real',
    		),
    
    	'Coimbra' => Array
    		(
    			'Arganil' => 'Arganil',
    			'Cantanhede' => 'Cantanhede',
    			'Coimbra' => 'Coimbra',
    			'Condeixa-a-Nova' => 'Condeixa-a-Nova',
    			'Figueira da Foz' => 'Figueira da Foz',
    			'Góis' => 'Góis',
    			'Lorv?o' => 'Lorv?o',
    			'Lous?' => 'Lous?',
    			'Mira' => 'Mira',
    			'Miranda do Corvo' => 'Miranda do Corvo',
    			'Montemor-o-Velho' => 'Montemor-o-Velho',
    			'Oliveira do Hospital' => 'Oliveira do Hospital',
    			'Pampilhosa da Serra' => 'Pampilhosa da Serra',
    			'Penacova' => 'Penacova',
    			'Penela' => 'Penela',
    			'Poiares' => 'Poiares',
    			'Soure' => 'Soure',
    			'Trouxemil' => 'Trouxemil',
    			'Tábua' => 'Tábua',
    		),
    
    	'Guarda' => Array
    		(
    			'Aguiar da Beira' => 'Aguiar da Beira',
    			'Almeida' => 'Almeida',
    			'Celorico da Beira' => 'Celorico da Beira',
    			'Figueira de Castelo Rodrigo' => 'Figueira de Castelo Rodrigo',
    			'Fornos de Algodres' => 'Fornos de Algodres',
    			'Gouveia' => 'Gouveia',
    			'Guarda' => 'Guarda',
    			'Manteigas' => 'Manteigas',
    			'Mêda' => 'Mêda',
    			'Pinhel' => 'Pinhel',
    			'Sabugal' => 'Sabugal',
    			'Seia' => 'Seia',
    			'Trancoso' => 'Trancoso',
    			'Vila Nova de Foz C?a' => 'Vila Nova de Foz C?a',
    		),
    
    	'Viana do Castelo' => Array
    		(
    			'Arcos de Valdevez' => 'Arcos de Valdevez',
    			'Arcozelo' => 'Arcozelo',
    			'Caminha' => 'Caminha',
    			'Melga?o' => 'Melga?o',
    			'Mon??o' => 'Mon??o',
    			'Paredes de Coura' => 'Paredes de Coura',
    			'Ponte da Barca' => 'Ponte da Barca',
    			'Ponte de Lima' => 'Ponte de Lima',
    			'Valen?a' => 'Valen?a',
    			'Viana do Castelo' => 'Viana do Castelo',
    			'Vila Nova de Cerveira' => 'Vila Nova de Cerveira',
    		),
    
    	'Bragan?a' => Array
    		(
    			'Alfandega da Fé' => 'Alfandega da Fé',
    			'Bragan?a' => 'Bragan?a',
    			'Carrazeda de Anci?es' => 'Carrazeda de Anci?es',
    			'Freixo de Espada à Cinta' => 'Freixo de Espada à Cinta',
    			'Macedo de Cavaleiros' => 'Macedo de Cavaleiros',
    			'Miranda do Douro' => 'Miranda do Douro',
    			'Mirandela' => 'Mirandela',
    			'Mogadouro' => 'Mogadouro',
    			'Torre de Moncorvo' => 'Torre de Moncorvo',
    			'Vila Flor' => 'Vila Flor',
    			'Vimioso' => 'Vimioso',
    			'Vinhais' => 'Vinhais',
    		),
    
    	'Leiria' => Array
    		(
    			'Alcoba?a' => 'Alcoba?a',
    			'Alvaiázere' => 'Alvaiázere',
    			'Ansi?o' => 'Ansi?o',
    			'Batalha' => 'Batalha',
    			'Bombarral' => 'Bombarral',
    			'Caldas da Rainha' => 'Caldas da Rainha',
    			'Caranguejeira' => 'Caranguejeira',
    			'Castanheira de Pêra' => 'Castanheira de Pêra',
    			'Figueiró dos Vinhos' => 'Figueiró dos Vinhos',
    			'Leiria' => 'Leiria',
    			'Marinha Grande' => 'Marinha Grande',
    			'Nazaré' => 'Nazaré',
    			'Pedróg?o Grande' => 'Pedróg?o Grande',
    			'Peniche' => 'Peniche',
    			'Pombal' => 'Pombal',
    			'Porto de Mós' => 'Porto de Mós',
    			'Valado de Frades' => 'Valado de Frades',
    			'óbidos' => 'óbidos',
    		),
    
    	'Castelo Branco' => Array
    		(
    			'Belmonte' => 'Belmonte',
    			'Castelo Branco' => 'Castelo Branco',
    			'Covilh?' => 'Covilh?',
    			'Fund?o' => 'Fund?o',
    			'Idanha-a-Nova' => 'Idanha-a-Nova',
    			'Oleiros' => 'Oleiros',
    			'Penamacor' => 'Penamacor',
    			'Proen?a-a-Nova' => 'Proen?a-a-Nova',
    			'Sert?' => 'Sert?',
    			'Vila Velha de Ród?o' => 'Vila Velha de Ród?o',
    			'Vila de Rei' => 'Vila de Rei',
    		),
    
    	'Santarém' => Array
    		(
    			'Abrantes' => 'Abrantes',
    			'Alcanena' => 'Alcanena',
    			'Almeirim' => 'Almeirim',
    			'Alpiar?a' => 'Alpiar?a',
    			'Benavente' => 'Benavente',
    			'Cartaxo' => 'Cartaxo',
    			'Chamusca' => 'Chamusca',
    			'Constancia' => 'Constancia',
    			'Coruche' => 'Coruche',
    			'Entroncamento' => 'Entroncamento',
    			'Ferreira do Zêzere' => 'Ferreira do Zêzere',
    			'Goleg?' => 'Goleg?',
    			'Ma??o' => 'Ma??o',
    			'Ourém' => 'Ourém',
    			'Riachos' => 'Riachos',
    			'Rio Maior' => 'Rio Maior',
    			'Salvaterra de Magos' => 'Salvaterra de Magos',
    			'Santarém' => 'Santarém',
    			'Sardoal' => 'Sardoal',
    			'Tomar' => 'Tomar',
    			'Torres Novas' => 'Torres Novas',
    			'Tramagal' => 'Tramagal',
    			'Vila Nova da Barquinha' => 'Vila Nova da Barquinha',
    		),
    
    	'Portalegre' => Array
    		(
    			'Alter do Ch?o' => 'Alter do Ch?o',
    			'Arronches' => 'Arronches',
    			'Avis' => 'Avis',
    			'Campo Maior' => 'Campo Maior',
    			'Castelo de Vide' => 'Castelo de Vide',
    			'Crato' => 'Crato',
    			'Elvas' => 'Elvas',
    			'Fronteira' => 'Fronteira',
    			'Gavi?o' => 'Gavi?o',
    			'Marv?o' => 'Marv?o',
    			'Monforte' => 'Monforte',
    			'Nisa' => 'Nisa',
    			'Ponte de S?r' => 'Ponte de S?r',
    			'Portalegre' => 'Portalegre',
    			'Sousel' => 'Sousel',
    		),
    
    	'Lisboa' => Array
    		(
    			'Agualva' => 'Agualva',
    			'Alenquer' => 'Alenquer',
    			'Almargem' => 'Almargem',
    			'Amadora' => 'Amadora',
    			'Arruda dos Vinhos' => 'Arruda dos Vinhos',
    			'Azambuja' => 'Azambuja',
    			'Cacém' => 'Cacém',
    			'Cadaval' => 'Cadaval',
    			'Cascais' => 'Cascais',
    			'Estoril' => 'Estoril',
    			'Falagueira' => 'Falagueira',
    			'Lisboa' => 'Lisboa',
    			'Loures' => 'Loures',
    			'Lourinh?' => 'Lourinh?',
    			'Mafra' => 'Mafra',
    			'Massamá' => 'Massamá',
    			'Odivelas' => 'Odivelas',
    			'Oeiras' => 'Oeiras',
    			'Queluz' => 'Queluz',
    			'Sacavém' => 'Sacavém',
    			'Sintra' => 'Sintra',
    			'Sobral de Monte Agra?o' => 'Sobral de Monte Agra?o',
    			'S?o Martinho' => 'S?o Martinho',
    			'Terrujem' => 'Terrujem',
    			'Torres Vedras' => 'Torres Vedras',
    			'Vila Franca de Xira' => 'Vila Franca de Xira',
    		),
    
    	'évora' => Array
    		(
    			'Alandroal' => 'Alandroal',
    			'Arraiolos' => 'Arraiolos',
    			'Borba' => 'Borba',
    			'Estremoz' => 'Estremoz',
    			'Montemor-o-Novo' => 'Montemor-o-Novo',
    			'Mora' => 'Mora',
    			'Mour?o' => 'Mour?o',
    			'Portel' => 'Portel',
    			'Redondo' => 'Redondo',
    			'Reguengos de Monsaraz' => 'Reguengos de Monsaraz',
    			'Vendas Novas' => 'Vendas Novas',
    			'Viana do Alentejo' => 'Viana do Alentejo',
    			'Vila Vi?osa' => 'Vila Vi?osa',
    			'évora' => 'évora',
    		),
    
    	'Setúbal' => Array
    		(
    			'Alcochete' => 'Alcochete',
    			'Alcácer do Sal' => 'Alcácer do Sal',
    			'Almada' => 'Almada',
    			'Amora' => 'Amora',
    			'Barreiro' => 'Barreiro',
    			'Corroios' => 'Corroios',
    			'Costa de Caparica' => 'Costa de Caparica',
    			'Grandola' => 'Grandola',
    			'Moita' => 'Moita',
    			'Montijo' => 'Montijo',
    			'Palmela' => 'Palmela',
    			'Santiago do Cacém' => 'Santiago do Cacém',
    			'Seixal' => 'Seixal',
    			'Sesimbra' => 'Sesimbra',
    			'Setúbal' => 'Setúbal',
    			'Sines' => 'Sines',
    		),
    
    	'Beja' => Array
    		(
    			'Aljustrel' => 'Aljustrel',
    			'Almod?var' => 'Almod?var',
    			'Alvito' => 'Alvito',
    			'Barrancos' => 'Barrancos',
    			'Beja' => 'Beja',
    			'Castro Verde' => 'Castro Verde',
    			'Cuba' => 'Cuba',
    			'Ferreira do Alentejo' => 'Ferreira do Alentejo',
    			'Moura' => 'Moura',
    			'Mértola' => 'Mértola',
    			'Odemira' => 'Odemira',
    			'Ourique' => 'Ourique',
    			'Serpa' => 'Serpa',
    			'Vidigueira' => 'Vidigueira',
    			'Vila Nova de Milfontes' => 'Vila Nova de Milfontes',
    		),
    
    	'Faro' => Array
    		(
    			'Albufeira' => 'Albufeira',
    			'Alcoutim' => 'Alcoutim',
    			'Aljezur' => 'Aljezur',
    			'Arma??o de Pêra' => 'Arma??o de Pêra',
    			'Carvoeiro' => 'Carvoeiro',
    			'Castro Marim' => 'Castro Marim',
    			'Faro' => 'Faro',
    			'Lagoa' => 'Lagoa',
    			'Lagos' => 'Lagos',
    			'Loulé' => 'Loulé',
    			'Monchique' => 'Monchique',
    			'Olh?o' => 'Olh?o',
    			'Portim?o' => 'Portim?o',
    			'Quarteira' => 'Quarteira',
    			'Silves' => 'Silves',
    			'S?o Brás de Alportel' => 'S?o Brás de Alportel',
    			'Tavira' => 'Tavira',
    			'Vila Real de Santo António' => 'Vila Real de Santo António',
    			'Vila do Bispo' => 'Vila do Bispo',
    		),
    
    	'Madeira' => Array
    		(
    			'Calheta' => 'Calheta',
    			'Cani?o' => 'Cani?o',
    			'Camara de Lobos' => 'Camara de Lobos',
    			'Funchal' => 'Funchal',
    			'Ponta do Sol' => 'Ponta do Sol',
    			'Ribeira Brava' => 'Ribeira Brava',
    			'Santa Cruz' => 'Santa Cruz',
    			'Santana' => 'Santana',
    			'S?o Vicente' => 'S?o Vicente',
    			'Vila de Porto Santo' => 'Vila de Porto Santo',
    		),
    
    	'A?ores' => Array
    		(
    			'Angra do Heroísmo' => 'Angra do Heroísmo',
    			'Calheta' => 'Calheta',
    			'Horta' => 'Horta',
    			'Lajes' => 'Lajes',
    			'Madalena' => 'Madalena',
    			'Nordeste' => 'Nordeste',
    			'Ponta Delgada' => 'Ponta Delgada',
    			'Povoa??o' => 'Povoa??o',
    			'Praia da Vitória' => 'Praia da Vitória',
    			'Ribeira Grande' => 'Ribeira Grande',
    			'Santa Cruz da Graciosa' => 'Santa Cruz da Graciosa',
    			'S?o Roque do Pico' => 'S?o Roque do Pico',
    			'Velas' => 'Velas',
    			'Vila Franca do Campo' => 'Vila Franca do Campo',
    			'Vila do Porto' => 'Vila do Porto',
    		)
    	);
    
    	$arr_options = array();
    
    	if ( ! is_array( $parent_options ) ) {
    		$parent_options = array( $parent_options );
    	}
    
    	foreach ( $parent_options as $parent_option ) {
    		if ( isset( $all_options[ $parent_option ] ) ) {
    			$arr_options = array_merge( $arr_options, $all_options[ $parent_option ] );
    		} elseif ( ! isset( $_POST['parent_option'] ) ) {
    			foreach ( $all_options as $k => $opts ) {
    			$arr_options = array_merge( $opts, $arr_options );
    			}
    		}
    	}
    
    	//code to do something if other options are not selected or empty match
    	if ( empty( $arr_options ) ) {
    		$arr_options[ ] = __("No cities");
    	} else {
    		$arr_options = array_unique( $arr_options );
    	}
    
    	return $arr_options;
    }
    missveronica

    (@missveronicatv)

    @jack1132132

    Try to replace spaces with underscore and remove UTF8 characters in your indexes:

    "Castelo_Branco" => "Castelo Branco" ,
    "Coimbra" => "Coimbra" ,
    "Evora" => "évora" ,
    'Setubal' => Array
    		(
    		'Alcochete' => 'Alcochete',
    		'Alcacer_do_Sal' => 'Alcácer do Sal',
    missveronica

    (@missveronicatv)

    @jack1132132

    You can try this code snippet where I have made all changes.

    function custom_district_list_dropdown() { 	
    
    	$coutries = array( 
    		 "Aveiro"           => "Aveiro", 
    		 "Beja"             => "Beja",
    		 "Braga"            => "Braga",
    		 "Braganca"         => "Bragan?a",
    		 "Castelo_Branco"   => "Castelo Branco",
    		 "Coimbra"          => "Coimbra",
    		 "Evora"            => "évora",
    		 "Faro"             => "Faro",
    		 "Guarda"           => "Guarda",
    		 "Leiria"           => "Leiria",
    		 "Lisboa"           => "Lisboa",
    		 "Portalegre"       => "Portalegre",
    		 "Porto"            => "Porto",
    		 "Santarem"         => "Santarém",
    		 "Setubal"          => "Setúbal",
    		 "Viana_do_Castelo" => "Viana do Castelo",
    		 "Vila_Real"        => "Vila Real",
    		 "Viseu"            => "Viseu",
    		 "Madeira"          => "Madeira",
    		 "Acores"           => "A?ores",
    	); 		
    
    	return $coutries;         
    }
    
    function getCitiesDropdownList( $has_parent = false ){ 
    
    	$parent_options = isset( $_POST['parent_option'] ) ? $_POST['parent_option'] : false;
    	
    
    	$all_options = Array(
    
    	'Aveiro' => Array
    		(
    			'Albergaria-a-Velha'   => 'Albergaria-a-Velha',
    			'Anadia'               => 'Anadia',
    			'Argoncilhe'           => 'Argoncilhe',
    			'Arouca'               => 'Arouca',
    			'Aveiro'               => 'Aveiro',
    			'Castelo_de_Paiva'     => 'Castelo de Paiva',
    			'Espinho'              => 'Espinho',
    			'Estarreja'            => 'Estarreja',
    			'Fermentelos'          => 'Fermentelos',
    			'Gafanha_da_Nazare'    => 'Gafanha da Nazaré',
    			'Mealhada'             => 'Mealhada',
    			'Murtosa'              => 'Murtosa',
    			'Oliveira_de_Azemeis'  => 'Oliveira de Azemeis',
    			'Oliveira_do_Bairro'   => 'Oliveira do Bairro',
    			'Ovar'                 => 'Ovar',
    			'Santa_Maria_da_Feira' => 'Santa Maria da Feira',
    			'Sever_do_Vouga'       => 'Sever do Vouga',
    			'Sao_Joao_da_Madeira'  => 'S?o Jo?o da Madeira',
    			'Vagos'                => 'Vagos',
    			'Vale_de_Cambra'       => 'Vale de Cambra',
    			'Agueda'               => 'águeda',
    			'flhavo'               => 'ílhavo',
    		),
    
    	'Porto' => Array
    		(
    			'Alfena'              => 'Alfena',
    			'Amarante'            => 'Amarante',
    			'Arcozelo'            => 'Arcozelo',
    			'Aver-o-Mar'          => 'Aver-o-Mar',
    			'Baiao'               => 'Bai?o',
    			'Casteloes_de_Cepeda' => 'Castel?es de Cepeda',
    			'Ermezinde'           => 'Ermezinde',
    			'Felgueiras'          => 'Felgueiras',
    			'Gondomar'            => 'Gondomar',
    			'Lousada'             => 'Lousada',
    			'Mafamude'            => 'Mafamude',
    			'Maia'                => 'Maia',
    			'Marco_de_Canavezes'  => 'Marco de Canavezes',
    			'Matosinhos'          => 'Matosinhos',
    			'Olival'              => 'Olival',
    			'Paredes'             => 'Paredes',
    			'Pacos_de_Ferreira'   => 'Pa?os de Ferreira',
    			'Penafiel'            => 'Penafiel',
    			'Porto'               => 'Porto',
    			'Povoa_de_Varzim'     => 'Póvoa de Varzim',
    			'Rio_Tinto'           => 'Rio Tinto',
    			'Santo_Tirso'         => 'Santo Tirso',
    			'Trofa'               => 'Trofa',
    			'Valadares'           => 'Valadares',
    			'Valongo'             => 'Valongo',
    			'Vila_Nova_de_Gaia'   => 'Vila Nova de Gaia',
    			'Vila_do_Conde'       => 'Vila do Conde',
    		),
    
    	'Viseu' => Array
    		(
    			'Armamar'               => 'Armamar',
    			'Canas_de_Senhorim'     => 'Canas de Senhorim',
    			'Carregal_do_Sal'       => 'Carregal do Sal',
    			'Castro_Daire'          => 'Castro Daire',
    			'Cinfaes'               => 'Cinf?es',
    			'Lamego'                => 'Lamego',
    			'Mangualde'             => 'Mangualde',
    			'Moimenta_da_Beira'     => 'Moimenta da Beira',
    			'Mortagua'              => 'Mortágua',
    			'Nelas'                 => 'Nelas',
    			'Oliveira_de_Frades'    => 'Oliveira de Frades',
    			'Penalva_do_Castelo'    => 'Penalva do Castelo',
    			'Penedono'              => 'Penedono',
    			'Resende'               => 'Resende',
    			'Santa_Comba_Dao'       => 'Santa Comba D?o',
    			'Sernancelhe'           => 'Sernancelhe',
    			'Satao'                 => 'Sát?o',
    			'Sao_Joao_da_Pesqueira' => 'S?o Jo?o da Pesqueira',
    			'Sao_Pedro_do_Sul'      => 'S?o Pedro do Sul',
    			'Tabuaco'               => 'Tabua?o',
    			'Tarouca'               => 'Tarouca',
    			'Tondela'               => 'Tondela',
    			'Vila_Nova_de_Paiva'    => 'Vila Nova de Paiva',
    			'Viseu'                 => 'Viseu',
    		),
    
    	'Braga' => Array
    		(
    			'Amares'              => 'Amares',
    			'Barcelos'            => 'Barcelos',
    			'Braga'               => 'Braga',
    			'Cabeceiras_de_Basto' => 'Cabeceiras de Basto',
    			'Celeiroz'            => 'Celeiroz',
    			'Celorico_de_Basto'   => 'Celorico de Basto',
    			'Esposende'           => 'Esposende',
    			'Fafe'                => 'Fafe',
    			'Famalicao'           => 'Famalic?o',
    			'Ferreiros'           => 'Ferreiros',
    			'Guimaraes'           => 'Guimar?es',
    			'Joane'               => 'Joane',
    			'Povoa_de_Lanhoso'    => 'Póvoa de Lanhoso',
    			'Real'                => 'Real',
    			'Riba_de_Ave'         => 'Riba de Ave',
    			'Terras_de_Bouro'     => 'Terras de Bouro',
    			'Vieira_do_Minho'     => 'Vieira do Minho',
    			'Vila_Verde'          => 'Vila Verde',
    			'Vizela'              => 'Vizela',
    		),
    
    	'Vila_Real' => Array
    		(
    			'Alijo'                    => 'Alijó',
    			'Boticas'                  => 'Boticas',
    			'Chaves'                   => 'Chaves',
    			'Mesao_Frio'               => 'Mes?o Frio',
    			'Mondim_de_Basto'          => 'Mondim de Basto',
    			'Montalegre'               => 'Montalegre',
    			'Murca'                    => 'Mur?a',
    			'Peso_da_Regua'            => 'Peso da Régua',
    			'Ribeira_de_Pena'          => 'Ribeira de Pena',
    			'Sabrosa'                  => 'Sabrosa',
    			'Santa_Marta_de_Penaguiao' => 'Santa Marta de Penagui?o',
    			'Valpacos'                 => 'Valpa?os',
    			'Vila_Pouca_de_Aguiar'     => 'Vila Pouca de Aguiar',
    			'Vila_Real'                => 'Vila Real',
    		),
    
    	'Coimbra' => Array
    		(
    			'Arganil'              => 'Arganil',
    			'Cantanhede'           => 'Cantanhede',
    			'Coimbra'              => 'Coimbra',
    			'Condeixa-a-Nova'      => 'Condeixa-a-Nova',
    			'Figueira_da_Foz'      => 'Figueira da Foz',
    			'Gois'                 => 'Góis',
    			'Lorvao'               => 'Lorv?o',
    			'Lousa'                => 'Lous?',
    			'Mira'                 => 'Mira',
    			'Miranda_do_Corvo'     => 'Miranda do Corvo',
    			'Montemor-o-Velho'     => 'Montemor-o-Velho',
    			'Oliveira_do_Hospital' => 'Oliveira do Hospital',
    			'Pampilhosa_da_Serra'  => 'Pampilhosa da Serra',
    			'Penacova'             => 'Penacova',
    			'Penela'               => 'Penela',
    			'Poiares'              => 'Poiares',
    			'Soure'                => 'Soure',
    			'Trouxemil'            => 'Trouxemil',
    			'Tabua'                => 'Tábua',
    		),
    
    	'Guarda' => Array
    		(
    			'Aguiar_da_Beira'             => 'Aguiar da Beira',
    			'Almeida'                     => 'Almeida',
    			'Celorico_da_Beira'           => 'Celorico da Beira',
    			'Figueira_de_Castelo_Rodrigo' => 'Figueira de Castelo Rodrigo',
    			'Fornos_de_Algodres'          => 'Fornos de Algodres',
    			'Gouveia'                     => 'Gouveia',
    			'Guarda'                      => 'Guarda',
    			'Manteigas'                   => 'Manteigas',
    			'Meda'                        => 'Mêda',
    			'Pinhel'                      => 'Pinhel',
    			'Sabugal'                     => 'Sabugal',
    			'Seia'                        => 'Seia',
    			'Trancoso'                    => 'Trancoso',
    			'Vila_Nova_de_Foz_Coa'        => 'Vila Nova de Foz C?a',
    		),
    
    	'Viana_do_Castelo' => Array
    		(
    			'Arcos_de_Valdevez'     => 'Arcos de Valdevez',
    			'Arcozelo'              => 'Arcozelo',
    			'Caminha'               => 'Caminha',
    			'Melgaco'               => 'Melga?o',
    			'Moncao'                => 'Mon??o',
    			'Paredes_de_Coura'      => 'Paredes de Coura',
    			'Ponte_da_Barca'        => 'Ponte da Barca',
    			'Ponte_de_Lima'         => 'Ponte de Lima',
    			'Valenca'               => 'Valen?a',
    			'Viana_do_Castelo'      => 'Viana do Castelo',
    			'Vila_Nova_de_Cerveira' => 'Vila Nova de Cerveira',
    		),
    
    	'Braganca' => Array
    		(
    			'Alfandega_da_Fe'          => 'Alfandega da Fé',
    			'Braganca'                 => 'Bragan?a',
    			'Carrazeda_de_Anciaes'     => 'Carrazeda de Anci?es',
    			'Freixo_de_Espada_a_Cinta' => 'Freixo de Espada à Cinta',
    			'Macedo_de_Cavaleiros'     => 'Macedo de Cavaleiros',
    			'Miranda_do_Douro'         => 'Miranda do Douro',
    			'Mirandela'                => 'Mirandela',
    			'Mogadouro'                => 'Mogadouro',
    			'Torre_de_Moncorvo'        => 'Torre de Moncorvo',
    			'Vila_Flor'                => 'Vila Flor',
    			'Vimioso'                  => 'Vimioso',
    			'Vinhais'                  => 'Vinhais',
    		),
    
    	'Leiria' => Array
    		(
    			'Alcobaca'            => 'Alcoba?a',
    			'Alvaiazere'          => 'Alvaiázere',
    			'Ansiao'              => 'Ansi?o',
    			'Batalha'             => 'Batalha',
    			'Bombarral'           => 'Bombarral',
    			'Caldas_da_Rainha'    => 'Caldas da Rainha',
    			'Caranguejeira'       => 'Caranguejeira',
    			'Castanheira_de_Pera' => 'Castanheira de Pêra',
    			'Figueiro_dos_Vinhos' => 'Figueiró dos Vinhos',
    			'Leiria'              => 'Leiria',
    			'Marinha_Grande'      => 'Marinha Grande',
    			'Nazare'              => 'Nazaré',
    			'Pedrogao_Grande'     => 'Pedróg?o Grande',
    			'Peniche'             => 'Peniche',
    			'Pombal'              => 'Pombal',
    			'Porto_de_Mos'        => 'Porto de Mós',
    			'Valado_de_Frades'    => 'Valado de Frades',
    			'Obidos'              => 'óbidos',
    		),
    
    	'Castelo_Branco' => Array
    		(
    			'Belmonte'            => 'Belmonte',
    			'Castelo_Branco'      => 'Castelo Branco',
    			'Covilha'             => 'Covilh?',
    			'Fundao'              => 'Fund?o',
    			'Idanha-a-Nova'       => 'Idanha-a-Nova',
    			'Oleiros'             => 'Oleiros',
    			'Penamacor'           => 'Penamacor',
    			'Proenca-a-Nova'      => 'Proen?a-a-Nova',
    			'Serta'               => 'Sert?',
    			'Vila_Velha_de_Rodao' => 'Vila Velha de Ród?o',
    			'Vila_de_Rei'         => 'Vila de Rei',
    		),
    
    	'Santarem' => Array
    		(
    			'Abrantes'               => 'Abrantes',
    			'Alcanena'               => 'Alcanena',
    			'Almeirim'               => 'Almeirim',
    			'Alpiarca'               => 'Alpiar?a',
    			'Benavente'              => 'Benavente',
    			'Cartaxo'                => 'Cartaxo',
    			'Chamusca'               => 'Chamusca',
    			'Constancia'             => 'Constancia',
    			'Coruche'                => 'Coruche',
    			'Entroncamento'          => 'Entroncamento',
    			'Ferreira_do_Zezere'     => 'Ferreira do Zêzere',
    			'Golega'                 => 'Goleg?',
    			'Macao'                  => 'Ma??o',
    			'Ourem'                  => 'Ourém',
    			'Riachos'                => 'Riachos',
    			'Rio_Maior'              => 'Rio Maior',
    			'Salvaterra_de_Magos'    => 'Salvaterra de Magos',
    			'Santarem'               => 'Santarém',
    			'Sardoal'                => 'Sardoal',
    			'Tomar'                  => 'Tomar',
    			'Torres_Novas'           => 'Torres Novas',
    			'Tramagal'               => 'Tramagal',
    			'Vila_Nova_da_Barquinha' => 'Vila Nova da Barquinha',
    		),
    
    	'Portalegre' => Array
    		(
    			'Alter_do_Chao'   => 'Alter do Ch?o',
    			'Arronches'       => 'Arronches',
    			'Avis'            => 'Avis',
    			'Campo_Maior'     => 'Campo Maior',
    			'Castelo_de_Vide' => 'Castelo de Vide',
    			'Crato'           => 'Crato',
    			'Elvas'           => 'Elvas',
    			'Fronteira'       => 'Fronteira',
    			'Gaviao'          => 'Gavi?o',
    			'Marvao'          => 'Marv?o',
    			'Monforte'        => 'Monforte',
    			'Nisa'            => 'Nisa',
    			'Ponte_de_Sor'    => 'Ponte de S?r',
    			'Portalegre'      => 'Portalegre',
    			'Sousel'          => 'Sousel',
    		),
    
    	'Lisboa' => Array
    		(
    			'Agualva'                => 'Agualva',
    			'Alenquer'               => 'Alenquer',
    			'Almargem'               => 'Almargem',
    			'Amadora'                => 'Amadora',
    			'Arruda_dos_Vinhos'      => 'Arruda dos Vinhos',
    			'Azambuja'               => 'Azambuja',
    			'Cacem'                  => 'Cacém',
    			'Cadaval'                => 'Cadaval',
    			'Cascais'                => 'Cascais',
    			'Estoril'                => 'Estoril',
    			'Falagueira'             => 'Falagueira',
    			'Lisboa'                 => 'Lisboa',
    			'Loures'                 => 'Loures',
    			'Lourinha'               => 'Lourinh?',
    			'Mafra'                  => 'Mafra',
    			'Massama'                => 'Massamá',
    			'Odivelas'               => 'Odivelas',
    			'Oeiras'                 => 'Oeiras',
    			'Queluz'                 => 'Queluz',
    			'Sacavem'                => 'Sacavém',
    			'Sintra'                 => 'Sintra',
    			'Sobral_de_Monte_Agraco' => 'Sobral de Monte Agra?o',
    			'Sao_Martinho'           => 'S?o Martinho',
    			'Terrujem'               => 'Terrujem',
    			'Torres_Vedras'          => 'Torres Vedras',
    			'Vila_Franca_de_Xira'    => 'Vila Franca de Xira',
    		),
    
    	'Evora' => Array
    		(
    			'Alandroal'             => 'Alandroal',
    			'Arraiolos'             => 'Arraiolos',
    			'Borba'                 => 'Borba',
    			'Estremoz'              => 'Estremoz',
    			'Montemor-o-Novo'       => 'Montemor-o-Novo',
    			'Mora'                  => 'Mora',
    			'Mourao'                => 'Mour?o',
    			'Portel'                => 'Portel',
    			'Redondo'               => 'Redondo',
    			'Reguengos_de_Monsaraz' => 'Reguengos de Monsaraz',
    			'Vendas_Novas'          => 'Vendas Novas',
    			'Viana_do_Alentejo'     => 'Viana do Alentejo',
    			'Vila_Vicosa'           => 'Vila Vi?osa',
    			'Evora'                 => 'évora',
    		),
    
    	'Setubal' => Array
    		(
    			'Alcochete'         => 'Alcochete',
    			'Alcacer_do_Sal'    => 'Alcácer do Sal',
    			'Almada'            => 'Almada',
    			'Amora'             => 'Amora',
    			'Barreiro'          => 'Barreiro',
    			'Corroios'          => 'Corroios',
    			'Costa_de_Caparica' => 'Costa de Caparica',
    			'Grandola'          => 'Grandola',
    			'Moita'             => 'Moita',
    			'Montijo'           => 'Montijo',
    			'Palmela'           => 'Palmela',
    			'Santiago_do_Cacem' => 'Santiago do Cacém',
    			'Seixal'            => 'Seixal',
    			'Sesimbra'          => 'Sesimbra',
    			'Setubal'           => 'Setúbal',
    			'Sines'             => 'Sines',
    		),
    
    	'Beja' => Array
    		(
    			'Aljustrel'              => 'Aljustrel',
    			'Almodovar'              => 'Almod?var',
    			'Alvito'                 => 'Alvito',
    			'Barrancos'              => 'Barrancos',
    			'Beja'                   => 'Beja',
    			'Castro_Verde'           => 'Castro Verde',
    			'Cuba'                   => 'Cuba',
    			'Ferreira_do_Alentejo'   => 'Ferreira do Alentejo',
    			'Moura'                  => 'Moura',
    			'Mertola'                => 'Mértola',
    			'Odemira'                => 'Odemira',
    			'Ourique'                => 'Ourique',
    			'Serpa'                  => 'Serpa',
    			'Vidigueira'             => 'Vidigueira',
    			'Vila_Nova_de_Milfontes' => 'Vila Nova de Milfontes',
    		),
    
    	'Faro' => Array
    		(
    			'Albufeira'                  => 'Albufeira',
    			'Alcoutim'                   => 'Alcoutim',
    			'Aljezur'                    => 'Aljezur',
    			'Armacao_de_Pera'            => 'Arma??o de Pêra',
    			'Carvoeiro'                  => 'Carvoeiro',
    			'Castro_Marim'               => 'Castro Marim',
    			'Faro'                       => 'Faro',
    			'Lagoa'                      => 'Lagoa',
    			'Lagos'                      => 'Lagos',
    			'Loule'                      => 'Loulé',
    			'Monchique'                  => 'Monchique',
    			'Olhao'                      => 'Olh?o',
    			'Portimao'                   => 'Portim?o',
    			'Quarteira'                  => 'Quarteira',
    			'Silves'                     => 'Silves',
    			'Sao_Bras_de_Alportel'       => 'S?o Brás de Alportel',
    			'Tavira'                     => 'Tavira',
    			'Vila_Real_de_Santo_Antonio' => 'Vila Real de Santo António',
    			'Vila_do_Bispo'              => 'Vila do Bispo',
    		),
    
    	'Madeira' => Array
    		(
    			'Calheta'             => 'Calheta',
    			'Canico'              => 'Cani?o',
    			'Camara_de_Lobos'     => 'Camara de Lobos',
    			'Funchal'             => 'Funchal',
    			'Ponta_do_Sol'        => 'Ponta do Sol',
    			'Ribeira_Brava'       => 'Ribeira Brava',
    			'Santa_Cruz'          => 'Santa Cruz',
    			'Santana'             => 'Santana',
    			'Sao_Vicente'         => 'S?o Vicente',
    			'Vila_de_Porto_Santo' => 'Vila de Porto Santo',
    		),
    
    	'Acores' => Array
    		(
    			'Angra_do_Heroismo'      => 'Angra do Heroísmo',
    			'Calheta'                => 'Calheta',
    			'Horta'                  => 'Horta',
    			'Lajes'                  => 'Lajes',
    			'Madalena'               => 'Madalena',
    			'Nordeste'               => 'Nordeste',
    			'Ponta_Delgada'          => 'Ponta Delgada',
    			'Povoacao'               => 'Povoa??o',
    			'Praia_da_Vitoria'       => 'Praia da Vitória',
    			'Ribeira_Grande'         => 'Ribeira Grande',
    			'Santa_Cruz_da_Graciosa' => 'Santa Cruz da Graciosa',
    			'Sao_Roque_do_Pico'      => 'S?o Roque do Pico',
    			'Velas'                  => 'Velas',
    			'Vila_Franca_do_Campo'   => 'Vila Franca do Campo',
    			'Vila_do_Porto'          => 'Vila do Porto',
    		)
    	);
    
    	$arr_options = array();
    
    	if ( ! is_array( $parent_options ) ) {
    		$parent_options = array( $parent_options );
    	}
    
    	foreach ( $parent_options as $parent_option ) {
    		if ( isset( $all_options[ $parent_option ] ) ) {
    			$arr_options = array_merge( $arr_options, $all_options[ $parent_option ] );
    		} elseif ( ! isset( $_POST['parent_option'] ) ) {
    			foreach ( $all_options as $k => $opts ) {
    			$arr_options = array_merge( $opts, $arr_options );
    			}
    		}
    	}
    
    	//code to do something if other options are not selected or empty match
    	if ( empty( $arr_options ) ) {
    		$arr_options[ ] = __("No cities");
    	} else {
    		$arr_options = array_unique( $arr_options );
    	}
    
    	return $arr_options;
    }
    Plugin Support andrewshu

    (@andrewshu)

    Hi @jack1132132

    This thread has been inactive for a while so we’re going to go ahead and mark it Resolved.

    Please feel free to re-open this thread if any other questions come up and we’d be happy to help. ??

    Regards

Viewing 9 replies - 1 through 9 (of 9 total)
  • The topic ‘Dropdown for locality depending on District dropdown’ is closed to new replies.