정리하자면, Toolset Access는 {excerpt}와 관련된 이 차이점에 영향을 미치지 않는 것 같습니다.
WP 관리자 화면에서 게시물을 생성하면 {excerpt}가 정상적으로 표시됩니다(게시물은 블록 에디터를 사용 중입니다). 반면 Gravity Form을 통해 생성하면 {excerpt}가 빈 값으로 게시됩니다(Gavity Form은 WYSIWYG 필드를 담기 위해 “클래식” 블록을 생성합니다).
사용자 정의 필드(단일 줄, 다중 줄, 숫자)는 게시물이 어떻게 생성되었든 항상 빈 값으로 반환됩니다.
‘성공’ 메시지가 표시되지 않지만 게시물이 게시되었다면, 문제는 사용자 정의 게시 유형 설정에 있습니다.
‘성공’ 메시지가 표시된다면, 사용자 정의 필드는 get_post_meta( $post_id, 'your_meta_key_name', true );를 사용하여 반환할 수 있는 게시 메타데이터로 사용할 수 있어야 합니다. 무슨 일이 일어나고 있는지 파악하는 가장 쉬운 방법은 cosmos_custom_publish_format_html 함수에서 debug.log 파일에 기록하는 것입니다.
드디어 원인을 좁혀 보았습니다. 문제는 자동 게시 옵션(이것도 새로운 요인인데, 간과하고 있었습니다)에서 오는 것 같습니다. 이 옵션을 해제하고, 먼저 WordPress에서 게시물을 게시한 다음에 Discourse로 게시하면, 커스텀 필드가 Discourse로 정상적으로 전달되어 올바르게 표시됩니다. 또는 자동 게시를 허용하는 경우, WordPress에서 'Update Discourse Topic’을 클릭하면 필드가 Discourse에 표시됩니다. 따라서 게시물이 자동으로 게시될 때, 커스텀 필드의 데이터가 WordPress에 제대로 저장되기 전에 게시가 이루어지는 것으로 보입니다.