작업 : CMS 사용자가 게시물을 Twitter와 공유 할 때 사용되는 이미지를 변경할 수 있습니다. Yoast는 트위터 카드를 만들 때 추천 이미지를 사용합니다.WordPress 용 테마에서 Yoast의 WPSEO_Twitter 클래스를 올바르게 확장하는 방법
접근 방식 : 게시물에 맞춤 메타 필드 추가. WPSEO_Twitter 클래스와 개인 함수 output_metatag() 만 확장하십시오. 사용자 지정 메타 필드가 비어 있지 않으면 기본값 대신 사용자 지정 필드 값을 사용하십시오.
코드 :
if (class_exists('WPSEO_Twitter')) :
remove_action('wpseo_head', array('WPSEO_Twitter', 'get_instance'), 40);
add_action('wpseo_head', array('EXAMPLE_WPSEO_Twitter', 'get_instance'), 40);
class EXAMPLE_WPSEO_Twitter extends WPSEO_Twitter {
// etc
}
endif;
문제 : remove_action가 작동되지 않고 트위터 메타 코드가 중복되고있다. 플러그인의 클래스와 확장 클래스가 모두 실행됩니다.
링크 :https://github.com/Yoast/wordpress-seo/blob/trunk/frontend/class-twitter.php