WP DEVELOP

EP006. “初次接触 PHP(experiment.php 实验)”

首页 WordPress 开发课程 开发环境设置 · EP006
约 7 分钟· #EP006#开发环境设置
🔒 登录后可标记已读

第一次动手写 PHP,跟 WordPress 本身完全没关系(原文明确说这个实验文件不属于 WordPress 核心的一部分),纯粹是借 WordPress 网站根目录当练习场。讲师用 VS Code 建了一个独立的 experiment.php 文件,边写边讲 PHP 最基本的四件事:怎么进入/退出 PHP 模式、echo 怎么把内容 输出到页面、$变量 怎么声明和复用、PHP 是服务器端语言(浏览器只看得到运行结果,看不到源码)

📌 注意:这一讲操作的不是任何主题的 index.php,也不是后面要建的 fictional-university 主题, 而是在 Local by Flywheel 项目的网站根目录(app/public/,跟 wp-config.php 同级)新建的一个 临时练习文件,跟主题、插件都无关,讲座最后建议直接删除它。

涉及文件

  • experiment.php (新建,网站根目录 app/public/experiment.php,纯练习用,非主题/插件文件,
    讲师建议学完这一讲后删除,留着也不影响什么)

本讲没有对应的 -end 代码资料夹可以核对(这一讲的产出就是一个从零手打的练习文件, 不是主题/插件里会保留下来的正式代码),以下代码块直接来自 transcript 里讲师逐步演示的内容。

代码实现

第一步:先写一段纯 HTML,确认这是在编辑普通网页内容:

<h1>This page is all about Brad</h1>
<h2>All about Brad</h2>

第二步:在最上面新增一对 PHP 标签,进入/退出 PHP 模式(这两个 tag 之间才是 PHP 代码, 标签外面还是普通 HTML):

<?php ?>
<h1>This page is all about Brad</h1>
<h2>All about Brad</h2>

第三步:在 PHP 模式里用 echo 输出一个算式的结果,验证 PHP 是「有脑子」的(HTML 做不到运算)

<?php echo 2 + 2; ?>
<h1>This page is all about Brad</h1>
<h2>All about Brad</h2>

刷新页面会在标题上方看到 4;查看网页源代码(View Page Source)只会看到 4,看不到 2 + 2因为 PHP 是服务器端语言,运算是在服务器上算完的,浏览器只拿到结果

第四步:证明可以在同一个文件里反复进出 PHP 模式,在两个标题之间也加一段 echo

<?php echo 2 + 2; ?>
<h1>This page is all about Brad</h1>
<?php echo 5 * 5; ?>
<h2>All about Brad</h2>

第五步:用变量 $my_name 存一次值,两处「Brad」都改成输出这个变量,之后只要改一个地方, 两处就会同时更新(这就是变量避免重复硬编码的意义):

<?php
echo 2 + 2;
$my_name = 'Brad';
?>
<h1>This page is all about <?php echo $my_name; ?></h1>
<?php echo 5 * 5; ?>
<h2>All about <?php echo $my_name; ?></h2>

$my_name = 'Brad'; 改成 $my_name = 'John Doe'; 再刷新,两个标题里的名字会一起变。

Hook / Function 速查

名称类型用途
<?php ... ?>PHP 语法进入 / 退出 PHP 模式,标签之间的内容才会被当成 PHP 执行
echoPHP 语法在 PHP 模式下把内容输出到页面上
$变量名PHP 语法声明变量,$ 后面接自己取的变量名,用来存值方便之后复用
;PHP 语法结束一条 PHP 语句,告诉 PHP「这一步做完了,准备下一步」

常见坑

  • 不能用文字处理软件(word processor)新建或编辑 PHP 文件,必须用专门的文本编辑器(讲师推荐
    VS Code),原因之一是后面课程要用到内建命令行,VS Code 的命令行会自动指向当前项目目录。
  • experiment.php 只是练习文件,正式网站的页面/网址不是这样手动丢文件到根目录做出来的
    原文特别强调「这不是在真实网站上加页面的正确做法,只是为了教学」。

延伸 / 后续讲座会用到

原文提到下一讲就会开始用这一讲学到的 PHP 基础(进出 PHP 模式、echo$变量)来创建 全新的自定义 WordPress 主题(也就是 fictional-university 主题的起点)。

Sources

Udemy:

  • Become a WordPress Developer: Unlocking Power With Code — Section 2, EP006