μλ ,
μ£Όμ μ¬νμλ ν¬μ€νΈ λ©ν μ°κ²°μ κ΄ν μ°Έκ³ μ¬νμ΄ μμΌλ©° μ΄λ¬ν μ°κ²°μ΄ μ μ‘ μ "ν¨κ» κ°μ Έμ€μ§" μμμ μ§μ ν©λλ€. 볡μ‘ν κ΄κ³ν λ©νλ°μ΄ν°(ACF μ¬μ©)κ° μλ μ¬μ΄νΈ λ€νΈμν¬λ₯Ό κ°λ°ν λ λ κ°μ§ μ§λ¬Έμ΄ μμ΅λλ€.
미리 κ°μ¬λ립λλ€!
μλ νμΈμ @john-lynch-cpλ, μ΄ μ£Όμ μ λν΄ λ΄λΆ λ Όμκ° μμ§λ§ μμ§ μ΅μ’ λ°©ν₯μ΄ μ ν΄μ§μ§ μμμ΅λλ€.
μ μ₯λ λ©ν κ°μ μλ³Έ μ¬μ΄νΈμ μ격 μ¬μ΄νΈ κ°μ λ€λ₯Έ κ΄λ ¨ κ°μ²΄μ IDμ λλ€. μ격 μ¬μ΄νΈμμ κ°μ²΄ ID(λ©ν κ°)λ₯Ό μ¬λ°λ₯Έ κ²μΌλ‘ κ΅μ²΄νμ¬ μ΄ λ¬Έμ λ₯Ό ν΄κ²°ν μ μμ΅λλ€.
dt_connection_map
λ©νκ° μμ΅λλ€.dt_push_post_args
λ° dt_subscription_post_args
μ ννΉνμ¬ ν¬μ€νΈ λ©ν(κ²μλ¬Ό ID λ³κ²½, μ©μ΄ μ¬λ¬κ·Έ μΆκ°, μ¬μ©μ λ‘κ·ΈμΈ μΆκ°)λ₯Ό μ€λΉν μ μμ΅λλ€.
μ격 μ¬μ΄νΈμμ μ¬λ°λ₯Έ λ©ν κ°μ μ
λ°μ΄νΈνλ €λ©΄ dt_process_distributor_attributes
λ° dt_process_subscription_attributes
ν©λλ€.
μ§λ¬Έ:
λ©λͺ¨λ "νΈμ" μ μ‘μ μ°Έμ‘°ν©λλ€. "pull" μμ²λ λ§μ°¬κ°μ§μ λκΉ?
짧μ λλ΅μ μλμ€μ
λλ€. λ°κ³ λΉκΈ°λ κ²μ λ€λ¦
λλ€. νμ μ¬μ©νμ¬ νΈμμ λμΌν κ²°κ³Όλ₯Ό μ»μ μ μμ§λ§ ν¬μ€νΈ λ©νλ₯Ό μ€λΉνλ €λ©΄ λͺ κ°μ§ μΆκ° λ¨κ³κ° νμν©λλ€. push
κ²½μ° μλ³Έ μ¬μ΄νΈμ΄λ―λ‘ νΈμνκΈ° μ μ μΆκ° λ©ν λ°μ΄ν°λ₯Ό μ€λΉν μ μμ΅λλ€. κ·Έλ¬λ pull
λμΌν μμ
μ μνν μ μμ΅λλ€. λ리μ μ©λμ κ²μλ¬Ό μλ ν¬μΈνΈ μ λν ν¬μ€νΈ λ°μ΄ν°λ₯Ό μ»κΈ° μν΄ pull
μ°Έμ‘°νμμμ€ μ΄ .
μ μλ νλ¬κ·ΈμΈμ "μΌμ΄μ€ λ°μ΄ μΌμ΄μ€" νμ₯μ λν μμ κ° μμ΅λκΉ? μ΄κ±° νλ² ν΄λ³΄κ³ μΆμλ° μ΄λμλΆν° μμν΄μΌν μ§ λͺ¨λ₯΄κ² λ€μ!
μλ₯Ό λ€μ΄ project_category
λΆλ₯μ μ°κ²°λλ test_meta
λΌλ λΆλ₯ νλ(ACF μ¬μ©)κ° μμ΅λλ€. μλ μμλ κ΅μ‘μ©μΌλ‘λ§ μμ±λ κ²μΌλ‘ μ΅μ μ μ루μ
μ μλλλ€.
add_action( 'dt_push_post_args', 'prepare_meta', 10, 2 );
function prepare_meta( $post_body, $post ) {
$term_id = get_post_meta( $post->ID, 'test_meta', true );
if( $term_id ) {
$term = get_term_by( 'id', $term_id, 'project_category');
$post_body['project_category_slug'] = $term->slug;
}
return $post_body;
}
add_action( 'dt_process_distributor_attributes', 'set_meta', 10, 2 );
function set_meta( $post, $request ) {
$term = get_term_by( 'slug', $request['project_category_slug'], 'project_category' );
if ( ! $term ) {
return;
}
update_post_meta( $post->ID, 'test_meta', $term->term_id );
}
Btw, μμ μμ λΉμ·νμ§λ§ λ 볡μ‘ν Novembitμμ λ§λ μ λμ¨μ΄ μμ΅λλ€: https://github.com/NovemBit/distributor-acf-addon. μ΄ μ λμ¨μ νμ¬ λ²μ μ λ°°ν¬μμ νΈνλμ§ μμ΅λλ€.
μ΄ λμμ λ°λλλ€!
@john-lynch-cp μμ λ΅λ³μΌλ‘ κ·νμ μ§λ¬Έμ΄ ν΄κ²°λμ΄ μ΄ λ¬Έμ λ₯Ό μ’ κ²°ν μ μκ±°λ νμ μ§λ¬Έμ΄ μμ΅λκΉ?
νμ μ‘°μΉμ κ°μ¬λ립λλ€. μ§κΈ λ°λ‘ μ’ λ£ν΄ μ£Όμ μ κ°μ¬ν©λλ€. λ°°ν¬ λ¬Έμ κ° λ€λ₯Έ μ κ·Ό λ°©μμΌλ‘ λ ν©λ¦¬μ μΌ μ μμΌλ―λ‘ λ€λ₯Έ CMSλ₯Ό μ°Ύκ³ μλ€κ³ μκ°ν©λλ€.
κ°μ₯ μ μ©ν λκΈ
μλ νμΈμ @john-lynch-cpλ, μ΄ μ£Όμ μ λν΄ λ΄λΆ λ Όμκ° μμ§λ§ μμ§ μ΅μ’ λ°©ν₯μ΄ μ ν΄μ§μ§ μμμ΅λλ€.
μ μ₯λ λ©ν κ°μ μλ³Έ μ¬μ΄νΈμ μ격 μ¬μ΄νΈ κ°μ λ€λ₯Έ κ΄λ ¨ κ°μ²΄μ IDμ λλ€. μ격 μ¬μ΄νΈμμ κ°μ²΄ ID(λ©ν κ°)λ₯Ό μ¬λ°λ₯Έ κ²μΌλ‘ κ΅μ²΄νμ¬ μ΄ λ¬Έμ λ₯Ό ν΄κ²°ν μ μμ΅λλ€.
dt_connection_map
λ©νκ° μμ΅λλ€.dt_push_post_args
λ°dt_subscription_post_args
μ ννΉνμ¬ ν¬μ€νΈ λ©ν(κ²μλ¬Ό ID λ³κ²½, μ©μ΄ μ¬λ¬κ·Έ μΆκ°, μ¬μ©μ λ‘κ·ΈμΈ μΆκ°)λ₯Ό μ€λΉν μ μμ΅λλ€.μ격 μ¬μ΄νΈμμ μ¬λ°λ₯Έ λ©ν κ°μ μ λ°μ΄νΈνλ €λ©΄
dt_process_distributor_attributes
λ°dt_process_subscription_attributes
ν©λλ€.μ§λ¬Έ:
짧μ λλ΅μ μλμ€μ λλ€. λ°κ³ λΉκΈ°λ κ²μ λ€λ¦ λλ€. νμ μ¬μ©νμ¬ νΈμμ λμΌν κ²°κ³Όλ₯Ό μ»μ μ μμ§λ§ ν¬μ€νΈ λ©νλ₯Ό μ€λΉνλ €λ©΄ λͺ κ°μ§ μΆκ° λ¨κ³κ° νμν©λλ€.
push
κ²½μ° μλ³Έ μ¬μ΄νΈμ΄λ―λ‘ νΈμνκΈ° μ μ μΆκ° λ©ν λ°μ΄ν°λ₯Ό μ€λΉν μ μμ΅λλ€. κ·Έλ¬λpull
λμΌν μμ μ μνν μ μμ΅λλ€. λ리μ μ©λμ κ²μλ¬Ό μλ ν¬μΈνΈ μ λν ν¬μ€νΈ λ°μ΄ν°λ₯Ό μ»κΈ° μν΄pull
μ°Έμ‘°νμμμ€ μ΄ .μλ₯Ό λ€μ΄
project_category
λΆλ₯μ μ°κ²°λλtest_meta
λΌλ λΆλ₯ νλ(ACF μ¬μ©)κ° μμ΅λλ€. μλ μμλ κ΅μ‘μ©μΌλ‘λ§ μμ±λ κ²μΌλ‘ μ΅μ μ μ루μ μ μλλλ€.Btw, μμ μμ λΉμ·νμ§λ§ λ 볡μ‘ν Novembitμμ λ§λ μ λμ¨μ΄ μμ΅λλ€: https://github.com/NovemBit/distributor-acf-addon. μ΄ μ λμ¨μ νμ¬ λ²μ μ λ°°ν¬μμ νΈνλμ§ μμ΅λλ€.
μ΄ λμμ λ°λλλ€!