itfan123itfan123
  • 首页
  • 大杂烩
  • 资源分享
    • 办公文档
    • 免费模板
    • 网站源码
    • 软件工具
    • 其他
  • 技术教程
    • bug记录
    • 后端技术
      • JAVA
      • PHP
      • GO
      • C#
      • PYTHON
      • NodeJS
      • Spring
      • 其他
    • Web前端
      • js教程
      • CSS教程
      • H5
      • Vue
      • Webpack
      • uni-app
      • React
      • HTML
    • 数据库
      • mysql
      • redis
      • MongoDB
    • 运维
      • linux运维
      • Apache
      • Nginx
      • Docker
      • 安全
      • windows运维
    • 开发工具
      • VSCode
      • git
      • 免费下载
    • AI人工智能
    • 区块链
    • WEB3.0
    • 专题
    • 头条
首页 技术教程后端技术PHP正文

WordPress中自定义PHP文件的两种方式

原创
小哥 3年前 (2022-11-02) 阅读数 168 #PHP
文章标签 PHP

方案1:制作页面模板

制作页面模板是最简单、最方便的解决方案,但其功能也有一定的局限性。要创建页面模板,请执行以下操作:

  1. 在当前启用的主题文件夹中(wp-content/themes/your_theme_name)创建一个 sample-template.php 的 PHP 文件;
  2. 将 page.php 复制刚刚创建的文件的内容;
  3. 添加自定义 PHP 代码;
  4. 在文件顶部添加注释:

下一个Enter WordPress 后台,创建新页面后即可找到。“Sample Template“这个模板已经用过了。这个方法比较简单。还有很多关于谷歌的信息,可以在百度,Inc.上线,所以这只是一个简短的解释。

方案2:呼叫 WordPress 的 API

这种方法具有高度的自由度,可以创建非WordPress格式的URL,非常有用。例如,我们必须将 example.com/some-custom-url-request 已转移到主题文件夹下 /custom/some-custom-url-request.php 要处理,你可以这样做。此方法使用 template redirect 钩子,template redirect 是 WordPress 在对所有参数设置进行预处理后决定调用主题模板时调用。

我们只需要进入主题即可。 function.php 在文件末尾添加:

function loadCustomTemplate($template) {
    global $wp_query;
    if(!file_exists($template))return;
    $wp_query->is_page = true;
    $wp_query->is_single = false;
    $wp_query->is_home = false;
    $wp_query->comments = false;
    // if we have a 404 status
    if ($wp_query->is_404) {
    // set status of 404 to false
        unset($wp_query->query["error"]);
        $wp_query->query_vars["error"]="";
        $wp_query->is_404=false;
    }
    // change the header to 200 OK
    header("HTTP/1.1 200 OK");
    //load our template
    include($template);
    exit;
}

function templateRedirect() {
    $basename = basename($_SERVER[REQUEST_URI], ? . $_SERVER[QUERY_STRING]);
    loadCustomTemplate(TEMPLATEPATH./custom/."/$basename.php");
}

add_action(template_redirect, templateRedirect);

这是实现的 WordPress 查找 /custom 在文件夹下 php 文件,并将匹配 URL 该请求被转发到相应的 php 文件来处理效果,同时,这。 php 该文件还维护了 WordPress API 来电,因此给我们留下了很大的空间。

例如,如果我们在 /custom 在文件夹下创建一个。 hello.php 这些文件如下:


My custom page

然后只需输入 example.com/hello 就能显示 Hello World并以此为主题和框架。 CSS 款式,非常方便易用。

版权声明

所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除

上一篇:基于CAS构建通用的单点登录解决策略(二):CAS消费者端搭建及单点下载测试 下一篇:laraveleasywechat验证有没有关注并发送文本消息
相关文章
  • PHP怎么生成word文档

    写在前边的话 使用phpword生成文档有两种方式 直接使用代码编写word文档,用代码生成word,但是设置样式,格...

    原创 2年前 (2023-10-09) 512阅读 #PHP
    PHP怎么生成word文档
  • PHP将任意维数数组转为一维数组

    先设定一个数组: $arr = [ a =˃ [ b =˃ [c, d], e...

    原创 2年前 (2023-05-17) 459阅读 #PHP
    PHP将任意维数数组转为一维数组
  • PHPin_array()的坑

    PHP开发中,函数 in_array() 算是使用比较多的。 最近发现一个坑,上代码: return in_array(...

    原创 2年前 (2023-05-17) 2阅读 #PHP
    PHPin_array()的坑
  • PHPhash_equals()函数

    了解下hash_equals的概念: bool hash_equals ( string $known_string ,...

    原创 2年前 (2023-05-17) 2阅读 #PHP
    PHPhash_equals()函数
  • PHP导出csv文件

    在PHP代码中想要将数据导出到浏览器,如下:持续下载 利用 php://output 输出流,以及 fputcsv 函...

    原创 2年前 (2023-05-17) 924阅读 #PHP
    PHP导出csv文件
  • PHP删除文件夹

    若是删除空文件夹使用rmdir()函数即可,但是若文件夹不为空则无法直接删除 需用到递归函数 /** * 删除目录...

    原创 2年前 (2023-05-17) 430阅读 #PHP
    PHP删除文件夹
  • PHP生成器的使用yield性能优化

    生成器yield 什么是生成器? 生成器有什么用? 生成器的应用 返回空值以及中断 返回键值对形式 外部传递数据...

    原创 2年前 (2023-05-17) 472阅读 #PHP
    PHP生成器的使用yield性能优化
  • PHP设置时区相关方法

    php.ini中的时区设置date.timezone = PRC 无意中发现 lnmp 默认的 php.ini 配置中有...

    原创 2年前 (2023-05-17) 447阅读 #PHP
    PHP设置时区相关方法
  • Linux上给PHP安装redis扩展

    Linux下的PHP怎么安装redis扩展 下载redis扩展源码包 cd /usr/local/src wget h...

    原创 2年前 (2023-05-17) 415阅读 #PHP
    Linux上给PHP安装redis扩展
  • PHP变量注释/**@var*/

    PHP中定义数组类型变量时,可以定义数组内元素的类型。 这样的好处是使用IDE时会有类型提示 public functi...

    原创 2年前 (2023-05-17) 4阅读 #PHP
    PHP变量注释/**@var*/
最新文章
  • 解决SolidWorks2019许可证错误-85440 4个月前 (02-11)
  • 解决sklearn.datasets.fetch_20newsgroups下载速度慢的问题 4个月前 (02-11)
  • 解决sklearn.datasets.fetch_20newsgroups下载报错问题分享 4个月前 (02-11)
  • 解决Scratch3.0scratch-hex文件下载失败问题 4个月前 (02-11)
  • 解决RHEL7无法使用YUM源的问题 4个月前 (02-11)
  • 解决Qt应用中遇到的libpngwarningiCCPknownincorrectsRGBprofile问题 4个月前 (02-11)
  • 解决QT启动时找不到python36.dll问题 4个月前 (02-11)
  • 解决Qt5在麒麟Linux下不能输入中文问题 4个月前 (02-11)
  • 解决QT5.12.6使用32位MinGW编译器无法使用SSL协议问题 4个月前 (02-11)
  • 解决PyTorchCUDA编译问题指南 4个月前 (02-11)
标签列表
  • 大杂烩
  • 资源分享
  • 技术教程
  • 办公文档
  • 免费模板
  • 网站源码
  • 软件工具
  • 其他
  • free
  • bug记录
  • PHP
  • phpstorm
  • mac
  • sharedfilelistd
  • 文件共享
  • 电脑上、
  • 苹果电脑
  • 清理缓存
  • DNS
  • Yii2
  • schemaCache
  • 配置
  • bug
  • SSL
  • certificate has expired
粤ICP备19068341号
所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除
Powered By Z-BlogPHP Theme By 编程老白