前提・実現したいこと
bbpressの投稿フォームをカスタマイズしたい。
現在は名前とメールアドレス入力欄と三つしかないが入力する項目を色々増やしたい。
発生している問題・エラーメッセージ
下記のサイトを参考に機能を追加しようとしたのだが反映されなかった。
該当のソースコード
php
1//content-single-topic.php 2<?php 3 4/** 5 * The template for displaying all pages. 6 * 7 * @package Theme Freesia 8 * @subpackage Excellent 9 * @since Excellent 1.0 10 */ 11 12 13 14/** 15 * Single Topic Content Part 16 * 17 * @package bbPress 18 * @subpackage Theme 19 */ 20 21 22 23?> 24 25<div id="bbpress-forums" style="margin:0 auto"> 26 27 28 <?php bbp_breadcrumb(); ?> 29 30 <?php do_action('bbp_template_before_single_topic'); ?> 31 32 <?php if (post_password_required()) : ?> 33 34 <?php bbp_get_template_part('form', 'protected'); ?> 35 36 <?php else : ?> 37 38 <?php bbp_topic_tag_list(); ?> 39 40 <?php bbp_single_topic_description(); ?> 41 42 <?php if (bbp_show_lead_topic()) : ?> 43 44 <?php bbp_get_template_part('content', 'single-topic-lead'); ?> 45 46 <?php endif; ?> 47 48 <?php if (bbp_has_replies()) : ?> 49 50 <?php bbp_get_template_part('pagination', 'replies'); ?> 51 52 <?php bbp_get_template_part('loop', 'replies'); ?> 53 54 <?php bbp_get_template_part('pagination', 'replies'); ?> 55 56 <?php endif; ?> 57 58 <!-- 追加 --> 59 <?php 60 //テキスト項目の値の出力 61 echo get_post_meta(bbp_get_topic_id(), 'input_name', true); 62 //テキストボックス項目の値の出力 63 echo get_post_meta(bbp_get_topic_id(), 'textarea_name', true); 64 65 ?> 66 67 <?php bbp_get_template_part('form', 'reply'); ?> 68 69 70 <?php endif; ?> 71 72 <?php do_action('bbp_template_after_single_topic'); ?> 73 74</div> 75 76//form-anonymous.php 77<?php 78 79/** 80 * Anonymous User 81 * 82 * @package bbPress 83 * @subpackage Theme 84 */ 85 86?> 87 88<?php if ( bbp_current_user_can_access_anonymous_user_form() ) : ?> 89 90 <?php do_action( 'bbp_theme_before_anonymous_form' ); ?> 91 92 <fieldset class="bbp-form"> 93 <legend><?php ( bbp_is_topic_edit() || bbp_is_reply_edit() ) ? _e( 'Author Information', 'bbpress' ) : _e( 'Your information:', 'bbpress' ); ?></legend> 94 95 <?php do_action( 'bbp_theme_anonymous_form_extras_top' ); ?> 96 97 <p> 98 <label for="bbp_anonymous_author"><?php _e( 'Name (required):', 'bbpress' ); ?></label><br /> 99 <input type="text" id="bbp_anonymous_author" value="<?php bbp_author_display_name(); ?>" tabindex="<?php bbp_tab_index(); ?>" size="40" name="bbp_anonymous_name" /> 100 </p> 101 102 <p> 103 <label for="bbp_anonymous_email"><?php _e( 'Mail (will not be published) (required):', 'bbpress' ); ?></label><br /> 104 <input type="text" id="bbp_anonymous_email" value="<?php bbp_author_email(); ?>" tabindex="<?php bbp_tab_index(); ?>" size="40" name="bbp_anonymous_email" /> 105 </p> 106 107<!-- <p> 108 <label for="bbp_anonymous_website"><?php _e( 'Website:', 'bbpress' ); ?></label><br /> 109 <input type="text" id="bbp_anonymous_website" value="<?php bbp_author_url(); ?>" tabindex="<?php bbp_tab_index(); ?>" size="40" name="bbp_anonymous_website" /> 110 </p>--> 111 112 <?php do_action( 'bbp_theme_anonymous_form_extras_bottom' ); ?> 113 114 </fieldset> 115 116 <?php do_action( 'bbp_theme_after_anonymous_form' ); ?> 117 118<?php endif; ?> 119 120//functions.php 121//orca 122 123add_action ( 'bbp_theme_before_topic_form_content', 'bbp_extra_fields'); 124function bbp_extra_fields() { 125 126 $html = ""; 127 //テキスト項目 128 $html .= '<input name="input_name" type="text" value="">'; 129 //テキストボックス項目 130 $html .= '<textarea name="textarea_name" cols=10></textarea>'; 131 132 echo $html; 133} 134 135 136add_action ( 'bbp_new_topic', 'bbp_save_extra_fields', 10, 1 ); 137add_action ( 'bbp_edit_topic', 'bbp_save_extra_fields', 10, 1 ); 138function bbp_save_extra_fields($topic_id = 0) { 139 140 if (isset($_POST) && $_POST['input_name']!='') { 141 //テキスト項目の保存 142 update_post_meta( $topic_id, 'input_name', $_POST['input_name'] ); 143 } 144 if (isset($_POST) && $_POST['textarea_name']!=''){ 145 //テキストボックス項目の保存 146 update_post_meta( $topic_id, 'textarea_name', $_POST['textarea_name'] ); 147 } 148 149 150 151 } 152 153 154
試したこと
functions.phpがテーマにあるものなのかbbpressにあるものなのかわからなかったためほぼ全部のfunctions.phpに貼り付けてみたがダメだった。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/06/08 05:05
2020/06/08 05:32
2020/06/08 05:47
2020/06/08 05:50
2020/06/08 06:32
2020/06/08 08:19