回答編集履歴
1
重複チェックを追加
test
CHANGED
@@ -2,8 +2,19 @@
|
|
2
2
|
|
3
3
|
```PHP
|
4
4
|
function my_bbp_new_topic_pre_insert($topic_data) {
|
5
|
-
$topic_data['post_name'] = '
|
5
|
+
$topic_data['post_name'] = my_make_post_name($topic_data['post_type']);
|
6
6
|
return $topic_data;
|
7
7
|
}
|
8
8
|
add_filter('bbp_new_topic_pre_insert', 'my_bbp_new_topic_pre_insert');
|
9
|
+
|
10
|
+
function my_make_post_name($post_type) {
|
11
|
+
$name = $post_type.'-'.uniqid();
|
12
|
+
global $wpdb;
|
13
|
+
$c = $wpdb->get_var("SELECT count(*) FROM $wpdb->posts WHERE post_name = '$name'");
|
14
|
+
if ($c == 0) {
|
15
|
+
return $name;
|
16
|
+
} else {
|
17
|
+
my_make_post_name($post_type);
|
18
|
+
}
|
19
|
+
}
|
9
20
|
```
|