OK、私は PHP に関しては初心者ですが、達成したいことは次のとおりです。
WordPress サイトのテーマを、プラグインを使用して投稿を評価するもの (WP-Ratings) から、評価が組み込まれている新しいテーマに変更したいと考えています。新しいテーマは、評価をメタデータとして保存します。 wp_ratings テーブルから評価を取得し、それを必要なメタデータに変換するクエリを作成します。私がやりたいのは、このクエリを現在の評価プラグインに保存して、投稿が評価されるたびに、新しいテーマに移行するときに必要なメタデータを保存することです。私が言ったように、私は PHP の初心者ですが、SQL で自分自身を保持することができるので、Wordpress データベースに対して次のクエリを実行する方法を教えてください。
ありがとう!
SET @post_id = 1110;
SET SESSION group_concat_max_len = 1000000;
insert into wp_postmeta (post_id,meta_key,meta_value)
SELECT
rating_postid
,'like'
,CONCAT
('a:', COUNT(rating_id), ':{',
(SELECT CONCAT( GROUP_CONCAT(meta_data_vote SEPARATOR ''), '}')
FROM
(SELECT CONCAT
('i:',
@curRow := @curRow + 1,
';a:2:{s:7:"',
'user_id',
'";s:1:"0";s:2:"ip";s:16:"',
'-127-000-000-001',
'";}'
) AS meta_data_vote
FROM wp_ratings JOIN
(SELECT @curRow := -1 AS j) r
WHERE rating_postid = @post_id
and rating_rating > 0
)AS meta_data_votes
)
) AS new_ratings_meta_data
FROM wp_ratings l
WHERE rating_postid = @post_id
and rating_rating > 0
投稿 ID 変数は、評価対象の投稿 ID と同じにする必要があることに注意してください。これは、Wordpress の PHP では $post_id であると思います。