douxia2137 2017-10-13 08:26
浏览 43

如何按用户选择的值过滤帖子?

Hello I'm working on a blog where I want to filter my posts by the values in wp_usermeta data table.

When a user registering to my site, I want the user to select his/her favorite car manufacturer. Then I save that value in the wp_usermeta table.

EX: if a user selects Toyota, I save that record in wp_usermeta table as follows

user_id(column name)=2

meta_key(column name)=brand

meta_value(column name)=Toyota

All my meta_values are post categories, in above case "Toyota" is a post category.

Now I need to filter my blog posts according to that user selected meta_value in the wp_usermeta table.

But I'm struggling to make a connection between postmeta and usermeta tables.

What would be the best way to do it or are there have any better way to full fill my task?

thanks.

  • 写回答

1条回答 默认 最新

  • douhang1913 2017-10-13 08:33
    关注

    You could use pre_get_posts to manipulate the main query on the archive pages (or where ever you want to, really).

    I don't believe there is a way to do that in a single query, so I'd just get the favorite values from usermeta an put them into the meta_query.

    There are good examples in the docs for WP_Query that you can adapt to your needs. Start with something like

    'meta_query' => array(
        array(
                'key'     => 'brand',
                'value'   => 'Toyota',
                'compare' => '=',
        ),
    ),
    

    In your query.

    评论

报告相同问题?

悬赏问题

  • ¥15 unity第一人称射击小游戏,有demo,在原脚本的基础上进行修改以达到要求
  • ¥15 蓝桥oj3931,请问我错在哪里
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
  • ¥500 火焰左右视图、视差(基于双目相机)
  • ¥100 set_link_state