谢谢佩德罗!我没有经常与Curl合作过,结果是最简单的解决方案。
这就是我所做的。
创建一个getnav.php文件,包括以下内容:
$root = realpath($_SERVER["DOCUMENT_ROOT"]);
define('WP_USE_THEMES', false);
require_once($root . "/path/to/siteA/wp-load.php");
//RENDER PRIMARY NAV
$defaults = array(
'theme_location' => '',
'menu' => 'Primary Menu',
'container' => 'div',
'container_class' => 'menu-container',
'container_id' => '',
'menu_class' => 'menu',
'menu_id' => '',
'echo' => true,
'fallback_cb' => 'wp_page_menu',
'before' => '',
'after' => '',
'link_before' => '',
'link_after' => '',
'items_wrap' => '<ul id=%1$s class=%2$s>%3$s</ul>',
'depth' => 0,
'show_home' => 0,
'walker' => '');
wp_nav_menu($defaults);
然后在 “站点B” header.php文件我做出卷曲电话:
$ch = curl_init("path/to/getnav.php");
curl_setopt($ch,CURLOPT_HEADER,0);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
$nav = curl_exec($ch);
curl_close($ch);
echo $nav;
网站导航现在呈现在网站B的标题中。完善!
要使其成为动态,您需要连接到站点A的数据库并加载所需的页面。建立与网站A所在数据库的连接,并且由于您使用的是相同的主题,所以相同的功能可能会起作用。 – anuragbh
连接到数据库,含义是将wp-config文件更改为指向站点A?但是,所有内容(帖子)也会被继承。或者你的意思是在wordpress之外创建一个连接并查询导航项目? – Preston
更好的方法是curl() –