

WordPressに以下の画像のような、導入文の投稿フォームを追加するには、どうすれば良いでしょうか？

[![画像の説明をここに入力](https://i.stack.imgur.com/4FCE5.png)](https://i.stack.imgur.com/4FCE5.png)


CC BY-SA 3.0
2017-06-03T10:35:18.350
35250
2020-08-15T07:00:30.070
23272
question
wordpress
WordPressに導入文の投稿フォームを追加する方法


カスタムフィールドの追加はプラグインを使用するとfunctions.phpを編集せずに簡単にできます。  
プラグインは沢山あるので、'カスタムフィールドの追加はプラグイン'とかキーワードにして検索して目的にあったプラグインを選定してください。

しかし、以下にプラグインを使わない方法を書きます。  
テーマのfunctions.phpへ以下のコードを追加するとtextareaのカスタムフィールドを追加できます。  
functions.phpを編集する前にfunctions.phpのバックアップを取ってから慎重に行いましょう。

[code]

    function _add_field()
    {
        add_meta_box(
            'field-name',//入力id
            '導入文',//表示タイトル
            '_addmetabox',//コールバック関数名
            'post'//screen
        );
    }
    add_action( 'add_meta_boxes', '_add_field' );
    
    function _addmetabox( $post )
    {
        $value = get_post_meta( $post->ID, 'introduction_sentence', true);
        echo '<textarea name="introduction_sentence" style="width: 100%;height: 200px">'.$value.'</textarea>';
    //    wp_editor( $value, 'introduction_sentence' );
        wp_nonce_field( 'nonce_key', 'namenonce' );
    }
    
    function _save_field( $post_id )
    {
        if ( ! isset( $_POST[ 'namenonce' ] )
        || ! check_admin_referer( 'nonce_key', 'namenonce' )
        ){ return $post_id;}
    
        update_post_meta(
                $post_id,
                'introduction_sentence',
                $_POST['introduction_sentence']
        );
        return $post_id;
    }
    add_action( 'save_post', '_save_field' );
    
[/code]


CC BY-SA 3.0
2017-06-03T18:29:10.663
35256
2017-06-03T19:54:00.730
2017-06-03T19:54:00.730
22793
22793
35250
answer