質問編集履歴

6

事態の進捗

2021/11/20 03:14

投稿

lnavi.bex810vh
lnavi.bex810vh

スコア12

test CHANGED
@@ -1 +1 @@
1
- Advanced Custom Fieldsの使い方
1
+ bbPressのフィールドカスタマイズ
test CHANGED
File without changes

5

事態の進捗がありました。

2021/11/20 03:14

投稿

lnavi.bex810vh
lnavi.bex810vh

スコア12

test CHANGED
File without changes
test CHANGED
@@ -1,233 +1,99 @@
1
- 「bbpress」にて「bbpressでのトピック」にカスタムフィールドを投稿できるように表示させたいです。「Advanced Custom Fields」というpluginをインストールし、単純なフィールドを追加しました。「bbpressのトピック下」に表示させたいため、ACF側では「投稿タイプ」「等しく」「トピック」に設定しております。
2
-
3
- plugins > bbpress > templates > default > bbpress > loop-single-topic.phpに下記の通り(//<=ココに挿入という部分) <?php echo get_field( 'band_name' ); ?>というコードをいろんな場所に挿入してみたのですが、「wordpressのトピック」にしか結果が反映されず、bbPressの投稿フォームに反映させることはそもそも不可能なのでしょうか?自動登録したユーザにのみ特定の項目を入力させる用途に使いたいとかんがえております。
1
+ 「bbpress」にて「bbpressでのトピック」にカスタムフィールドを投稿できるようにさせたいです。
4
2
 
5
3
 
6
4
 
7
- 参考にしたwebサイト:https://gokansoichiro.com/blog/bbpress-custom-fields/
8
-
9
-
10
-
11
- お知恵拝借できれば幸いです。
5
+ そこで以下のコード
12
6
 
13
7
 
14
8
 
15
9
  ```ここに言語を入力
16
10
 
17
- <?php
11
+ add_action ( 'bbp_theme_before_topic_form_content', 'bbp_extra_fields');
18
12
 
13
+ function bbp_extra_fields() {
19
14
 
15
+
20
16
 
21
- /**
17
+ $html = "";
22
18
 
23
- * Topics Loop - Single
19
+ //テキスト項目
24
20
 
25
- *
21
+ $html .= '<input name="input_name" type="text" value="">';
26
22
 
27
- * @package bbPress
23
+ //テキストボックス項目
28
24
 
29
- * @subpackage Theme
25
+ $html .= '<textarea name="textarea_name" cols=10></textarea>';
30
26
 
31
- */
27
+
32
28
 
29
+ echo $html;
33
30
 
34
-
35
- // Exit if accessed directly
36
-
37
- defined( 'ABSPATH' ) || exit;
38
-
39
-
40
-
41
- ?>
42
-
43
-
44
-
45
- <ul id="bbp-topic-<?php bbp_topic_id(); ?>" <?php bbp_topic_class(); ?>>
46
-
47
- <li class="bbp-topic-title">
48
-
49
-
50
-
51
- <?php if ( bbp_is_user_home() ) : ?>
52
-
53
-
54
-
55
- <?php if ( bbp_is_favorites() ) : ?>
56
-
57
-
58
-
59
- <span class="bbp-row-actions">
60
-
61
-
62
-
63
- <?php do_action( 'bbp_theme_before_topic_favorites_action' ); ?>
64
-
65
-
66
-
67
- <?php bbp_topic_favorite_link( array( 'before' => '', 'favorite' => '+', 'favorited' => '&times;' ) ); ?>
68
-
69
-
70
-
71
- <?php do_action( 'bbp_theme_after_topic_favorites_action' ); ?>
72
-
73
-
74
-
75
- </span>
76
-
77
-
78
-
79
- <?php elseif ( bbp_is_subscriptions() ) : ?>
80
-
81
-
82
-
83
- <span class="bbp-row-actions">
84
-
85
-
86
-
87
- <?php do_action( 'bbp_theme_before_topic_subscription_action' ); ?>
88
-
89
-
90
-
91
- <?php bbp_topic_subscription_link( array( 'before' => '', 'subscribe' => '+', 'unsubscribe' => '&times;' ) ); ?>
92
-
93
-
94
-
95
- <?php do_action( 'bbp_theme_after_topic_subscription_action' ); ?>
96
-
97
-
98
-
99
- </span>
100
-
101
-
102
-
103
- <?php endif; ?>
104
-
105
-
106
-
107
- <?php endif; ?>
108
-
109
-
110
-
111
- <?php do_action( 'bbp_theme_before_topic_title' ); ?>
112
-
113
-
114
-
115
- <a class="bbp-topic-permalink" href="<?php bbp_topic_permalink(); ?>"><?php bbp_topic_title(); ?></a>
116
-
117
-
118
-
119
- <?php do_action( 'bbp_theme_after_topic_title' ); ?>
120
-
121
-
122
-
123
- <?php bbp_topic_pagination(); ?>
124
-
125
-
126
-
127
- <?php do_action( 'bbp_theme_before_topic_meta' ); ?>
128
-
129
-
130
-
131
-         <?php echo get_field( 'band_name' ); ?> //<=ココに挿入
132
-
133
-
134
-
135
- <p class="bbp-topic-meta">
136
-
137
-
138
-
139
- <?php do_action( 'bbp_theme_before_topic_started_by' ); ?>
140
-
141
-
142
-
143
- <span class="bbp-topic-started-by"><?php printf( esc_html__( 'Started by: %1$s', 'bbpress' ), bbp_get_topic_author_link( array( 'size' => '14' ) ) ); ?></span>
144
-
145
-
146
-
147
- <?php do_action( 'bbp_theme_after_topic_started_by' ); ?>
148
-
149
-
150
-
151
- <?php if ( ! bbp_is_single_forum() || ( bbp_get_topic_forum_id() !== bbp_get_forum_id() ) ) : ?>
152
-
153
-
154
-
155
- <?php do_action( 'bbp_theme_before_topic_started_in' ); ?>
156
-
157
-
158
-
159
- <span class="bbp-topic-started-in"><?php printf( esc_html__( 'in: %1$s', 'bbpress' ), '<a href="' . bbp_get_forum_permalink( bbp_get_topic_forum_id() ) . '">' . bbp_get_forum_title( bbp_get_topic_forum_id() ) . '</a>' ); ?></span>
160
-
161
- <?php do_action( 'bbp_theme_after_topic_started_in' ); ?>
162
-
163
-
164
-
165
- <?php endif; ?>
166
-
167
-
168
-
169
- </p>
170
-
171
-
172
-
173
- <?php do_action( 'bbp_theme_after_topic_meta' ); ?>
174
-
175
-
176
-
177
- <?php bbp_topic_row_actions(); ?>
178
-
179
-
180
-
181
- </li>
182
-
183
-
184
-
185
- <li class="bbp-topic-voice-count"><?php bbp_topic_voice_count(); ?></li>
186
-
187
-
188
-
189
- <li class="bbp-topic-reply-count"><?php bbp_show_lead_topic() ? bbp_topic_reply_count() : bbp_topic_post_count(); ?></li>
190
-
191
-
192
-
193
- <li class="bbp-topic-freshness">
194
-
195
-
196
-
197
- <?php do_action( 'bbp_theme_before_topic_freshness_link' ); ?>
198
-
199
-
200
-
201
- <?php bbp_topic_freshness_link(); ?>
202
-
203
-
204
-
205
- <?php do_action( 'bbp_theme_after_topic_freshness_link' ); ?>
206
-
207
-
208
-
209
- <p class="bbp-topic-meta">
210
-
211
-
212
-
213
- <?php do_action( 'bbp_theme_before_topic_freshness_author' ); ?>
214
-
215
-
216
-
217
- <span class="bbp-topic-freshness-author"><?php bbp_author_link( array( 'post_id' => bbp_get_topic_last_active_id(), 'size' => 14 ) ); ?></span>
218
-
219
-
220
-
221
- <?php do_action( 'bbp_theme_after_topic_freshness_author' ); ?>
222
-
223
-
224
-
225
- </p>
226
-
227
- </li>
228
-
229
- </ul><!-- #bbp-topic-<?php bbp_topic_id(); ?> -->
31
+ }
230
32
 
231
33
 
232
34
 
233
35
  ```
36
+
37
+
38
+
39
+ wp-content >plugins >bbpress >includes >topics >functions.php
40
+
41
+ 上記ファイルに単純に追加することで、項目のカスタマイズ(表示)自体はできることがわかりました。
42
+
43
+
44
+
45
+ 参考にしたwebサイト:https://bbp-customize.com/add-post-item/
46
+
47
+
48
+
49
+ こちらのwebでは「function.php」としてしか表記されていませんが、これらのうちのひとつはどうやら
50
+
51
+ wp-content >plugins >bbpress >includes >topics >functions.php
52
+
53
+ を指しているものと思われます。
54
+
55
+
56
+
57
+ 次のステップとして、
58
+
59
+ ```ここに言語を入力
60
+
61
+ add_action ( 'bbp_new_topic', 'bbp_save_extra_fields', 10, 1 );
62
+
63
+ add_action ( 'bbp_edit_topic', 'bbp_save_extra_fields', 10, 1 );
64
+
65
+ function bbp_save_extra_fields($topic_id = 0) {
66
+
67
+
68
+
69
+ if (isset($_POST) && $_POST['input_name']!='') {
70
+
71
+ //テキスト項目の保存
72
+
73
+ update_post_meta( $topic_id, 'input_name', $_POST['input_name'] );
74
+
75
+ }
76
+
77
+ if (isset($_POST) && $_POST['textarea_name']!='')
78
+
79
+ //テキストボックス項目の保存
80
+
81
+ update_post_meta( $topic_id, 'textarea_name', $_POST['textarea_name'] );
82
+
83
+ }
84
+
85
+ }
86
+
87
+ ```
88
+
89
+
90
+
91
+ このような「項目を保存するためのコード」を追加したいのですが、同じPHPファイルでは
92
+
93
+ 「重大なエラーが発生しました」
94
+
95
+ と怒られてしまいます。
96
+
97
+
98
+
99
+ 何かご存じの方がいらっしゃいましたらご教示いただきたいです。

4

情報の具体的な追記

2021/11/20 03:03

投稿

lnavi.bex810vh
lnavi.bex810vh

スコア12

test CHANGED
File without changes
test CHANGED
@@ -1,6 +1,6 @@
1
1
  「bbpress」にて「bbpressでのトピック」にカスタムフィールドを投稿できるように表示させたいです。「Advanced Custom Fields」というpluginをインストールし、単純なフィールドを追加しました。「bbpressのトピック下」に表示させたいため、ACF側では「投稿タイプ」「等しく」「トピック」に設定しております。
2
2
 
3
- plugins > bbpress > templates > default > bbpress > loop-single-topic.phpに下記の通り(//<=ココに挿入という部分) <?php echo get_field( 'band_name' ); ?>というコードをいろんな場所に挿入してみたのですが、「wordpressのトピック」にしか結果が反映されず、bbPressの投稿フォームに反映させることはそもそも不可能なのでしょうか?
3
+ plugins > bbpress > templates > default > bbpress > loop-single-topic.phpに下記の通り(//<=ココに挿入という部分) <?php echo get_field( 'band_name' ); ?>というコードをいろんな場所に挿入してみたのですが、「wordpressのトピック」にしか結果が反映されず、bbPressの投稿フォームに反映させることはそもそも不可能なのでしょうか?自動登録したユーザにのみ特定の項目を入力させる用途に使いたいとかんがえております。
4
4
 
5
5
 
6
6
 

3

意図とは異なる場所に表示されるようになりました。

2021/11/19 10:06

投稿

lnavi.bex810vh
lnavi.bex810vh

スコア12

test CHANGED
File without changes
test CHANGED
@@ -1,6 +1,6 @@
1
- 「bbpress」にてカスタムフィールドを表示させたいです。「Advanced Custom Fields」というpluginをインストールし、単純なフィールドを追加しました。bbpressのトピック下に表示させたいため、「投稿タイプ」「等しく」「トピック」に設定しております。
2
-
3
- plugins > bbpress > templates > default > bbpress > loop-single-topic.phpに下記の通り(//<=ココに挿入という部分) <?php echo get_field( 'band_name' ); ?>というコードをいろんな場所に挿入してみたのですが、結果反映されないか重大なエラが発生しましたとして表示れまん。自分的には挿入す場所が間違っているのではないかとと思うのですが、どこに記載すればよいわかりません。
1
+ 「bbpress」にて「bbpressでのトピック」にカスタムフィールドを投稿できるように表示させたいです。「Advanced Custom Fields」というpluginをインストールし、単純なフィールドを追加しました。bbpressのトピック下に表示させたいため、ACF側では「投稿タイプ」「等しく」「トピック」に設定しております。
2
+
3
+ plugins > bbpress > templates > default > bbpress > loop-single-topic.phpに下記の通り(//<=ココに挿入という部分) <?php echo get_field( 'band_name' ); ?>というコードをいろんな場所に挿入してみたのですが、「wordpressのトピック」にしか結果反映されbbPressの投稿フォムに反映させることそもそも不可能なのでしょう
4
4
 
5
5
 
6
6
 

2

問題についての詳細をより詳しく記述しました。

2021/11/19 10:02

投稿

lnavi.bex810vh
lnavi.bex810vh

スコア12

test CHANGED
File without changes
test CHANGED
@@ -1,6 +1,14 @@
1
- Advanced Custom Fieldsというpluginをインストールし、bbpressにてカスタムフィールドを表示させたいため、
2
-
3
- plugins > bbpress > templates > default > bbpress > loop-single-topic.phpに下記の通り(//<=ココに挿入という部分) <?php echo get_field( 'band_name' ); ?>というコードをいろんな場所に挿入してみたのですが、結果に反映されないか、重大なエラーが発生しましたとして表示されません。ACFにて該当フィールド作成済みで、(「投稿タイプ」「等しく」「トピック」)として設定しフィールド名にスペルミスなもないとを確認しておりま。お知恵を拝借できればです
1
+ 「bbpress」にてカスタムフィールドを表示させたいです。「Advanced Custom Fieldsというpluginをインストールし、単純なフィールドを追加しました。bbpressのトピック下に表示させたいため、「投稿タイプ」「等しく」「トピック」)に設定しております。
2
+
3
+ plugins > bbpress > templates > default > bbpress > loop-single-topic.phpに下記の通り(//<=ココに挿入という部分) <?php echo get_field( 'band_name' ); ?>というコードをいろんな場所に挿入してみたのですが、結果に反映されないか、重大なエラーが発生しましたとして表示されません。自分的は挿入する場所が間違っいるないかとと思うのすが、どこに記載すればかわかりません
4
+
5
+
6
+
7
+ 参考にしたwebサイト:https://gokansoichiro.com/blog/bbpress-custom-fields/
8
+
9
+
10
+
11
+ お知恵を拝借できれば幸いです。
4
12
 
5
13
 
6
14
 

1

説明の付加

2021/11/16 02:23

投稿

lnavi.bex810vh
lnavi.bex810vh

スコア12

test CHANGED
File without changes
test CHANGED
@@ -1,6 +1,6 @@
1
- Advanced Custom Fieldsというものをインストールし、bbpressにてカスタムフィールドを表示させたいため、
2
-
3
- plugins > bbpress > templates > default > bbpress > loop-single-topic.phpに下記の通り(//<=ココに挿入という部分)挿入してみたのですが、結果に反映されないので困っ。ACFにて該当のフィールドは作成済みで、フィールド名にスペルミスなどもないことを確認しております。お知恵を拝借できれば幸いです。
1
+ Advanced Custom Fieldsというpluginをインストールし、bbpressにてカスタムフィールドを表示させたいため、
2
+
3
+ plugins > bbpress > templates > default > bbpress > loop-single-topic.phpに下記の通り(//<=ココに挿入という部分) <?php echo get_field( 'band_name' ); ?>というコードをいろんな場所に挿入してみたのですが、結果に反映されないか、重大なエラーが発生しましたとし表示されせん。ACFにて該当のフィールドは作成済みで、(「投稿タイプ」「等しく」「トピック」)として設定しフィールド名にスペルミスなどもないことを確認しております。お知恵を拝借できれば幸いです。
4
4
 
5
5
 
6
6