动态更改 WordPress DB 或 Table_Prefix

发布于 2024-10-18 09:38:18 字数 606 浏览 2 评论 0原文

我目前正在运行一个安装了两个 wordpess 的网站。

我的第一个安装是在根域 www.mysite.com 上运行 - 我将将此 Wordpress 安装称为我的“核心安装”

我的第二个安装是在子目录 www.mysite.com/mysubdir 上运行 - 我将参考将此 WordPress 安装作为我的“子安装”

我想要完成的是在子安装上显示我的核心安装中的 WordPress 菜单。

我的两个 WordPress 安装都运行在同一个数据库上,但具有不同的表前缀。

我希望在子安装上从核心安装运行 WordPress 菜单的原因是,我只需更新一处菜单,所做的更改就会反映在两个安装上。

我已尝试按以下方式进行此编码,但没有成功:

$table_prefix = 'wp_'; wp_nav_menu( array('菜单' => '标题菜单' )); $table_prefix = 'dir_';

我背后的理论是将系统使用的 table_prefix 更改为“核心安装”前缀,输出菜单,然后将其切换回“子安装”

我希望这是有道理的......我真的被困在这个问题上非常感谢您的帮助。

谢谢洛伦

I am currently running a website with TWO wordpess installs.

My first install is running off the root domain, www.mysite.com - I will refer to this Wordpress install as my "Core Installation"

My second install is running off a sub directory, www.mysite.com/mysubdir - I will refer to this Wordpress install as my "Sub Installation"

What i'm trying to accomplish is showing my Wordpress menu from my Core Installation on my Sub Installation.

I have both wordpress installs running off the same database, with different table prefixes.

The reason i'm hoping to run my Wordpress Menu from my Core Installation on my Sub Installation is so that I only have to update the Menu in one spot and the changes will be reflected on both installations.

I have attempted this coding in the following manner with no success:

$table_prefix = 'wp_';
wp_nav_menu( array('menu' => 'Header Menu' ));
$table_prefix = 'dir_';

My theory behind this was to change the table_prefix that the system uses to the "Core Installation" prefix, output the menu, then switch it back to "Sub Installation"

I hope this makes sense.... I'm really stuck on this one and would appreciate the help VERY much.

Thanks

Loren

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

分開簡單 2024-10-25 09:38:18

我从来没有像您尝试那样使用它,但是 $table_prefix 被设置为 wp-db 实例的属性,并且要更改它,您可以调用:

$wpdb->set_prefix( $table_prefix, $set_table_names = false );

但是,正如我所说,我还没有没有针对您的目的对其进行测试。

I have never use this as you are trying to do, but the $table_prefix is set as a property of a wp-db instance, and to change it you call:

$wpdb->set_prefix( $table_prefix, $set_table_names = false );

But, as I said, I haven't tested it for your purposes.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文