当前位置: 首页 > news >正文

基于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)

相关文章:

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

上一篇&#xff1a;基于WordPress开发微信小程序1&#xff1a;搭建Wordpress-CSDN博客 很快发现一个问题&#xff0c;如果使用别人的主题模板&#xff0c;多多少少存在麻烦&#xff0c;所以一咬牙&#xff0c;决定自己开发一个主题模板&#xff0c;并且开源在gitee上&#xff…...

[Python] 什么是网格搜索以及scikit-learn中GridSearch类的介绍和使用案例?

什么是网格搜索&#xff1f; 网格搜索是一种参数调优的方法&#xff0c;它可以帮助找到最佳的模型参数。在网格搜索中&#xff0c;我们先指定参数的候选值范围&#xff0c;然后枚举所有可能的参数组合&#xff0c;计算每个模型的性能指标&#xff08;比如准确率、精确率等&…...

Linux-正则表达式

1.正则表达式的定义&#xff1a; 正则表达式通常用于判断语句中&#xff0c;使用字符串描述、匹配一系列符合某个规则的字符串。 正则表达式是由普通字符与元字符组成。 普通字符包括小写字母、数字、标点符号及一些其他符号。元字符是指在正则表达式中具有特殊意义的专用字符&…...

Java基础学习:System类和Static方法的实际使用

一、System类 1.在程序开发中&#xff0c;我们需要对这个运行的结果进行检验跟我们预判的结果是否一致&#xff0c;就会用到打印结果在控制台中显示出来使用到了System类。System类定义了一些和系统相关的属性和方法&#xff0c;它的属性和方法都是属于静态的&#xff0c;想使用…...

线性代数------矩阵的运算和逆矩阵

矩阵VS行列式 矩阵是一个数表&#xff0c;而行列式是一个具体的数&#xff1b; 矩阵是使用大写字母表示&#xff0c;行列式是使用类似绝对值的两个竖杠&#xff1b; 矩阵的行数可以不等于列数&#xff0c;但是行列式的行数等于列数&#xff1b; 1.矩阵的数乘就是矩阵的每个…...

Flutter 开发3:创建第一个Flutter应用

Step 1: 安装Flutter 1.1 下载Flutter SDK 首先&#xff0c;你需要访问Flutter官方网站下载最新的Flutter SDK。选择适合你操作系统的安装包。 $ cd ~/development $ unzip ~/Downloads/flutter_macos_2.2.3-stable.zip1.2 更新环境变量 接下来&#xff0c;你需要将Flutter…...

Linux中断下半部分:软中断,tasklet和工作队列

为什么要有下半部分 中断会打断其他程序&#xff0c;为了打断其他程序时间短&#xff0c;就需要中断处理程序快。执行中断处理程序后&#xff0c;相同中断不会触发&#xff0c;甚至所有中断都不能触发&#xff08;设置IRQF_DISABLED&#xff0c;其他硬件与操作系统无法通信)中…...

Flink CEP实现10秒内连续登录失败用户分析

1、什么是CEP&#xff1f; Flink CEP即 Flink Complex Event Processing&#xff0c;是基于DataStream流式数据提供的一套复杂事件处理编程模型。你可以把他理解为基于无界流的一套正则匹配模型&#xff0c;即对于无界流中的各种数据(称为事件)&#xff0c;提供一种组合匹配的…...

QSqlRelationalTableModel 关系表格模型

一、 1.1 QSqlRelationalTableModel继承自QSqlTableModel&#xff0c;并且对其进行了扩展&#xff0c;提供了对外键的支持。一个外键就是一个表中的一个字段 和 其他表中的主键字段之间的一对一的映射。例如&#xff0c;“studInfo”表中的departID字段对应的是“departments…...

JS和CSS实现的原生轮播图

JSCSS实现滑动轮播图 使用JS加CSS来实现的幻灯片&#xff0c;主要使用的是CSS的transform属性中的translate来实现&#xff0c;适合与用户交互的轮播图&#xff0c;展现轮播图的数量&#xff0c;用户可自由进行选择。 <!DOCTYPE html> <html lang"en">&…...

【微服务】skywalking自定义链路追踪与日志采集

目录 一、前言 二、自定义链路追踪简介 2.1 自定义链路追踪应用场景 2.2 链路追踪几个关键概念 三、skywalking 自定义链路追踪实现 3.1 环境准备 3.2 集成过程 3.2.1 导入核心依赖 3.2.2 几个常用注解 3.2.3 方法集成 3.2.4 上报追踪信息 四、skywalking 自定义日志…...

MYSQL基础问题

一&#xff0e;DBMS 是什么 DBMS&#xff08;Database Management System&#xff09;,数据库管理系统&#xff0c;是一种操纵和管理 数据库的大型软件&#xff0c;用于建立、使用和维护数据库。对数据库进行统一的管理和 控制&#xff0c;以保证数据库的安全性和完整性。 二…...

SpringBoot使用Guava实现日志脱敏(含源码)

点击下载《SpringBoot使用Guava实现日志脱敏&#xff08;含源码&#xff09;》 1. 摘要 本文将介绍如何使用Google Guava库进行日志脱敏&#xff0c;保护敏感数据的安全。我们将详细解释脱敏的必要性&#xff0c;然后介绍如何使用Guava中的Strings、Maps和CharMatcher类来进行…...

数据结构—动态查找

动态查找介绍 1. 动态查找的引入&#xff1a;当查找表以线性表的形式组织时&#xff0c;若对查找表进行插入、删除或排序操作&#xff0c;就必须移动大量的记录&#xff0c;当记录数很多时&#xff0c;这种移动的代价很大。 2. 动态查找表的设计思想&#xff1a;表结构本身是…...

Tarjan算法学习笔记

目录 无向图的割点与桥 时间戳&#xff1a; 搜索树&#xff1a; 追溯值&#xff1a; 割边判定法则&#xff1a; 割点判定法则&#xff1a; 无向图的双连通分量 定理&#xff1a; 边双连通分量(e-DCC)的求法&#xff1a; e-DCC的缩点&#xff1a; 有向图的连通性 追…...

vue 项目涉及的焦点聚焦、格式化日期、判断是否为对象或数组、判断是否为空、深拷贝、节流、防抖

焦点聚焦 import Vue from vue // 插件对象(必须有 install 方法, 才可以注入到 Vue.use 中) export default {install () {Vue.directive(fofo, {inserted (el) {el el.querySelector(input)el.focus()}})} }格式化日期格式 export const formatDate (time) > {// 将xx…...

软件工程知识梳理6-运行和维护

软件维护需要的工作量很大&#xff0c;大型软件的维护成本高达开发成本的4倍左右。所以&#xff0c;软件工程的主要目的就是要提高软件的可维护性&#xff0c;减少软件维护所需要的工作量&#xff0c;降低软件系统的总成本。 定义&#xff1a;软件已经交付使用之后&#xff0c;…...

docker- php7.4

安装 gd拓展 anzhuanga在Dockerfile里面安装php7.4的GD库 - 知乎 apt update apt install -y libwebp-dev libjpeg-dev libpng-dev libfreetype6-devdocker-php-source extractdocker-php-ext-configure gd \ --with-jpeg/usr/include \ --with-freetype/usr/include/docker-…...

开发一个Android App,在项目中完成添加联系人的功能,通过ContentResolver向系统中添加联系人信息。

实现步骤&#xff1a; &#xff08;1&#xff09;添加动态联系人的权限。 &#xff08;2&#xff09;创建Activity和布局文件&#xff0c;添加输入框和按钮等控件。 &#xff08;3&#xff09;完成添加联系人的功能。 代码文件如下&#xff1a; activity_main.xml文件 <!…...

Flume搭建

压缩包版本&#xff1a;apache-flume-1.9.0-bin.tar 百度盘链接&#xff1a;https://pan.baidu.com/s/1ZhSiePUye9ax7TW5XbfWdw 提取码&#xff1a;ieks 1.解压 tar -zxvf /opt/software/apache-flume-1.9.0-bin.tar.gz -C /opt/module/ 2. 修改文件名 [rootbigdata1 opt]…...

QueryWrapper常用案例

记录于 2023.09.18 个人博客&#xff0c;现转录CSDNQueryWrapper MyBatis-Plus 提供的「SQL 条件自动拼接工具」 不用手写 SQL 语句&#xff0c;用 Java 链式代码&#xff0c;自动帮你拼出 where、order by、like、in、between 等查询条件。 1.多条数据查询 import com.baomid…...

学Simulink——基于Simulink的固定频率滞环电流控制Boost变换器

目录 手把手教你学Simulink——基于Simulink的固定频率滞环电流控制Boost变换器​ 摘要​ 一、背景与挑战​ 1.1 Boost变换器电流控制的痛点与传统方法局限​ 1.1.1 应用场景与核心指标​ 1.1.2 传统控制的缺陷​ 1.2 固定频率滞环电流控制的核心优势​ 1.3 设计目标​ …...

Sigma-Delta ADC原理深度解析:从过采样到噪声整形

1. Sigma-Delta ADC的核心价值&#xff1a;为什么选择它&#xff1f; 在模数转换器&#xff08;ADC&#xff09;的世界里&#xff0c;Sigma-Delta架构就像是一位擅长"慢工出细活"的匠人。你可能听说过Pipelined ADC的高速特性&#xff0c;或者SAR ADC的平衡表现&…...

Makefile 入门与 C/C++ 项目构建指南

Makefile 入门与 C/C 项目构建指南 本文面向 C/C 初学者与日常维护多文件工程的开发者&#xff0c;系统说明 GNU Make 与 Makefile 的作用、执行逻辑、常用语法与可复用模板&#xff0c;帮助从「手动敲 gcc」过渡到可维护的自动化构建&#xff0c;并具备阅读、修改常见开源项目…...

Xinference-v1.17.1模型注册全流程:从HuggingFace下载到本地路径映射

Xinference-v1.17.1模型注册全流程&#xff1a;从HuggingFace下载到本地路径映射 重要提示&#xff1a;本文介绍的是Xinference-v1.17.1版本的模型注册功能&#xff0c;通过简单的配置即可将HuggingFace上的模型下载到本地并建立路径映射&#xff0c;实现快速部署和使用。 1. 什…...

Mochi Diffusion:如何在Mac上实现本地AI图像生成?完整技术指南

Mochi Diffusion&#xff1a;如何在Mac上实现本地AI图像生成&#xff1f;完整技术指南 【免费下载链接】MochiDiffusion Run Stable Diffusion on Mac natively 项目地址: https://gitcode.com/gh_mirrors/mo/MochiDiffusion Mochi Diffusion是一款专为Apple Silicon芯片…...

5962-88769022A,兼容LSTTL/TTL/CMOS逻辑与6.4mA驱动能力的防抖动逻辑门光耦

简介今天我要向大家介绍的是 Broadcom 的光电耦合器——5962-88769022A。它的每一条通道都由一颗AlGaAs发光二极管和一颗带有迟滞阈值的高增益光子探测器组成。当输入端接收到2mA到8mA的微小电流时&#xff0c;LED便会发光。而接收端的探测器不仅负责捕捉光信号&#xff0c;其内…...

从理论到实践:基于快马平台打造openclaw颜色分拣实战项目

最近在做一个很有意思的实战项目——基于openclaw的自动化颜色分拣系统。这个项目完美结合了计算机视觉和机械控制&#xff0c;特别适合用来验证一些工业自动化场景中的关键技术点。下面分享下我的实现过程和经验总结。 项目整体架构设计 这个系统主要分为四个核心模块&#…...

Qwen3.5-9B量子计算辅助:算法描述理解+Qiskit代码生成+实验设计建议

Qwen3.5-9B量子计算辅助&#xff1a;算法描述理解Qiskit代码生成实验设计建议 1. 项目概述与核心能力 Qwen3.5-9B是一款拥有90亿参数的开源大语言模型&#xff0c;在量子计算领域展现出强大的辅助能力。该模型特别适合用于&#xff1a; 算法描述理解&#xff1a;解析复杂的量…...

用Anything to RealCharacters为游戏角色“拍照”:生成高质感真人定妆照

用Anything to RealCharacters为游戏角色"拍照"&#xff1a;生成高质感真人定妆照 1. 引言&#xff1a;游戏角色的"数字摄影棚" 想象一下&#xff0c;你精心设计的游戏角色突然从屏幕里走出来&#xff0c;站在真实的摄影棚中&#xff0c;专业的灯光打在他…...