Ich habe ein Problem mit einer function, die ich erstellen möchte. Es sollte einfach sein. Wenn jemand einen Beitrag speichert, schnapp dir die Stadt / Adresse / Provinz und konvertiere ihn in lang / lat und speichere ihn in der database. Das Problem ist, dass ich “update_post_meta” nicht zum arbeiten bekomme und ich verstehe nicht warum.
Der Code ist unten, es ist einfach genug.
add_action( 'save_post_dealer', 'save_dealer_long_lat'); function save_dealer_long_lat($post_id) { $city = get_post_meta( $post_id, 'wpcf-dealer-city', true ); $address = get_post_meta( $post_id, 'wpcf-dealer-address', true ); $province = get_post_meta( $post_id, 'wpcf-dealer-province', true ); $coords = get_coordinates($city, $address, $province); $lat = get_post_meta( $post_id, 'wpcf-latitude', true ); $long = get_post_meta( $post_id, 'wpcf-longitude', true ); if(empty($lat)) { update_post_meta($post_id, 'wpcf-latitude', $coords['lat'], $lat); } if(empty($long)) { update_post_meta($post_id, 'wpcf-longitude', $coords['long'], $long); } }
ein paar Dinge, um die offensichtlichen Fehler zu beseitigen.
Ich verstehe nicht, was los ist, alles, was ich sehe, scheint zu suggerieren, dass das funktionieren sollte.
Ein bisschen spät, aber ich hatte gerade dieses Problem, bei dem das Hinzufügen eines Taxonomie-Begriffs funktionierte, aber das Hinzufügen von Post-Meta war nicht. Die Lösung sollte eine höhere Priorität haben. Die Standardpriorität ist 10, also versuchen Sie es mit der Instanzpriorität 100:
add_action( 'save_post_dealer', 'save_dealer_long_lat', 100, 1);