Php 根据自定义字段位置订购邮政

Php 根据自定义字段位置订购邮政,php,mysql,wordpress,Php,Mysql,Wordpress,我想根据Wordpress中的自定义字段列出帖子列表 这里我有9篇文章,有3个不同的元值(中间、左上、左下),元键是“位置” 这是一张桌子 Wp_员额: Post ID title Description 1 Post1 ----- 2 Post2 ----- 3 Post3 ----- 4 Post4 --- 5 Post5 ---- 6

我想根据Wordpress中的自定义字段列出帖子列表

这里我有9篇文章,有3个不同的元值(中间、左上、左下),元键是“位置”

这是一张桌子

Wp_员额:

Post ID title Description 1 Post1 ----- 2 Post2 ----- 3 Post3 ----- 4 Post4 --- 5 Post5 ---- 6 Post6 -- 7 Post7 ---- 8 Post8 --- 9 Post9 ---- 10 Post10 --- 职位ID标题说明 1个职位1----- 2后2----- 3后3----- 4后4--- 5后5---- 6后6-- 7后7---- 8后8--- 9后9---- 10后10--- 这是wp_PosteTa表:

meta_id post_id Meta_key meta_value 1 1 position left Top 2 2 position Left Bottom 3 3 position Left Top 4 4 position Left Bottom 5 5 position Middle 6 6 position Left Bottom 7 7 position Left Top 8 8 position Left Bottom 9 9 position Left top 10 10 position Middle meta_id post_id meta_key meta_值 1 1位置左上方 2位置左下角 3位置左上 4位置左下 5中间位置 6位置左下 7位置左上 8位置左下 9位置左上 10中间位置 现在我想根据位置的排序得到一个列表(中间、左下、左上)

像这个

post_id title meta_value met_key 5 Post5 Middle postion 2 Post2 Left Bottom postion 1 Post1 Left Top postion 10 Post10 Middle postion 4 Post4 Left Bottom postion 3 Post3 Left Top postion 6 Post6 Left Bottom postion 7 Post7 Left Top postion 8 Post8 Left Bottom postion 9 Post9 Left Top postion post_id title meta_value met_key 5个职位5个中间职位 2立柱2左下立柱 1个立柱1个左上立柱 10个职位10个中间职位 4柱4左下位置 3柱3左顶位置 6柱6左下位置 7柱7左顶位置 8柱8左下位置 9柱9左顶位置 我不擅长sql查询。

这应该可以做到:

按字段排序(meta_值、'Middle'、'Left Bottom'、'Left Top')

有关“按字段排序”功能的详细信息:

基于


这和你昨天问的不一样吗?上一天,还不清楚,所以解决方案不起作用changes@splash58,您能帮我解决这个问题吗?我尝试了,但我的查询无法连接这两个表。我使用了这种方式,但它无法工作,请检查这里
SELECT post_id, title, meta_value, Meta_key
FROM (
   SELECT post_id, meta_value, Meta_key,
          @grp := IF(@pos = meta_value, @grp + 1,
                     IF(@pos := meta_value, 1, 1)) AS grp
   FROM wp_postmeta
   CROSS JOIN (SELECT @grp := 0, @pos := '') AS vars
   WHERE Meta_key = "position"
   ORDER BY meta_value) AS t
LEFT JOIN Wp_posts 
   ON t.post_id =  Wp_posts.PostID
ORDER BY grp, FIELD(meta_value, 'Middle', 'Left Bottom', 'left Top')