私はシルバーストライプサブドメインの問題に取り組んでいます。他の誰かがコードを作成したので、助けていただければ幸いです。
メインのウェブサイト(www.mainwebsite.comなど)には「AboutUs」ナビゲーションバーがあり、subdomain.mainwebsite.comなどのサブドメインでは「AboutUs」を非表示にします。
Silverstripeバックエンドからわかるように、「サブドメインに非表示」機能があり、チェックマークを付けました。ただし、「About Us」リンクはしばらくの間消え、メインサイトとサブドメインの両方で他のテーマに戻ります。
誰かが私を正しい方向に向けることができますか?どうすればこの問題を解決できますか?必要に応じて、ここに任意のコードをコピーできます。助けてください。
ヒープに感謝します、S :)
コメントを追加してください、私は私のサイトの私のpage.phpでこのコードを見つけました-それが有用であるならばコードフォルダ
function ShowMenuInSubdomain()
{
$host = explode('.',$_SERVER['HTTP_HOST']);
$subdomain = $host[0];
if($subdomain != 'www' && $this->HideInSubdomains) {
return true;
}
}
コメントを追加します。これがテーマのPage.ssのナビゲーション部分です-私が使用しているテンプレートフォルダ
<div id="Header">
<div id="HeaderWrapper">
<div id="LogoWrapper"><a href="{$BaseHref}">$GetSubDomainHeaderImage</a></div>
<div id="Navigation">
<% cached 'Navigation', Aggregate(Page).Max(LastEdited) %>
<% include Navigation %>
<% end_cached %>
</div>
</div>
</div>
コメントを追加します。テンプレート内のnavigation.ssは次のようになります-includesフォルダーは次のようになります
<ul>
<% control Menu(1) %>
<% if ShowMenuInSubdomain %>
<% else %>
<li <% if Children %>class="hasChildren"<% end_if %>>
<a href="$Link" title="$Title.XML" class="$LinkingMode">$MenuTitle.XML <% if ShowMenuInSubdomain %>0<% end_if %></a>
<% if Children %>
<ul>
<% control Children %>
<li <% if Children %>class="hasChildren"<% end_if %>>
<a href="$Link" title="$Title.XML" class="$LinkingMode">$MenuTitle.XML</a>
<% if Children %>
<ul>
<% control Children %>
<ul class="thridUL{$Pos}">
<% if DisableLink %>
<li>
<span class="$LinkingMode thirdLevelTitle lookLikeALink">$MenuTitle.XML</span>
</li>
<% else_if ShowLabelInMenu==0 %>
<li>
<a href="$Link" title="$Title.XML" class="$LinkingMode thirdLevelTitle">$MenuTitle.XML</a>
</li>
<% end_if %>
<% if Children %>
<% control Children %>
<li>
<a href="$Link" title="$Title.XML" class="$LinkingMode">$MenuTitle.XML</a>
<% if Summary %>
<span class="menuSummary">
$Summary
<span class="menuSummaryThumb">$Thumbnail.PaddedImage(160, 160)</span>
</span>
<% end_if %>
</li>
<% end_control %>
<% end_if %>
</ul>
<div class="clear"> </div>
<% end_control %>
</ul>
<% end_if %>
</li>
<% end_control %>
</ul>
<% end_if %>
</li>
<% end_if %>
<% end_control %>
<li id="calculatorWrapper">
<a id="Calculator" href="$distanceCalculator.Link" rel="shadowbox;height=800;width=1000"><span>Journey Planner</span></a>
</li> </ul>
申し訳ありませんが、少し長いですが、助けていただければ幸いです。ありがとう。
みなさん、こんにちは。page.ssの<%cached'Navigation'、Aggregate(Page).Max(LastEdited)%> <%end_cached%>を削除すると、動作しているようです。この行の目的や意味を教えていただけますか?ありがとう。