如何使用 PHP 有条件地加载代码块?

发布于 2024-10-12 00:24:48 字数 340 浏览 11 评论 0原文

我安装了一个 WordPress,它为两个域名提供支持。简而言之,站点 A 有四个静态页面,站点 B 有四个静态页面,但它们都共享一个公共博客文章页面。

站点 A 的顶部应有一个导航栏,指向站点 A 的其他页面,站点 B 的顶部应有一个导航栏,指向站点 B 的其他页面。

由于它们(必然)共享一个共同的 WordPress 主题,因此在 header.php 文件中,我想为站点 A 的代码块添加 PHP if 语句导航,另一个用于站点 B 导航。但我不确定实际检查什么条件。有什么方法可以让 PHP 将某些页面标识为属于站点 A,而其他页面则标识为属于站点 B?

I have a single installation of Wordpress that is powering two domain names. To put it very simply, Site A has four static pages, and Site B has four static pages, but they both share a common blog-posts page.

Site A should have a navbar at the top that points to the other Site A pages and Site B should have a navbar that points to the other Site B pages.

Since they (necessarily) share a common WordPress theme, in the header.php file I would like to put a PHP if statement for a block of code that is the Site A nav and another for the Site B nav. But I'm not sure what condition to actually check for. Is there some way I can cause some pages to identify themselves to PHP as belonging to Site A, and others to Site B?

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

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

发布评论

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

评论(3

人事已非 2024-10-19 00:24:48

您可以在标头调用之前在两个站点中设置变量,然后使用 if 语句来显示正确的导航。

站点 A

<?
$site = 'A';
require('header.php');
?>

header.php

<?
if($site == 'A') {
  //Site A nav
} else {
  //Site B nav
}
?>

但是,如果您的两个站点具有不同的域名,您可以查看 $_SERVER 全局并关闭它直接在您的 header.php 中。

You could set variables in both sites before the header call, then use an if statement to show the right navigation.

Site A

<?
$site = 'A';
require('header.php');
?>

header.php

<?
if($site == 'A') {
  //Site A nav
} else {
  //Site B nav
}
?>

However, if your two sites have different domain names, you could look at the $_SERVER global and key off of that directly in your header.php instead.

柳絮泡泡 2024-10-19 00:24:48

如果这两个网站具有不同的域名,您可以通过执行以下操作进行验证:

if($_SERVER['HTTP_HOST']=="sitea.com"){
   //code for site a
} else {
   //code for site b
}

If this two websites have different domain name you can validate by doing:

if($_SERVER['HTTP_HOST']=="sitea.com"){
   //code for site a
} else {
   //code for site b
}
请爱~陌生人 2024-10-19 00:24:48
if ($_SERVER['SERVER_NAME']=="www.whatever.com") {
//show site a header
} 
if ($_SERVER['SERVER_NAME']=="www.whatever.com") {
//show site a header
} 
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文