WP 멀티사이트 사이트 간에 ACF 필드 동기화
WordPress 멀티 사이트의 사이트 간에 ACF 필드를 동기화하는 방법을 찾고 있습니다.개개의 컨텐츠를 가지는 사이트는 5개 있습니다만, 모두 같은 ACF 필드를 사용합니다.각 사이트에서 이러한 새 필드를 수동으로 만들고 추가할 필요가 없습니다.
회피책이 있나요?
WP 4.8 및 ACF Pro 5.5.1.4 사용
ACF Pro 를 사용하고 있기 때문에, 「내보내기/가져오기」기능을 사용할 수 있습니다.
- 네트워크 활성화 고급 사용자 지정 필드
- 사용자 정의 필드 메뉴를 통해 주 사이트에 필드 그룹을 만듭니다.
- 커스텀 필드 사용–> 내보내기, 모든 필드 그룹 선택, PHP로 내보내기
- PHP를 (자녀) 테마의 함수에 붙여넣습니다.php
- 돌아가서 중복되지 않도록 메인 사이트의 필드를 폐기합니다.
이것으로 네트워크 전체에서 ACF 필드를 사용할 수 있게 되었습니다.
이전에도 몇 번인가 같은 생각을 하고 있었습니다만, 가장 쉬운 것은 acf-field-name 세트의 github repo를 작성하는 것이라고 하는 결론에 도달했습니다.php 파일 및 그 저장소를 각 프로젝트에 서브모듈로 가져옵니다.이 php 파일을 테마 폴더 내의 acf 폴더에 저장하고 함수 내에서 함수를 사용하는 경우.php 이렇게
function getAcfFileNames()
{
return array(
'acf-one',
'acf-two',
'acf-three',
);
}
function add_php_acf_field_groups()
{
$fileNames = getAcfFileNames();
foreach ($fileNames as $fileName) {
include_once 'acf/' . $fileName . '.php';
}
}
;
add_action('acf/init', 'add_php_acf_field_groups');
잘 될 거야그리고 만약 당신이 그 acf를 편집하고 싶다면.프로젝트 내 php 파일은 -> https://github.com/BeAPI/ACF-PHP-Recovery을 사용하여 로컬로 php 파일을 복구하고 업데이트할 수 있습니다.그 후 파일을 내보내고 ACF 레포에 커밋합니다.
그 외에는 유감스럽게도 더 나은 해결책을 찾지 못했습니다.
관리자가 로그인하면 모든 acf-json 파일을 자동으로 동기화하는 Jesse Pearson의 Gist가 있습니다.
https://gist.github.com/jessepearson/a537b2f78556cd705947
GIST의 코멘트에서는, 코드의 개선점을 몇개인가 발견할 수 있습니다.주의하세요!
덕분에 시간이 많이 절약됐지
특정 페이지나 게시물이 아닌 템플릿 이름에 필드를 첨부하면 문제 없이 동기화할 수 있습니다.
https://www.advancedcustomfields.com/resources/synchronized-json/
기능을 빠르게 변경하기만 하면 됩니다.php 파일.
https://www.advancedcustomfields.com/resources/local-json/
로컬에서 작업을 마치고 프로덕션 테마를 업데이트하고 싶을 때 내보낸 PHP 코드 방식을 사용했습니다.
언급URL : https://stackoverflow.com/questions/45159628/sync-acf-fields-across-sites-on-wp-multisite
'source' 카테고리의 다른 글
| MongoDB 기본 데이터베이스 경로는 무엇입니까? (0) | 2023.02.16 |
|---|---|
| Kotlin: JSONArray를 통해 반복 (0) | 2023.02.16 |
| ES2015 모듈에서 "이 구문을 사용하려면 가져온 도우미가 필요하지만 모듈 'tslib'을 찾을 수 없습니다" (0) | 2023.02.16 |
| MongoDB: 한 필드에 있는 모든 문서 업데이트 (0) | 2023.02.16 |
| 입력 유형 Number에서 +,-e를 차단하는 방법 (0) | 2023.02.16 |