좋아요, 그래서 저는 PHP에 관해서는 약간 초보자지만, 여기서는 제가 달성하기를 원합니다.기존 Wordpress Plugin에서 사용자 정의 SQL 실행
플러그인을 사용하여 게시물 (WP 등급)을 등급 지정 기능이있는 새 테마로 평가하는 Wordpress 사이트 테마를 변경하고 싶습니다. 새 테마는 등급을 메타 데이터로 저장하고, 필자는 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와 같아야합니다. 이는 PHP for Wordpress에서 $ post_id라고 생각하십시오.
시도한 내용과 그 오류에 대해 자세히 설명해주십시오. 나는 당신의 SQL을 형식화하고 과정에서 눈을 뜨지 않았다. :) 순간적으로 나는 여분이 있다고 의심한다. 그러나 나는 휴식을 취하고 꼭 다시 와야한다. LOL –