사용자 지정 게시물 유형에 사용자 지정 필드를 추가하는 방법은 무엇입니까?
-
-
http://wordpress.org/extend/plugins/types/사용Use http://wordpress.org/extend/plugins/types/
- 0
- 2012-07-30
- Ajay Patel
-
6 대답
- 투표
-
- 2011-05-13
이것은 아마도 여러분이 생각하는 것보다 더 복잡 할 것입니다. 프레임 워크를 사용하는 방법을 살펴 보겠습니다.
자신 만의 글을 작성하고 싶다면 다음은 괜찮은 자습서입니다.
This is probably more complicated than you think, I would look into using a framework:
If you want to write your own , here are some decent tutorials:
-
정말 그렇게 어려울 것입니다.포스트 유형과 분류법에서하는 것처럼 내 함수에 등록 코드를 추가하는 것만 큼 간단 할 것이라고 생각했습니다.really it would be that hard. I thought it would be as simple as adding a register code to my functions like we do with post types and taxonomies.
- 1
- 2011-05-13
- xLRDxREVENGEx
-
이 답변에 하나를 더할 것이지만 너무 복잡하지는 않습니다.thinkvitamin.com 링크는 메타 박스를 추가하고 저장하는 방법을 설명하는 훌륭한 역할을합니다.sltaylor.co.uk 링크는 훌륭한 코딩 방법을 사용하는 방법에 대한 멋진 튜토리얼입니다.'save_post'후크를 사용할 때는주의해야합니다.이상한 시간에 호출되었습니다.WP_DEBUG 변수를 사용할 때 발생할 수있는 잠재적 인 오류를 확인하려면true로 설정해야합니다.I'll plus one this answer, but it's not too complex. The thinkvitamin.com link does a great job explaining how to add the metaboxes and save them. The sltaylor.co.uk link is an awesome tutorial on using some great coding practices. My word of caution is be careful when using the `save_post` hook. It's called at weird times. Make sure to have WP_DEBUG variable set to true in order to see potential errors that arise when using it.
- 1
- 2011-05-13
- tollmanz
-
나는thinkvitamin 링크를 사용한 업데이트로 엄청난 도움이되었으며 사용자 정의 필드 설정에 대한 케이크 산책이었습니다.Just an update i used the thinkvitamin link and that helped tremendously and it was a cake walk on setting up custom fields
- 2
- 2011-05-13
- xLRDxREVENGEx
-
- 2013-04-23
supports
인수 (register_post_type
사용시)를 추가/편집하여custom-fields
를 포함하여 사용자 지정 게시물 유형의 편집 화면을 게시합니다.:'supports' => array( 'title', 'editor', 'excerpt', 'thumbnail', 'custom-fields', 'revisions' )
출처 : https://codex.wordpress.org/Using_Custom_Fields#Displaying_Custom_Fields
Add/edit the
supports
argument ( while usingregister_post_type
) to include thecustom-fields
to post edit screen of you custom post type:'supports' => array( 'title', 'editor', 'excerpt', 'thumbnail', 'custom-fields', 'revisions' )
Source: https://codex.wordpress.org/Using_Custom_Fields#Displaying_Custom_Fields
-
이것이 문제를 해결할 수있는 이유를 설명해 주시겠습니까?Can you please explain why this could solve the issue?
- 2
- 2013-04-23
- s_ha_dum
-
예,작동합니다. 누가 대답 했나.다시 가져가실 수 있나요? 문안 인사,Yes, this works. Who -1'ed the answer. Can you please take it back? Regards,
- 1
- 2013-07-25
- Junaid Qadir
-
...그리고.........?...and then.........?
- 8
- 2016-10-26
- Mark
-
- 2014-01-30
유효성 검사를 추가해야하지만 현재 버전의 WordPress에서는이 작업이 복잡하지 않은 것 같습니다.
기본적으로 맞춤 게시물 유형에 맞춤 입력란을 추가하려면 다음 두 단계가 필요합니다.
- 사용자 정의 필드를 포함하는 메타 박스 만들기
- 사용자 정의 필드를 데이터베이스에 저장
이러한 단계는 http://wordpress.org/support/topic/is-it-possible-to-add-an-extra-field-to-a-custom-post-type
예 :
"prefix-teammembers"라는 사용자 지정 게시물 유형에 "기능"이라는 사용자 지정 필드를 추가합니다.
먼저 메타 박스 추가 :
function prefix_teammembers_metaboxes( ) { global $wp_meta_boxes; add_meta_box('postfunctiondiv', __('Function'), 'prefix_teammembers_metaboxes_html', 'prefix_teammembers', 'normal', 'high'); } add_action( 'add_meta_boxes_prefix-teammembers', 'prefix_teammembers_metaboxes' );
"prefix-teammembers"를 추가하거나 편집하면
add_meta_boxes_{custom_post_type}
후크가 트리거됩니다.add_meta_box()
함수. 위의add_meta_box()
호출에서 양식 필드를 추가하는 콜백 인prefix_teammembers_metaboxes_html
은 다음과 같습니다.function prefix_teammembers_metaboxes_html() { global $post; $custom = get_post_custom($post->ID); $function = isset($custom["function"][0])?$custom["function"][0]:''; ?> <label>Function:</label><input name="function" value="<?php echo $function; ?>"> <?php }
두 번째 단계에서는 데이터베이스에 대한 사용자 정의 필드가 있습니다.
save_post_{custom_post_type}
저장시 후크가 트리거됩니다 (v 3.7 이후 참조 : https://stackoverflow.com/questions/5151409/wordpress-save-post-action-for-custom-posts ). 이것을 연결하여 사용자 정의 필드를 저장할 수 있습니다.function prefix_teammembers_save_post() { if(empty($_POST)) return; //why is prefix_teammembers_save_post triggered by add new? global $post; update_post_meta($post->ID, "function", $_POST["function"]); } add_action( 'save_post_prefix-teammembers', 'prefix_teammembers_save_post' );
Although you should have to add some validation, this action does not seem to be complicated for the current version of WordPress.
Basically you need two steps to add a Custom Field to a Custom Post Type:
- Create a metabox which holds your Custom Field
- Save your Custom Field to the database
These steps are globally described here: http://wordpress.org/support/topic/is-it-possible-to-add-an-extra-field-to-a-custom-post-type
Example:
Add a Custom Field called "function" to a Custom Post Type called "prefix-teammembers".
First add the metabox:
function prefix_teammembers_metaboxes( ) { global $wp_meta_boxes; add_meta_box('postfunctiondiv', __('Function'), 'prefix_teammembers_metaboxes_html', 'prefix_teammembers', 'normal', 'high'); } add_action( 'add_meta_boxes_prefix-teammembers', 'prefix_teammembers_metaboxes' );
If your add or edit a "prefix-teammembers" the
add_meta_boxes_{custom_post_type}
hook is triggered. See http://codex.wordpress.org/Function_Reference/add_meta_box for theadd_meta_box()
function. In the above call ofadd_meta_box()
isprefix_teammembers_metaboxes_html
, a callback to add your form field:function prefix_teammembers_metaboxes_html() { global $post; $custom = get_post_custom($post->ID); $function = isset($custom["function"][0])?$custom["function"][0]:''; ?> <label>Function:</label><input name="function" value="<?php echo $function; ?>"> <?php }
In the second step you have your custom field to the database. On saving the
save_post_{custom_post_type}
hook is triggered (since v 3.7, see: https://stackoverflow.com/questions/5151409/wordpress-save-post-action-for-custom-posts). You can hook this to save your custom field:function prefix_teammembers_save_post() { if(empty($_POST)) return; //why is prefix_teammembers_save_post triggered by add new? global $post; update_post_meta($post->ID, "function", $_POST["function"]); } add_action( 'save_post_prefix-teammembers', 'prefix_teammembers_save_post' );
-
"새로 추가하면prefix_teammembers_save_post가 트리거되는 이유는 무엇입니까?"답을 찾았습니까? 또한 기억할 수없는 추가 기능 트리거에 걸려 넘어지고 있습니까?"why is prefix_teammembers_save_post triggered by add new?" have you found an answer, i am also stumbling on a extra function trigger which i can't recall?
- 0
- 2015-02-18
- alex
-
" 'prefix-teammembers'라는 사용자 지정 게시물 유형에 '기능'이라는 사용자 지정 필드를 추가합니다." "호출"이란 무엇을 의미합니까? 이름? singular_name? 레이블? 아마도 register_post_type에서 첫 번째 인수로 사용되는 문자열 일 수 있습니다.또는 일관성이있는 한 그것이 무엇인지는 중요하지 않을 수도 있습니다."Add a Custom Field called 'function" to a Custom Post Type called 'prefix-teammembers'." What does "called" mean? The name? The singular_name? The label? Maybe it's the string used as the first argument in the register_post_type function. Or maybe it doesn't matter what it is so long as it's consistent.
- 0
- 2019-10-07
- arnoldbird
-
- 2018-01-03
사용자 정의 메타 상자 및 사용자 정의 필드를위한 다양한 플러그인이 있습니다.개발자에 초점을 맞춘 플러그인을 살펴보면 Meta Box 를 사용해보세요.가볍고 매우 강력합니다.
메타 상자/사용자 정의 필드에 대한 코드를 작성하는 방법에 대한 자습서를 찾고 있다면 이 는 좋은 시작입니다.코드를 쉽게 확장 할 수 있도록 수정하는 데 도움이 될 시리즈의 첫 번째 부분입니다.
There are various plugins for custom meta boxes and custom fields. If you look at a plugin that focuses on developers, then you should try Meta Box. It's lightweight and very powerful.
If you're looking for a tutorial on how to write code for a meta box / custom fields, then this is a good start. It's the first part of a series that might help you refine the code to make it easy to extend.
-
- 2020-08-12
이 질문은 오래되었지만 주제에 대한 자세한 내용은 알고 있습니다.
WordPress는 사용자 정의 필드를 기본적으로 지원합니다.사용자 지정 게시물 유형이있는 경우 @kubante가 답변 한대로 register_post_type 내부의 지원 배열에 'custom-fields'를 포함하기 만하면됩니다.
참고 이 옵션은 사용 설정해야하는 게시물 및 페이지와 같은 기본 게시물 유형에도 사용할 수 있습니다.
이제이 사용자 정의 필드는 매우 기본적이며 문자열을 값으로 허용합니다.많은 경우 괜찮지 만 더 복잡한 필드의 경우 'Advanced Custom Fields'플러그인을 사용하는 것이 좋습니다
I know this question is old but for more info about the topic
WordPress has built-in support for custom fields. If you have a custom post type then all you need is to include 'custom-fields' inside the support array inside of register_post_type as answered by @kubante
Note that this option is also available for native post types like posts and pages you just need to turn it on
Now This custom field is very basic and accepts a string as a value. In many cases that's fine but for more complex fields, I advise that you use the 'Advanced Custom Fields' plugin
-
- 2017-10-28
// slider_metaboxes_html , function for create HTML function slider_metaboxes( ) { global $wp_meta_boxes; add_meta_box('postfunctiondiv', __('Custom link'), 'slider_metaboxes_html', 'slider', 'normal', 'high'); } //add_meta_boxes_slider => add_meta_boxes_{custom post type} add_action( 'add_meta_boxes_slider', 'slider_metaboxes' );
완벽한 지식
// slider_metaboxes_html , function for create HTML function slider_metaboxes( ) { global $wp_meta_boxes; add_meta_box('postfunctiondiv', __('Custom link'), 'slider_metaboxes_html', 'slider', 'normal', 'high'); } //add_meta_boxes_slider => add_meta_boxes_{custom post type} add_action( 'add_meta_boxes_slider', 'slider_metaboxes' );
Perfect knowledge
알겠습니다. 몇 가지 맞춤 게시물 유형과 몇 가지 분류법을 등록했습니다.이제는 내 사용자 지정 게시물 유형에 사용자 지정 필드를 추가하는 데 필요한 코드를 알 수 없습니다.
드롭 다운과 한 줄 텍스트 영역이 필요합니다.그러나 게시물 유형에 대한 별도의 필드도 필요합니다.따라서 게시물 유형 1에는 3 개의 필드가 있고 게시물 유형 2에는 4 개의 필드가 있지만 필드는 다릅니다.
어떤 팁이라도 코덱스를보고 무언가를 찾았지만
functions.php
파일에 무엇을 추가해야하는지 이해할 수 없습니다.