基于WordPress开发微信小程序2:决定开发一个wordpress主题

上一篇:基于WordPress开发微信小程序1:搭建Wordpress-CSDN博客

很快发现一个问题,如果使用别人的主题模板,多多少少存在麻烦,所以一咬牙,决定自己开发一个主题模板,并且开源在gitee上:牧旭尧/福兴小程序wordpress配套主题 (gitee.com)

好了,开始研究一下wordpress主题开发

什么是主题?

WordPress主题负责站点的外观,包括布局、配色、功能模块等等。更改主题会更改网站的外观设计,即用户在浏览网站时看到的内容和版式。 

主题可以做什么?

WordPress主题中数据库中获取数据,然后在浏览器中显示。创建WordPress主题时,我们可以决定该内容的外观和显示方式。例如:

  • 使用一列、两列、多列布局、是否为响应式等。
  • 把内容展示在站点中的任意位置。
  • 指定您的内容在哪些设备或哪些操作中可见。
  • 使用 CSS 自定义其排版和设计元素。
  • 在主题的任何位置包含其他设计元素(如图像和视频)。

WordPress主题非常强大。但是,与其他网页设计项目一样,主题不仅仅是颜色和布局。优秀的主题不仅有一个美丽的外表,还可以提高网站的参与度 。

主题是什么?

从本质上说,WordPress主题是一些模版文件的集合,这些模版文件相互协同,创建了用户所看到的内容,控制着网站的外观和交互方式。

主题所需文件

最基本的 WordPress 主题中只 需要两个文件 

  1. index.php – 主模板文件
  2. style.css – 主样式文件

以下文件不是必需的,但是我们很可能会在各种主题中看到:

  • PHP 文件 – 包括模板文件
  • 本地化文件
  • CSS 文件
  • 图像
  • JavaScript 文件
  • 文本文件 – 通常是许可证信息 , readme.txt说明和更新日志文件

如何正确的开发主题?

虽然WordPress主题在技术上只需要两个文件( index.php和 style.css),但它们通常由更多模版文件组成。这意味着他们很快就会变得杂乱无章!以下是一个主题的开发示例:

assets (dir)- css (dir)- images (dir)- js (dir)
inc (dir)
template-parts (dir)- footer (dir)- header (dir)- navigation (dir)- page (dir)- post (dir)
404.php
archive.php
comments.php
footer.php
front-page.php
functions.php
header.php
index.php
page.php
README.txt
rtl.css
screenshot.png
search.php
searchform.php
sidebar.php
single.php
style.css

我们可以看到,模板文件位于根目录中,而 JavaScript,CSS,图像放在 assets目录中,模板片段放在对应的子目录中,在主题中使用的核心功能放在 inc 目录中。

目前,在WordPress主题没有必需的文件夹 。但是,默认情况下,WordPress会识别以下文件夹。

style.css 应该位于主题的根目录中,而不是 CSS 目录中。

好了,阅读完以上的内容,我们接下来开始正式进入主题的开发吧...

创建第一个主题

让我们从头开始创建一个简单的WordPress主题。首先,创建一个新的文件夹,命名为"lowrie"。在这个文件夹中,创建一个名为"style.css"的文件,这是主题的样式文件。

在"style.css"文件中添加以下内容:

/*
Theme Name: lowrie
Description: 福兴小程序配套主题
Author: 牧旭尧
Version: 1.0
*/

这些是主题的基本信息,包括主题名称、描述、作者和版本号。

接下来,创建一个名为"index.php"的文件。这将是主题的入口文件,用于显示网站的内容。

在"index.php"文件中添加以下内容:

<?php
get_header(); // 获取头部
?><main><h1>Hello, World!</h1><p>Welcome to lowrie</p>
</main><?php
get_footer(); // 获取尾部
?>

论证了,主题可以使用...

前端访问

现在,已经开始编写wordpress主题的代码了...

已更新最新代码:lowrie: 福兴小程序的wordpress配套主题 (gitee.com)

了解更多详情,请移步:电商系统开发-B2B商城系统开发-APP开发一站式落地服务「福兴信息科技」 (aptus.xin)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/664696.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++类和对象的属性

C类和对象的属性 千钧一发&#xff0c;让一根头发去承受三万斤的重量&#xff0c;但是它没有断。-----余华 const修饰结构体指针 内部值不能修改&#xff0c;即&#xff1a;只能读&#xff0c;不能写。防止误操作 #include <iostream> using namespace std;struct Po…

计算机网络自顶向下Wireshark labs-HTTP

我直接翻译并在题目下面直接下我的答案了。 1.基本HTTP GET/response交互 我们开始探索HTTP&#xff0c;方法是下载一个非常简单的HTML文件 非常短&#xff0c;并且不包含嵌入的对象。执行以下操作&#xff1a; 启动您的浏览器。启动Wireshark数据包嗅探器&#xff0c;如Wir…

【数据结构】 - 队列 栈

theme: smartblue 一、队列 1、概念 队列&#xff08;Queue&#xff09;是一种常见的数据结构&#xff0c;它按照先进先出&#xff08;First In First Out&#xff0c;FIFO&#xff09;的原则进行元素操作。在队列中&#xff0c;新元素总是被添加到队列的末尾&#xff0c;而…

spring-boot-actuator 服务监控

1 概述 服务启动时&#xff0c;通过spring-boot-actuator 监控es等服务是否连接成功等 2 依赖 <!-- 服务监控 --> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId><…

2024年美国大学生数学建模竞赛(E题)财产保险建模|MCDA/随机森林建模解析,小鹿学长带队指引全代码文章与思路

我是鹿鹿学长&#xff0c;就读于上海交通大学&#xff0c;截至目前已经帮500人完成了建模与思路的构建的处理了&#xff5e; 本文运用利用时间序列和强化学习结合DQN算法&#xff0c;解决保险业可持续性问题&#xff1b;采用MCDA和随机森林&#xff0c;应对地产业保险挑战&…

[Unity Sentis] Unity Sentis 详细步骤工作流程

文章目录 1. 导入模型文件支持的模型创建运行时模型导入错误 2. 为模型创建输入将数组转换为张量创建多个输入进行操作 3. 创建一个引擎来运行模型创建一个Worker后端类型 4. 运行模型5. 获取模型的输出获取张量输出多个输出打印输出 1. 导入模型文件 要导入 ONNX 模型文件&am…

电脑怎么录屏?打造专业级视频内容!

随着科技的进步&#xff0c;电脑已经深入到我们的日常生活和工作中。而在这个数字时代&#xff0c;录制屏幕内容变得日益重要。无论是制作教程、分享游戏技巧&#xff0c;还是记录重要的演示&#xff0c;录屏都是一个不可或缺的功能。可是电脑怎么录屏呢&#xff1f;本文将深入…

Cmake语法学习3:语法

1.双引号 1.1 命令参数 1&#xff09;介绍 命令中多个参数之间使用空格进行分隔&#xff0c;而 cmake 会将双引号引起来的内容作为一个整体&#xff0c;当它当成一个参数&#xff0c;假如你的参数中有空格&#xff08;空格是参数的一部分&#xff09;&#xff0c;那么就可以使…

web前端较新的前端技术和趋势

Web前端的技术发展迅速&#xff0c;不断有新工具和框架出现。以下是一些较新的前端技术和趋势&#xff1a; 框架和库&#xff1a; React&#xff1a;Facebook开发的一个用于构建用户界面的JavaScript库&#xff0c;目前非常流行。 Vue.js&#xff1a;一个渐进式JavaScript框架…

java DateTimeFormatter 使用

DateTimeFormatterBuilder dateTimeFormatterBuilder new DateTimeFormatterBuilder().append(DateTimeFormatter .ofPattern(“[MM/dd/yyyy]” “[dd-MM-yyyy]” “[yyyy-MM-dd]” “[yyyy-M-d]” “[dd MMM yyyy]”)); LocalDate dd LocalDate.parse(“03 Feb 2024”,…

国自然结题报告为什么不能下载?如何解决

一直以来&#xff0c;国自然的结题报告都不是只能在线查看&#xff0c;这给很多科研人员带来一些不方便&#xff0c;因为在线查看的话&#xff0c;受限于网络&#xff0c;必须有网的时候才能看&#xff0c;并且官方网站的响应比较慢&#xff0c;想快速翻页&#xff0c;基本不可…

《苍穹外卖》知识梳理P2-公共类说明

《苍穹外卖》知识梳理P2 上一节中&#xff0c;进行了项目结构的搭建知识梳理P1 公共类说明 所有公共类都位于common模块下&#xff0c;由于每个包下的类很多&#xff0c;在此不一一列举&#xff1b; 1.constant包&#xff1a;主要存放常量类&#xff0c;类中只有静态常量&am…

leetcode-链表专题

25.K个一组翻转链表 题目链接 25. K 个一组翻转链表 - 力扣&#xff08;LeetCode&#xff09; 解题思路 # Definition for singly-linked list. # class ListNode: # def __init__(self, val0, nextNone): # self.val val # self.next next class So…

【Java程序设计】【C00240】基于Springboot的班级综合测评管理系统(有论文)

基于Springboot的班级综合测评管理系统&#xff08;有论文&#xff09; 项目简介项目获取开发环境项目技术运行截图 项目简介 这是一个基于Springboot的班级综合测评管理系统 本系统分为学生功能模块、管理员功能模块以及教师功能模块。 管理员功能模块&#xff1a;管理员功能…

MySQL中DML操作(九)

MySQL中DML操作&#xff08;九&#xff09; DML语言是操作数据的语言 一、添加数据(INSERT) 1.1 选择插入 INSERT INTO 表名(列名 1 &#xff0c;列名 2 &#xff0c;列名 3.....) VALUES(值 1 &#xff0c;值 2 &#xff0c;值 3......); 1.2 完成插入 INSERT INTO 表名…

L1-020 帅到没朋友分数 20

当芸芸众生忙着在朋友圈中发照片的时候&#xff0c;总有一些人因为太帅而没有朋友。本题就要求你找出那些帅到没有朋友的人。 输入格式&#xff1a; 输入第一行给出一个正整数N&#xff08;≤100&#xff09;&#xff0c;是已知朋友圈的个数&#xff1b;随后N行&#xff0c;每…

MySQL学习记录——일 MySQL 安装、配置

文章目录 1、卸载内置环境2、安装MySQL3、启动4、登录5、配置my.cnf 当前环境是1核2G云服务器&#xff0c;CentOS7.6。要在root用户下进行操作 1、卸载内置环境 云服务器中有可能会自带mysql还有mariadb这样的数据库服务&#xff0c;在安装我们mysql前&#xff0c;得先查找一下…

迪文串口屏数据的隐藏功能

一、概述 由于项目中在使用迪文屏显示数据的时候&#xff0c;需要在数据为0的时候不显示0&#xff0c;而迪文屏默认的数据变量在无值的时候显示为0&#xff0c;此时可以使用数据的隐藏功能指令 二、具体实现方法 1、可以使用描述指针地址来实现数据的隐藏&#xff0c;查看应用…

大模型重塑车载语音交互:赛道巨头如何引领新周期?

车载语音交互赛道正进入新一轮竞争周期。 高工智能汽车注意到&#xff0c;传统车载语音交互赛道当前基本已进入成熟期&#xff0c;主要为任务型助手&#xff0c;包括从单轮对话到多轮对话&#xff0c;单音区到多音区&#xff0c;从单一的导航、多媒体娱乐等座舱功能扩展智能驾…

Ubuntu 添加字体

Ubuntu 添加字体 Ubuntu如何添加新的字体&#xff1f;似乎远远没有Windows方便呀&#xff0c;查询了一些资料&#xff0c;与大家分享。 方法1 根据字体名称直接安装 oyroy-FMVU08001:~$ sudo apt-get install fonts-wqy-zenhei [sudo] roy 的密码&#xff1a; 正在读取软件…