forked from LiveCarta/LiveCartaWP
LAW-1825 LawCarta menu integration
This commit is contained in:
File diff suppressed because one or more lines are too long
@@ -2,6 +2,31 @@
|
||||
|
||||
require_once 'inc/walker-nav-menu.php';
|
||||
|
||||
$urlParts = parse_url(home_url());
|
||||
$scheme = isset($urlParts['scheme']) ? $urlParts['scheme'] . '://' : '';
|
||||
|
||||
$host = isset($urlParts['host']) ? $urlParts['host'] : '';
|
||||
if (defined('LAWCARTA_SUBDOMAIN')) {
|
||||
$hostParts = explode('.', $host);
|
||||
if (count($hostParts) === 3) {
|
||||
array_shift($hostParts);
|
||||
}
|
||||
if (!empty(LAWCARTA_SUBDOMAIN)) {
|
||||
array_unshift($hostParts, LAWCARTA_SUBDOMAIN);
|
||||
}
|
||||
$host = implode('.', $hostParts);
|
||||
}
|
||||
|
||||
$port = isset($urlParts['port']) ? $urlParts['port'] : '';
|
||||
if (defined('LAWCARTA_PORT')) {
|
||||
$port = LAWCARTA_PORT;
|
||||
}
|
||||
if (!empty($port)) {
|
||||
$port = ':' . $port;
|
||||
}
|
||||
|
||||
$lawCartaUrl = "$scheme$host$port";
|
||||
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html <?php language_attributes(); ?>>
|
||||
@@ -25,7 +50,7 @@ require_once 'inc/walker-nav-menu.php';
|
||||
<div class="wrapper">
|
||||
|
||||
<header>
|
||||
<div class="cont">
|
||||
<div id="header-menu" class="cont">
|
||||
<a href="<?= site_url(); ?>" class="main-logo"><img src="<?= get_theme_file_uri('/assets/img/logo.png'); ?>"></a>
|
||||
|
||||
<?php
|
||||
@@ -43,6 +68,17 @@ require_once 'inc/walker-nav-menu.php';
|
||||
}
|
||||
?>
|
||||
</div>
|
||||
<iframe src="<?= $lawCartaUrl ?>/menu" style="display: none;"></iframe>
|
||||
<script type="application/javascript">
|
||||
var eventMethod = window.addEventListener ? "addEventListener" : "attachEvent";
|
||||
var eventer = window[eventMethod];
|
||||
var messageEvent = eventMethod === "attachEvent" ? "onmessage" : "message";
|
||||
eventer(messageEvent, function (ev) {
|
||||
if (ev.origin.indexOf('<?= $lawCartaUrl ?>') !== -1) {
|
||||
document.getElementById('header-menu').insertAdjacentHTML('beforeend', ev.data);
|
||||
}
|
||||
});
|
||||
</script>
|
||||
</header>
|
||||
|
||||
<div class="content">
|
||||
|
||||
Reference in New Issue
Block a user