数字化技能提升教程,数字化时代生存宝典

数字化百科 / 产品文档 / WordPress:UnMuify the plugin shared tables

WordPress:UnMuify the plugin shared tables

查看全部产品文档命名空间:WordPress

In WPMU the runtime muifys the wpdb->prefix, changing it from the default wp_ prefix to wp_x_ where x = 1...n; as this is usually needed to convert plugins that know about a single blog to one that can deal with many.

This normally works fine, but causes issues where a plugin actually wants a global table, not a per blog one.

If you need a plugin to use a global table, then you could either modify the plugin's code to use $wpmuBaseTablePrefix (which is the base table prefix, probably wp_) or you can possibly add lines similar to these at the start and end of the plugin files rather than editing all the code inline:


$normal_table_prefix = $table_prefix; // grab for later
$table_prefix = $wpmuBaseTablePrefix; // setting to global base
$wpdb->prefix = $wpmuBaseTablePrefix; // setting to glboal base

// ... all the plugin code here

$table_prefix = $normal_table_prefix; // back to what it was
$wpdb->prefix = $normal_table_prefix; // back to what it was
unset($normal_table_prefix); // and we're done with this now
?>