###実現したいこと
WordPressで以下wp_follow_tags
テーブルにINSERT
したいのですが、$wpdb
について以下エラーになります
解決策のアドバイス頂けませんでしょうか
###エラーメッセージ
PHP Parse error: syntax error, unexpected '$wpdb' (T_VARIABLE) in /wordpress/wp-content/themes/twentititi/lib/test-insert.php on line 102
該当のソースコード
ランダムに$count
件数INSERT
したいです。
php
1test_insert_follow_tags(1); 2function test_insert_follow_tags($count){ 3 global $wpdb; 4 for( $posted=0; $posted<$count; $posted++ ){ 5 $sql = " 6 INSERT INTO 7 wp_follow_tags ( `tags_ID`, `users_ID`, `created_at` ) 8 VALUES ( 9 ( 10 SELECT ID 11 FROM wp_tags 12 WHERE is_official = 1 13 ORDER BY RAND() 14 LIMIT 1 15 ), 16 ( 17 SELECT ID 18 FROM wp_users 19 ORDER BY RAND() 20 LIMIT 1 21 ), 22 CURRENT_TIMESTAMP(6) 23 );" 24 $wpdb->get_results( $sql ); 25 } 26}
###試したこと
$wpdb
を呼ぶ位置が問題なのかと思いループの中に入れても同じくエラーでした。
ループをなくしても同じくエラーでした。
get_results()
でなくquery()
を使っても同じくエラーでした。
SQL部分をphpMyAdminで実行すると無事INSERT
できました。
テーブルのCREATE
対象テーブルのCREATE
は以下です。
SQL
1 2SHOW CREATE TABLE `wp_follow_tags`; 3 4-- ↓実行結果 5 6CREATE TABLE `wp_follow_tags` ( 7 `users_ID` bigint(20) unsigned NOT NULL, 8 `tags_ID` bigint(20) unsigned NOT NULL, 9 `created_at` datetime(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6), 10 PRIMARY KEY (`users_ID`,`tags_ID`), 11 KEY `fk_wp_follow_tags_02` (`tags_ID`), 12 CONSTRAINT `fk_wp_follow_tags_01` FOREIGN KEY (`users_ID`) REFERENCES `wp_users` (`ID`), 13 CONSTRAINT `fk_wp_follow_tags_02` FOREIGN KEY (`tags_ID`) REFERENCES `wp_tags` (`ID`) 14) ENGINE=InnoDB DEFAULT CHARSET=utf8
###バージョン
WordPress 5.2.0
php 7.2
MariaDB 10.0
回答1件
あなたの回答
tips
プレビュー