지난 12 개월 동안 사용자 지정 필드를 사용하여 WordPress에 새로운 기능을 추가하는 데 초점을 맞춘 여러 자습서를 작성했습니다.

플러그인 같은 동안 CustomPress et 고급 사용자 정의 필드 그들이 어떻게 작동하는지 정말로 이해하고 싶다면 코드를 살펴볼 필요가 있습니다. 따라서이 자습서에서는 사용자 지정 필드를 만드는 방법을 보여줍니다.

WordPress의 CMS 측면 노출

나에게 맞춤 필드 기능은 CMS 시스템의 기초입니다. 게시물 형식과 분류는 좋은 기능이지만 블로그 이상의 것을 만들고 싶다면 링크 기능이 필요합니다. données 귀하의 출판 형식에.

WordPress에서이를 수행하는 두 가지 주요 방법은 사용자 정의 필드와 사용자 정의 메타 상자를 사용하는 것입니다. 사용 방법을 알아보기 전에 기본 메커니즘 인 포스트 형식 메타 데이터를 이해하는 것이 중요하다고 생각합니다.

포스트 형식 메타 데이터 란 무엇입니까?

게시 형식 메타데이터는 모든 유형의 게시를 설명하는 용어입니다. données 이는 내용. 모든 조각 données 테이블에 저장되어 있어요 wp_postmetaID, post_id, meta_key 및 meta_value의 네 가지 열이 있습니다.

워드 프레스 데이터베이스

위 스크린샷은 데이터베이스의 데이터를 표시하는 phpMyAdmin의 스크린샷입니다. 표시된 두 줄은 모두 post_id 3974에 첨부되어 있습니다. 첫 번째 줄은 누가 게시물을 편집했는지 나타내기 위해 WordPress에 의해 추가되었습니다. 두 번째 값은 플러그인에서 사용됩니다. SEO 제목을 기록하다 SEO.

WordPress는 내부적으로 여러 가지를 위해 메타를 사용합니다. 로그 아웃 한 후에도 Organized Editor가 배열을 유지한다는 것을 알고 계실 것입니다. 또 다른 중요한 예는 추천 이미지입니다. ID가 3974 인 기사에 이미지가 선택되어 있으면 메타 키 "를 사용하여 새 메타 라인이 생성됩니다. _thumbnail_id". 메타 값에는 영향을받는 이미지의 ID가 포함됩니다.

맞춤 입력란 및 메타 박스

사용자 정의 필드 및 메타 상자는 WordPress에 데이터를 입력 할 수있는 사용자 인터페이스 요소입니다. 사용자 정의 필드 섹션은 위에서 설명한 포스트 메타 기능을 사용하여 WordPress 및 "후크"에 의해 생성됩니다.

사용자 정의 워드 프레스 필드

이름과 값을 입력하면 테이블에 직접 행이 생성됩니다. postmeta.

반면에 메타 박스는 기본적으로 WordPress의 사용자 인터페이스와 관련이 있습니다. 게시물 및 페이지 편집 중에 새 항목에 대한 필드를 추가 할 수있는 방법을 제공합니다. 게시물에 링크하도록 선택할 수 있지만 pouvez 다른 것들에도 사용하십시오.

메타 데이터 조작

메타 데이터를 조작하는 매우 사용자 친화적 인 방법은 대시 보드에있는 사용자 정의 필드의 사용자 인터페이스를 사용하는 것입니다. 개발자로서 우리는 플러그인이나 테마가 처리 할 수있는 데이터를 추가하기 위해 몇 가지 코드를 사용해야합니다.

다행히도 이것은 매우 간단합니다. 우리는 세 가지 기능 만 필요합니다. get_post_meta() , add_post_meta() et update_post_meta().

사용할 데이터를 입력하여 시작하겠습니다.

메타 데이터를 복구하는 방법

라 폰촉 get_post_meta() 함수는 포스트 형식 ID (기사 / 페이지), 키 및 단일 또는 다중 값 검색 여부의 세 가지 매개 변수를 사용합니다. 처음 두 가지는 매우 명확해야하지만 세 번째는 혼란 스러울 수 있습니다.

메타데이터 행에 키와 값이 포함되어 있다는 것을 기억하십니까? 그러나 동일한 키를 사용하여 여러 행을 추가하는 것을 막는 것은 없습니다. 이것은 처음에는 나쁜 습관처럼 보일 수 있지만 실제로는 매우 유용할 수 있습니다.

레시피 블로그를 만들고 재료를 메타로 저장하려고한다고 가정 해 봅시다. 사용할 수 있습니다 ingredient_1 , ingredient_2 메타 키도 마찬가지이지만 빠르게 지루해집니다.

대신해야 할 일은 " ingrédient" 이 경우 고유 키로. 이것은 데이터베이스에서 다음과 같은 결과를 가져옵니다.

WordPress Tutotriel 기사에 대한 여러 메타 항목

"를 사용하려면 true" 함수의 세 번째 매개 변수 get_post_meta() 이 행 중 하나만 검색됩니다. 사용하는 경우 false 모든 행은 배열로 반환됩니다!

성분 : "; 에코" "; foreach ($ 성분을 $ 성분으로) {echo" ". $ 성분." ";} 에코" ";}?>

"포스트 메타"를 추가하는 방법

메타 게시물을 추가하려면 " add_post_meta()" XNUMX 개의 필수 매개 변수와 XNUMX 개의 옵션이 있습니다. 첫 번째 매개 변수는 게시물 형식 ID (기사 / 페이지)이고 두 번째는 메타 키, 세 번째는 메타 값입니다.

네 번째 매개 변수는이 메타가 고유한지 여부를 지정하도록 요청합니다. false (또는 매개 변수를 생략) 동일한 키를 가진 메타 데이터가 이미있는 경우에도 메타 데이터가 추가됩니다. true로 설정하면 동일한 이름의 키가 이미 존재하는 경우 데이터가 추가되지 않습니다.


"포스트 메타"를 업데이트하는 방법

메타 데이터 업데이트는 추가와 매우 유사합니다. 사실, 당신은 기능을 사용할 수 있습니다 update_post_meta() 데이터를 추가 할 수도 있습니다. 존재하지 않는 경우 함수와 같이 생성됩니다. add_post_meta() .

이 함수는 세 개의 필수 매개 변수와 하나의 선택적 매개 변수를 사용합니다. 필요한 세 가지는 ID, 메타 키 및 메타 값입니다. 네 번째 매개 변수는 동일한 메타 키를 가진 여러 항목이있는 상황을 처리하는 방법을 정의합니다.

이 매개 변수를 생략하면 toutes 메타 키가 동일한 줄은 새로운 값으로 업데이트됩니다. 네 번째 매개 변수를 사용하는 경우 이전 값을 지정할 수 있습니다. 지정된 값과 일치하는 값을 가진 행만 업데이트합니다.


도움이되는 힌트

여기에 메타에 대해 알아야 할 모든 것이 있습니다! 이제 값을 저장하고 나중에 사용할 수 있습니다. 시작하기 전에 네 가지 유용한 팁으로 마무리하겠습니다.

1. 메타에 밑줄 사용

데이터베이스의 첫 번째 스크린 샷에서 메타 키가 "밑줄"로 시작하는 것을 눈치 채 셨을 것입니다. 이것은 WordPress에서 특별한 의미가 있습니다. 즉, 사용자 정의 필드의 사용자 인터페이스에 메타 데이터가 표시되지 않아야 함을 의미합니다.

2. 메타 데이터는 배열로 사용됩니다.

항상 가능한 한 적은 수의 메타 필드를 사용하십시오. 플러그인이 10 개의 옵션을 사용하는 경우 각 메타에 대한 키를 생성하지 마십시오. 메타 키를 사용하고 모든 옵션을 배열로 저장하십시오. 배열을 함수에 직접 전달할 수 있습니다. update_post_meta() et add_user_meta()워드 프레스는 나머지를 할 것입니다.

3. 모든 메타 데이터는 매번 추출됩니다.

서버 사용량을 최소화하기 위해 WordPress는 메타 데이터가 요청 된 경우 기사의 모든 메타 데이터를 검색합니다. 즉, 30 번의 통화를해야하는 것에 대해 걱정할 필요가 없습니다. get_post_meta() 페이지. 하나의 데이터베이스 요청 만 수행되며 모든 것이 나중에 캐시됩니다.

4. 모든 메타 데이터를 한 번 가져 오기

라 폰촉 get_post_meta() 함수는 주어진 항목에 대한 모든 키와 메타 값을 반환 할 수 있습니다. 두 번째 및 세 번째 매개 변수를 생략하고 항목 ID 만 전달하면 해당 항목에 대한 모든 데이터베이스 데이터를 갖게됩니다.

이 튜토리얼은 끝났습니다. 좋아하는 소셜 네트워크에서 친구들과 자유롭게 공유하십시오.