是否可以在多个WordPress站点之间同步导航菜单?

时间:2014-06-27 作者:joaogdesigner

一位客户问我是否可以将一个WP安装的菜单放入另一个WP中,而这些是独立的安装,每个安装都针对其域。重点是:我在WP(使用Woocommerce)中开发了一个网站,几个月后我们开发了一个博客,有另一种布局结构,但保留了品牌的视觉ID。现在,她想把她的主网站的主菜单放到博客中,菜单上的所有选项都需要是动态的,因此,如果她决定在菜单中添加另一个类别,它也应该自动显示在博客上。

是否可以这样做,例如将一个WP安装与另一个WP安装集成?基本上,我需要把一个菜单从一个WP安装到另一个,每个都在一个单独的域上。有人能帮我解决这个大问题吗??

谢谢你!

2 个回复
SO网友:Adam

这实际上是很有可能的,但是,您需要做一些特定的事情才能使其正常工作。

首先,在您的wordpress安装上创建一个当前具有该菜单的文件,对于演示,我们称之为myoutsidermenu.php, 在一个名为theme_name. 完成后,编辑php代码,使其echoes 使用wordpress引擎将菜单项导入该文件。我想您可以为菜单本身添加CSS样式,但这并不是完全必要的。请记住,此文件应仅包含菜单,而不包含其他wordpress元素,否则它们将包含在接收端,这可能会给您带来问题。

完成后,在接收端显示菜单的位置,放置以下内容code:

<?php 
$doc = new DOMDocument();
$doc->loadHTMLFile(\'http://example.com/wp-content/themes/theme_name/myoutsidermenu.php\');
echo $doc->saveHTML();
?>
其中URL对应于响应菜单项的文件的URL。现在,请记住确保在接收端的某个位置包含CSS样式,以使其显示您想要的显示方式。

我不确定这里有什么最佳实践,但它应该能完成工作。

SO网友:Preston Reyes

<?php 
  error_reporting(0);
  $doc = new DOMDocument();
   $doc->loadHTMLFile(\'http://example.com/wp-content/themes/theme_name/myoutsidermenu.php\');
  echo $doc->saveHTML();
 ?>
注意,我添加了删除错误报告的功能,因为上述方法在跨域拉取数据时会输出警告。

结束

相关推荐

Admin Theme customization

我遵循wordpress codex网站上关于通过插件创建管理主题的说明。我激活了插件,但我的样式表没有包含在<head>.. 这是我的代码:add_action( \'admin_init\', \'kd_plugin_admin_init\' ); add_action( \'admin_menu\', \'kd_plugin_admin_menu\' ); function kd_plugin_admin_init() { /* Register