【问题标题】:Change webpage content without re-using navigation bar on all the pages无需在所有页面上重复使用导航栏即可更改网页内容
【发布时间】:2022-01-24 17:13:01
【问题描述】:

我正在开发一个网站,我想在用户选择他们想要导航到的页面时更改页面内容。我想要完成的就像 ASP.NET 一样,您只有 1 个用于所有页面的导航组件,并且当用户选择不同的页面时页面的内容会发生变化。如果我使用 HTML/CSS 和 PHP 构建网站,我将如何做到这一点。我得到的任何信息都是如何从 PHP 动态更改页面内容。我想从我目录中的其他文件更改页面内容

【问题讨论】:

  • 使用include 在所有脚本中重复使用“标题”页面。有一个页脚可能也是个好主意
  • 到目前为止您尝试过什么?你被困在哪里了?任何基本的 PHP 教程都应该涵盖这一点

标签: php html css


【解决方案1】:

很简单,您将创建没有导航的普通页面,以及它们的普通链接,然后您将创建导航以将其添加为组件。

导航.php

<nav>
  <ul>
    ...
  </ul>
</nav>

index.php

<?php include_once "nav.php"; ?>

<p>index</p>

contacts.php

<?php include_once "contacts.php"; ?>

<p>contacts</p>

编辑

如果您包含的文件太多,并且您想要一个简短的包含,您可以通过包含您想要包含的所有文件然后在任何您想要的地方包含该文件来做到这一点,最好将它们添加到页面的单独文件夹中像组件或包含,像

包含/css_files.php

<link rel="stylesheet" href="...">
<link rel="stylesheet" href="...">
<link rel="stylesheet" href="...">
<link rel="stylesheet" href="...">
<link rel="stylesheet" href="...">
<link rel="stylesheet" href="...">

包含/metas.php

<meta bla="" bla="" bla=""\>
<meta bla="" bla="" bla=""\>
<meta bla="" bla="" bla=""\>
<meta bla="" bla="" bla=""\>

包含/seo.php

<meta keywords="StackOverflow, HTML">
<meta keywords="StackOverflow, HTML">
<meta keywords="StackOverflow, HTML">

对于includes.php 文件,你必须选择:

  1. 就是把include文件和pages放在同一个目录下,会是这样的

包括.php

<?php 
include "includes/seo.php";
include "includes/metas.php";
include "includes/css_files.php";
  1. 您可以将它与其他包含在同一目录中,但不要删除包含之前的includes/。 包括.php
include "includes/seo.php";
include "includes/metas.php";
include "includes/css_files.php";

然后页面会像

<head><?php include "includes.php"; ?></head>

<p>...</p>

因为包含在 PHP 中包含了代码 COPY&PASTE,所以你会像在页面中编写它一样对待它。例如,如果你没有在文件名前写includes/,index.php 会是这样的:

<head>
<?php 
  include "seo.php";
  include "metas.php";
  include "css_files.php";
?>
</head>

index lorem ipsum

它不会包含它,因此包含也不会只获取文件并将其按原样放置在文件中而不更改任何内容

【讨论】:

    【解决方案2】:

    您可以使用 PHP 包含函数来控制一个文件中的元素。将其写入 index.php 中您要放置标题的位置 &lt;?php include('path\header.php'); ?&gt; 并在header.php 中编写类似的代码

    <header>
      ...
    </header>
    

    您可以将 css、javascript、jquery 资源文件添加到 index.php

    包含代码的优点是当访问者查看您的页面源代码或开发人员工具的源代码时,它将显示为您的 header.php 文件而不是 php 包含行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-11-23
      • 1970-01-01
      • 1970-01-01
      • 2021-04-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多