首先,我基本上知道零php,我通常做jsp,但我必须修改我们拥有的wordpress网站的页脚。
该网站目前在www.mysite.com/wordpress上托管,其中包含以下内容:
<?php readfile('http://www.mysite.com/css-imports.jsp'); ?>
因为我在开发时这样做,所以我不得不将其更改为:
<?php readfile('http://local.mysite.com/css-imports.jsp'); ?>
当我这样做时,wordpress url是local.mysite.com/wordpress。
我如何从php插入local.mysite.com或www.mysite.com,根据提供该页面的域名?
感谢。
答案 0 :(得分:1)
你需要一个基本的URL变量(我确定Wordpress会有一个,大多数框架都有)。 Have a look at this answer here.
在与您的服务器相关的域名中对域进行硬编码并不是一个好主意,因为只要您移动代码 - 就会破碎。所以要使用他们的例子,你会做这样的事情:
<?php readfile(get_bloginfo('wpurl') . '/css-imports.jsp'); ?>
可能需要一些玩游戏,看看Wordpress Dev Docs并找到适合你的东西,如果不是这样:
答案 1 :(得分:0)
您可以设置一个简单的配置文件,该文件在本地服务器和生产服务器之间会有所不同。您需要做的就是确保在将新代码推送到服务器时不包含本地副本。
serverconfig.php
的本地副本:
<?php
define('SITE_HOSTNAME','http://local.mysite.com/');
?>
serverconfig.php
的非现场副本:
<?php
define('SITE_HOSTNAME','http://www.mysite.com/');
?>
其他所有内容只需要包含配置文件并引用其中定义的常量。
<?php
require_once 'serverconfig.php';
... code ...
readfile(SITE_HOSTNAME. 'css-imports.jsp');
?>
注意:如果您只是阅读位于同一个网络服务器上的静态文件,则应该只引用本地文件readfile('/css-imports.jsp');
。
答案 2 :(得分:0)
我通常最终会修改我的主机文件。我在本地使用太多不同的客户系统(包括WordPress和Drupal),看起来我看到的每个系统都有模板/主题/插件,它们没有引用框架的基本url变量,或者使用硬编码的绝对路径,或者使用与我的服务器不相符的相对路径,或只是。
当您完成开发并需要将其加载到生产环境中时,只需注释掉hosts条目即可。
/etc/hosts
# map mysite.com to local host for dev reasons.
www.mysite.com 127.0.0.1
答案 3 :(得分:0)
我认为这会为我做尝试
$_SERVER[HTTP_HOST]