在Wordpress中添加自定义表格名称(如默认表格名称)

时间:2018-11-15 07:45:22

标签: php wordpress

在我的WordPress项目中,我有一个名为products的表,该表用于选择到目前为止我在product表中使用的所有行

$table_name = $wpdb->prefix . "products";
$output = $wpdb->get_results( "SELECT * FROM $table_name");

所以现在我的问题是不要写带前缀的表名,我该怎么使用,wpdb->posts中的帖子将引用WordPress表中名为posts的表

3 个答案:

答案 0 :(得分:2)

尝试一下:

$table_name = "products";
$output = $wpdb->get_results( "SELECT * FROM $table_name");

答案 1 :(得分:0)

通过使用前缀提供的实际属性替换wp_字符串,可以轻松解决此问题。

例如,假设表前缀为wp_

  • $wpdb->posts将对应于wp_posts

  • $wpdb->postmeta将对应于wp_postmeta

  • $wpdb->users将对应于wp_users

有关更多信息,请访问此链接。 Reference URL link

注意::如果创建不带前缀的自定义表,则无需使用$wpdb类。它仅用于获取WordPress数据库默认前缀或用于wp_query和其他查询。

如果您要在一个数据库中运行多个WordPress,请提供前缀,否则可以跳过它。

答案 2 :(得分:0)

您可以使用此代码,

public:
    std::vector<Ball> m_balls; //list of ball in the current game, in case ball split in 3 energy ball
    std::vector<Vault> m_vaults; //list of vaults , in case we are in cooperative mode
    std::vector<Wall> m_walls; // lists of walls
    int test; //Stack smashing wtf
    Sdl_o_surface m_bg; // image containing sprites
    Sdl_o_window m_window; //window containing one or more games (for the moment 1 or 2)
    int score = 0;
    int m_current_level = 1;
    int m_x1; // borders of the game
    int m_x2;
    int m_y1;
    int m_y2;

    //constructor
    Game(int x1, int x2 , int y1, int y2, int mode, Sdl_o_surface s,  Sdl_o_window w);

    //methods
    void initSolo();
    void initCoop();
    void refreshWindowAndObjects();
    void startGame();
    void updatePosition();
    void wallsCollision(Ball &ball);
    void borderCollision(Ball &ball);
    void vaultCollision(Ball &ball);
    Sdl_o_rectangle getTexturePosition(); //get texture position depending on current level
    Sdl_o_rectangle getBorders();
    void parseLevelText();
    void updateVaultsPosition(int x, int y);

    //wall section
    void chooseWallType(char type);
    void placeWall(char t);