用 PHP 编写 Head 部分
Posted
技术标签:
【中文标题】用 PHP 编写 Head 部分【英文标题】:Writing Head section with PHP 【发布时间】:2014-11-19 06:53:55 【问题描述】:我正在为动态元素将几个站点从 html 转换为 php,并且已经能够使用页眉和页脚(使用 php include())来实现。但是,我对如何做头部感到困惑。这就是我使用纯 HTML 所拥有的:
<head>
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js">
</script>
<![endif]-->
<meta charset="UTF-8" />
<meta name="description" content="Liberty Resource Directory. The ultimate curated directory to find what you need."/>
<meta name="keywords" content="ethan glover, lrd, liberty resource directory"/>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<link href="stylesheets/lrdstylesheet.css" rel="stylesheet" media="screen">
<title>Liberty Resource Directory</title>
</head>
我可以轻松添加 HTML5Shim 脚本、元字符集、视口(是的,我将删除最大比例)和样式表链接。
问题出在这里:
如何编写 .php 文件,以便将单个页面描述、关键字和标题传递给它? (这样我可以把上面的整个代码放在一个 php 文件中,然后在每个页面上都包含它。)
还是我只需要排除描述、关键字和标题,然后每次都重写这些部分?
答案如下:(由 Alejandro Arbiza 提供)
head.php
<head>
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js">
</script>
<![endif]-->
<meta charset="UTF-8" />
<meta name="description" content="<?php echo $description;?>"/>
<meta name="keywords" content="<?php echo $keywords;?>"/>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="../stylesheets/lrdstylesheet.css" rel="stylesheet" media="screen">
<title><?php echo $title;?></title>
</head>
index.html(包括上面的代码)
<?php
$description="Liberty Resource Directory. The ultimate curated directory to find what you need.";
$keywords="ethan glover, lrd, liberty resource directory";
$title="Liberty Resource Directory";
include 'scripts/head.php';
?>
最终结果:
http://libertyresourcedirectory.com/
【问题讨论】:
您可以在<head><?php include 'file.php'; ?></head>
中使用include - 至于单个页面描述等,将需要更多编码,恐怕。改用框架;会更容易。
发布您的 php 代码。你在使用任何框架或简单的 php 吗?
【参考方案1】:
您可以将变量用于描述和关键字(或您想要的任何其他内容)。然后,当需要构建页面时,您只需将变量设置为相应的值。
<head>
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js">
</script>
<![endif]-->
<meta charset="UTF-8" />
<meta name="description" content="<?php echo $description; ?>"/>
<meta name="keywords" content="<?php echo $keywords; ?>"/>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<link href="stylesheets/lrdstylesheet.css" rel="stylesheet" media="screen">
<title>Liberty Resource Directory</title>
</head>
所以,假设你有 page1.php 和 page2.php:
<?php
// page1.php
$description = "This is page one";
$keywords = "page one";
include 'header.php';
?>
<!-- Page content -->
<?php include 'footer.php'; ?>
和
<?php
// page2.php
$description = "This is page two";
$keywords = "page two";
include 'header.php';
?>
<!-- Page content -->
<?php include 'footer.php'; ?>
当然,我在这里假设整个 HTML 标头都在 header.php
文件中,即包括 <html>
、<head>
和 <body>
。
【讨论】:
太棒了!当然,您也可以在页面内容中使用 PHP,就像在 标记中一样。以上是关于用 PHP 编写 Head 部分的主要内容,如果未能解决你的问题,请参考以下文章