SEO ์ ๋ชฉ ๋ฐ ์ค๋ช
์ด ์ ์ฅ๋์ง ์์
https://github.com/Yoast/wordpress-seo/issues/508
Yoast SEO ๋ฌธ์ ์์ ๋ค์์ ์ฝ์ ์ ์์ต๋๋ค.
๋๋ ๊ทธ๊ฒ์ด WP SEO๊ฐ ์๋๋ผ Pods ํ๋ฌ๊ทธ์ธ์ ๋ฌธ์ ์์ ํ์ธํ๋ ๊ฒ ๊ฐ์ต๋๋ค.
register_taxonomy()
์ ๋ถ์ ์ ํ ์๊ฐ์ผ๊น์?
๋๋ฒ๊ทธ : WPSEO_Taxonomy ํด๋์ค์ update_term () ํจ์๊ฐ WP์ do_action ()์ $ wp_filter์ ๋ฑ๋ก๋์์ต๋๋ค.
ํ์ง๋ง ์ ํ๋ฅผ๋ฐ์ง ์์ต๋๋ค
ํฌ๋์์ ์ ์ํ ์ฌ์ฉ์ ์ง์ ๋ถ๋ฅ์ ์ ์ฅํ ๋
PodsMeta์ save_taxonomy ()๋ ๋ ๋ฒ ํธ์ถ๋ฉ๋๋ค.
๋๋ฒ๊ทธ : WPSEO_Taxonomy ํด๋์ค์ update_term () ํจ์๊ฐ WP์ do_action ()์ $ wp_filter์ ๋ฑ๋ก๋์์ต๋๋ค.
ํ์ง๋ง ์ ํ๋ฅผ๋ฐ์ง ์์ต๋๋ค
์ด๋ค ์์ ์์ (ํ์ด๋ฐ ์ธก๋ฉด์์) ๊ทธ๋ค์ด ํ๋์ ์ทจํ๋์ง ๊ฒฐ์ ํ์ต๋๊น?
'์ด๊ธฐํ'์๊ฐ์.
๋ ๋ค WP์ do_action ()์ ๋ฑ๋ก๋์ด ์์ต๋๋ค.
๊ทธ๋ฌ๋ ์ด๋ป๊ฒ ๋ wp-includes / plugin์์. php : 429 PodsMeta์ save_taxonomy ()๊ฐ TWICE๋ผ๊ณ ํฉ๋๋ค.
WPSEO_Taxonomy ํด๋์ค์ update_term ()์ ์๋ต๋์์ต๋๋ค.
์๋ง๋ pods_no_conflict_on ()์ด ์์ธ์ผ๊น์?
๊ทธ๋ฌ๋ ์ด๋ป๊ฒ ๋ wp-includes / plugin์์. php : 429 PodsMeta์ save_taxonomy ()๊ฐ TWICE๋ผ๊ณ ํฉ๋๋ค.
์ด ํน์ ๋์์ ์์ธ๊ณผ ๊ด๋ จ์ฑ์ด ์๋์ง ์์๋ณผ ์ ์์ต๋๋ค.
๋๋จํ ๊ฐ์ฌํฉ๋๋ค! ๋ ๊ฐ์ง ํ๋ฌ๊ทธ์ธ์ ๋ชจ๋ ์๊ณ ๊ณ์ญ๋๋ค.
์ฌ๊ธฐ์์๋ ๊ฒ์ ๊น๋ค๋ก์ด WordPress ๋ฒ๊ทธ์ ๋๋ค. http://core.trac.wordpress.org/ticket/17817 ๊ทํ์ ๋ค๋ฆฌ ์์ ์ผ๋ก ๊ด๋ จ์๋ ์์ญ์ ์ฐ๋ฅด๋ ๋ฐ ๋ง์ ์๊ฐ์ ์ ์ฝ ํ ์์์์ต๋๋ค. ์ด๊ฒ์ ๋งค์ฐ ๋์์ด ๋์๊ธฐ ๋๋ฌธ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ์ ์ถฉ๋ถํ ์ด์ํ์ต๋๋ค.
์ด๋ฏธ ์๊ณ ๊ณ์ ๊ฒ ์ง๋ง pods_no_conflict_on
๋ํ ํธ์ถ์ ์ฃผ์์ ๋ฌ ์ ์์ผ๋ฉฐ ๋ฌธ์ ๊ฐ ๋ ์ด์ ๋ํ๋์ง ์์ต๋๋ค. save()
ํตํด ๋ฐ์ํ ์์๋ ์ฌ๊ท ์์
ํธ์ถ์ ํผํ๊ธฐ ์ํด ์ถฉ๋ ์์ ํธ์ถ๋ก Pods::save
๋ฅผ ๋ํํ์ต๋๋ค. ๊ทธ๋ฌ๋ WordPress ๋ฒ๊ทธ๋ก ์ธํด ์ก์
ํํฌ๋ฅผ ์ ๊ฑฐํ๋ฉด ์ฐ์ ์์๊ฐ ๋ฎ์ ๋ค๋ฅธ ์ก์
ํํฌ๋ ํจ๊ป ์ฌ์ฉ๋ฉ๋๋ค. ๋ค์ ์ฝ๋๋ฅผ ์ฌ์ฉํ์ฌ ํ์ ํ
๋ง ๋๋ ํ๋ฌ๊ทธ์ธ์์ ์ง์ ์ด ์ํฉ์ ๋ค์ ๋ง๋ค ์ ์์ต๋๋ค.
add_action( 'edit_term', 'test_17817', 15, 3 );
function test_17817( $term_id, $tt_id, $taxonomy ) {
remove_action( 'edit_term', 'test_17817', 15 );
}
Pod์ ์ฐ์ ์์ 10๊ณผ Yoast์ 99 ์ฌ์ด์ ์๊ธฐ ๋๋ฌธ์์ด ํ ์คํธ์ ์ฐ์ ์์๋ก 15๋ฅผ ์ ํํ์ต๋๋ค. ์์ ํ ๋ง functions.php์ Pod์์๋ ํด๋น ์ฝ๋๋ฅผ ์ฌ์ฉํ๋ฉด ์ถฉ๋ ํธ์ถ์ด์๋ ๋ฌธ์ ๊ฐ ์ฌ์ ํ ๋ํ๋ฉ๋๋ค.
Yoast ์ธก์์๋ add_action
ํตํ์ 99 ์ฐ์ ์์๋ฅผ 10 ์ดํ๋ก ๋ณ๊ฒฝํ์ฌ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์๋ ์์ต๋๋ค.
๋ํ ๊ฐ๋จํ ํ ์คํธ์์ Pod์ Yoast ์ฌ์ด์ ์ฐ์ ์์๋ฅผ ์ฌ์ฉํ์ฌ ์์ฒด ์์ (์ฝ๋ฐฑ ํจ์ ์์ฒด๋ ๋น ํจ์์ผ ์ ์์)์ ์ถ๊ฐ ํ ์ ์์ผ๋ฉฐ ๋ฌธ์ ๊ฐ ํด๊ฒฐ ๋ ๊ฒ์ ๋๋ค.
์ผ๋ฐ์ ์ผ๋ก WordPress ์ฝํ ์ธ ์ ํ์ ๋ ํฐ ์ํฅ์ ๋ฏธ์น๊ธฐ ๋๋ฌธ์์ด ๋ฌธ์ ์ ๋ํด ์ฌ์ ํ ๋จธ๋ฆฌ๋ฅผ ๋ชจ์ผ๊ณ ์์ผ๋ฉฐ ๊ทธ ๋ถ์ผ์ ๊น์ด ๊ด์ฌํ๊ณ ์์ต๋๋ค.
BTW,์ด ์ ๋ณด๋ ํ์ฌ ์ ์ ๋ ์์ ์ฌํญ์ด ์๋๋๋ค. ์ด๊ฒ์ ๋ฒ๊ทธ์ ๊ทธ๊ฒ์ด ์ด๋ป๊ฒ ๋ํ๋๋์ง์ ๋ํ ์ธ๋ถ ์ฌํญ์ ๋๋ค.
์ด๊ฒ์ ๋์๊ฒ ์ ํฉํ ์์ ์ ๋๋ค.
add_action( 'edit_term', 'test_17817', 15, 3 );
function test_17817( $term_id, $tt_id, $taxonomy ) {
// http://core.trac.wordpress.org/ticket/17817
remove_action( 'edit_term', 'test_17817', 15 );
}
๋๋จํ ๊ฐ์ฌํฉ๋๋ค.
๋๋ WP์ ์ฝ๋ฉ์ ์ถฉ๋ถํ ์ดํดํ์ง ๋ชปํฉ๋๋ค. ์ ๋ ๋๋ฒ๊ฑฐ์
๋๋ค.
ํจ์ ๋ณธ๋ฌธ์์ remove_action
๊บผ๋ด๊ณ ํจ์๋ฅผ ๋น์ ๋ก๋๋ค. remove_action
ํธ์ถ์ Pod๊ฐ ์์ธ์ด๋์ง ์๊ณ ๋ฒ๊ทธ ๋งค๋ํ์คํธ๋ฅผ ๋ง๋๋ ๋ฐฉ๋ฒ์ ์ค๋ช
ํ๊ธฐ์ํ ๊ฒ์
๋๋ค. ๊ฑฐ๊ธฐ์ ๊ทธ๊ฒ์ ๊ฐ์ง๊ณ ์์ผ๋ฉด ๋ฏธ๋์ ๋ฌธ์ ๊ฐ ์ ์ฌ์ ์ผ๋ก ๋ณต์กํด์ง ์ ์์ต๋๋ค.
์ฐ๋ฆฌ๊ฐ ์ฌ๊ธฐ์ ์ฌ์ฉํ๋ ํ๋ก์ธ์ค๊ฐ ์ค์ ๋ก WordPress ์ฝ์ด์์ ๊ถ์ฅํ๋ ๊ฒ์์ ์ฌ๊ธฐ์ ๋ฌธ์ํํ๋ ๊ฒ๋ ์ข์ต๋๋ค (๋ค๋ฅธ ์์ ์ ๋ํด).
http://codex.wordpress.org/Plugin_API/Action_Reference/save_post#Avoiding_infinite_loops
์ค๋กํฉ๋๋ค.
์ฌ์ฉ์ ์ง์ ๋ถ๋ฅ์ ๋ํ ์ถ๊ฐ ํ๋๊ฐ ์๋๋ฐ edit_term
๋ฅผ ์ฐ๊ฒฐํ๋ ์ด์ ๋ ๋ฌด์์
๋๊น?
๊ทธ ๋ค์ ๊ธฐ๋ฅ์ ์ค๋ช ์ด ์๋์ง ๋๋ ๋จ์ํ "์ฒ์์ ์์ฑ๋ ๋ฐฉ์"์ธ์ง ํ์คํ์ง ์์ต๋๋ค. 3.0 ์ต์ ํ ๊ณ ๋ ค ์ฌํญ์ ๋ํ ์๋ก์ด ๋ฌธ์ ๊ฐ ๋ ๋งํ ์ข์ ์ง๋ฌธ์ ๋๋ค. ์ฐ๋ฆฌ๊ฐ ๋น์์ ์ฐ๊ฒฐํ ํ์๊ฐ ์๋ค๊ณ ๊ฒฐ์ ํ ์์๋ ๊ฒ์ ์ฐ๊ฒฐํ์ง ์๋ ๊ฒ์ ๋๋ค.
์ด ๋ฌธ์ ๊ฐ ์ฌ์ ํ ํ์ฑํ๋์ด ์์ต๋๊น?
ํฌ๋ v3 (๋ฆฌํผํฐ ํ๋)๊ฐ ์ถ์ ๋ ์์ ์ ๋๊น?
@szepeviktor ์ด ์ฃผ์ ์ ๊ด๋ จ์ด์๋ ๊ฒ ๊ฐ์ต๋๋ค.
์ด์จ๋ ์ฒซ ๋ฒ์งธ ๋ฆด๋ฆฌ์ค๋ 2.8์
๋๋ค (๊ทธ๋ฃน ํ๋ + ํฌ๋ ๊ด๋ฆฌ์์ ์ ์ฒด ๋ฆฌํฉํฐ๋ง).
2.9 ๋ฐ๋ณต ๊ฐ๋ฅํ ํ๋์ ๋ํด์๋ # 1095๋ฅผ ์ฐธ์กฐํ์ญ์์ค.
3.0 ๋ฃจํ ํ๋์ ๋ํด์๋ # 1095๋ฅผ ์ฐธ์กฐํ์ญ์์ค.
์ฃผ์ ๋ก ๋์๊ฐ์, ๋๋ ์ด๊ฒ์ ์ฌํํ๋ ค๊ณ ๋ ธ๋ ฅํ๊ณ ์ด๊ฒ์ ๋ ์ด์ ํ์ฑ ๋ฌธ์ ๊ฐ ์๋ ๊ฒ ๊ฐ์ต๋๋ค (์ฌ๋ฌ ํ๋ก์ ํธ์์๋ Yoast SEO๋ฅผ ์ฌ์ฉํจ์ ๋ฐ๋ผ ๋์น ์ฑ ์ จ์ ๊ฒ์ ๋๋ค).