WordPress代码库

WordPress是由一个集中的版本控制版本控制版本控制系统跟踪源代码和对源代码的修订。WordPress使用Subversion (SVN)进行版本控制,大多数存储库使用Git镜像。系统叫颠覆.该存储库的镜像也可以通过Git,分布式VCS。

WordPress代码库可以通过多种方式访问:使用Subversion,使用GitGitGit是一个免费和开源的分布式版本控制系统,旨在处理从小到非常大的项目,速度和效率。Git易于学习,占用空间小,性能极快。大多数现代插件和主题开发都是通过这个版本控制系统完成的。https://git-scm.com/,通过TracTrac一个由Edgewall Software开发的开源项目,用作WordPress的bug追踪器和项目管理工具。(错误错误bug是错误或意外的结果。性能改进、代码优化和被认为是增强,而不是缺陷。在特性冻结之后,只有bug被处理,回归(来自上一个版本的不利更改)是最高优先级。),并可直接下载:

  • Subversion:存储库位于https://develop.svn.www.kotonoha369.com/.主要发展分支分支Subversion中的一个目录。WordPress使用分支来存储每个主要版本(3.9、4.0等)的最新开发代码。然后用该分支的任何小版本的代码更新分支。有时,一个主版本的WordPress和它的次要版本统称为一个“分支”,例如“4.0分支”。——被称为树干树干Subversion中的一个目录,包含为下一个主要发布周期做准备的最新开发代码。如果您正在运行“trunk”,那么您使用的是最新版本。——是https://develop.svn.www.kotonoha369.com/trunk
  • Git:存储库位于git:// development .git。www.kotonoha369.comWordPress.org用户创建和共享WordPress代码的社区站点。你可以在这里下载WordPress核心、插件和主题的源代码,以及社区对话和组织的中心位置。雷竞技//www.kotonoha369.com//。还有一个这是Github上WordPress仓库的镜像,尽管发出和拉请求GithubGitHubGitHub是一个提供git仓库在线实现的网站,其他开发人员可以轻松地共享、复制和修改这些仓库。公共存储库可以免费托管,私有存储库需要付费订阅。GitHub引入了“拉请求”的概念,在这里,贡献者在分支中所做的代码更改可以在被合并到存储库所有者之前被审查和讨论。https://github.com/目前不接受。
  • Trac:可以通过浏览器查看存储库https://core.trac.www.kotonoha369.com/browser/.可以在下面查看变更集的日志https://core.trac.www.kotonoha369.com/log/
  • 下载:WordPress的最新稳定版本可在此下载//www.kotonoha369.com/latest.zip.最新的夜间构建(2300 GMT)可以在//www.kotonoha369.com/nightly-builds/wordpress-latest.zip

WordPress中的代码是如何组织的

如果您正在使用“开发”存储库,如前所述,则核心核心Core是运行WordPress所需的一套软件。核心开发团队负责构建WordPress。代码库在src目录中。下载的包提供这个目录的“构建”版本,因此将这些文件放在根目录中。代码库由大约1000个文件和目录组成。

初始引导文件,例如index . phpwp-load.phpwp-blog-header.php,wp-settings.php,出现在此src目录中。特殊的处理程序,如XML-RPC、trackback和注释提交端点,也位于根目录中。

其余的文件被分为三个不同的目录:wp -管理管理(超级管理员)wp-includes,并且,在某种程度上,wp-content

顶部↑

wp-content

wp-content目录由用户定义的和站点特定的文件组成,包括主题、插件和上传。雷竞技存储库只包含wp-content目录绑定的插件(如Hello Dolly)和主题(如雷竞技2015)。

顶部↑

wp-includes

wp-includes目录由WordPress的主核心和第三方库组成。这些文件中的许多是在应用程序引导时加载的。

的文件wp-includes使用(大部分)标准的前缀和后缀:

  • 类- * . php- - - - - -PHPPHPWordPress的主要架构使用的web脚本语言。WordPress要求PHP 5.6.20或更高版本类。其中一些是外部库。
  • - *女士。php- WordPress特有的代码多点多点用于描述一个由多个博客组成的网络,并按站点分组的WordPress安装。这种安装类型具有共享的用户表,并为每个博客创建单独的数据库表(wp_posts变成wp_0_posts)。另请参阅网络博客网站功能。
  • 默认- * . php-实现或定义默认功能的代码,即常量、小部件和过滤器。
  • * deprecated.php—已弃用的功能。
  • * -template.php-模板函数的相关APIAPIAPI或应用程序编程接口是一种软件中介,它允许程序以有限的、明确定义的方式相互交互并共享数据。

的文件wp-admin /包括遵循类似的命名约定。

顶部↑

wp-admin

wp-admin目录包含支持WordPress管理区域的代码。主引导是wp-admin / admin.php.其他特殊文件包括admin-header.php而且admin-footer.php, AJAX处理程序admin-ajax.php,以及通用的POST处理程序admin-post.php.里面的大部分文件wp-admin目录是WordPress管理界面中的页面。

wp-admin /包括目录由主要核心库和管理区域中可用和使用的第三方库组成。其中一些是在管理启动时加载的;看到wp-admin /包括/ admin.php用于包含的文件的主列表。

顶部↑

JavaScript和CSS

wp-admin而且wp-includes目录也有js而且css目录,分别用于脚本和样式。第三方脚本以压缩和简化的状态打包,可以在以下网站获得//www.kotonoha369.com/download/source/.精简版和开发版都包含在核心脚本和样式中,精简版接受后缀.min.js而且.min.css

wp-includes目录在文件夹中有许多第三方库。的wp-includes / js特别是目录jquery而且tinymce目录,前者保存jQuery, jQuery用户界面用户界面用户界面,以及各种插件,后者拥有Ti雷竞技nyMCE和各种TinyMCE核心和wordpress特定的扩展。

wp-includes / script-loader.php文件注册所有绑定的脚本和样式。每个脚本和样式都有一个特定于日期的版本号(yyyymmdd),它被一个提交者提交者具有提交访问权限的开发人员。WordPress有5个主要开发人员和4个拥有提交权限的永久核心开发人员。此外,项目通常有一些来宾或组件提交者——一个接受提交访问的开发人员,通常针对单个发布周期(有时更新)和/或针对特定组件。当样式表更改时。版本号被添加到URLURL网址:Internet上网站或网页的特定网址,如网站的URL www.www.kotonoha369.com,强制清除浏览器缓存和新的CSSCSS层叠样式表。JavaScriptJavaScriptJavaScript或JS是一种面向对象的计算机编程语言,通常用于在web浏览器中创建交互效果。WordPress大量使用JS来获得更好的用户体验。当PHP在服务器上执行时,JS在用户的浏览器中执行。https://www.javascript.com/加载。

顶部↑

搜索和浏览代码历史记录

为了搜索代码库,开发人员依赖于代码编辑器中的项目搜索工具或IDEIDE集成开发环境。为软件开发人员/程序员提供全套功能的软件包。通常IDE包括源代码编辑器、代码构建工具和调试功能。,或命令行实用程序,例如grep.在Trac上浏览代码库是可以管理的,但有一个特别的特性值得注意:Trac包含了用于Subversion的优秀用户界面命令。

一行代码意味着确定谁最后一次编辑该行以及何时编辑该行。若要在浏览文件时在Trac中访问此文件,请单击注释链接在右上角。大多数人认为UI比单个svn责备命令要高效得多。

核心提交者不会轻易更改WordPress,在没有尽可能完全理解现有代码的情况下绝不应该进行提交。如果代码导致错误,情况总是这样吗?它是什么时候引入的?为什么?有问题的代码是对另一个错误的修复吗?这些问题都非常重要。

注意:要了解更多关于代码历史的信息,请阅读有关的部分用Subversion注释研究代码历史

顶部↑

安装

当WordPress安装最初运行时,如果一个wp-config.php文件无法找到wp-load.php文件将建议您访问wp-admin / setup-config.php创建配置文件。

这事一结束,你就会被带到wp-admin / install.php.此时,创建了数据库表。数据库模式存储在wp-admin /包括/ schema.php,安装库主要位于wp-admin /包括/ upgrade.php(它们还位于哪里?我们在这里应该具体一点)

顶部↑

数据库升级

数据库升级说明包含在wp-admin /包括/ upgrade.php.每当WordPress的新版本需要更改数据库时——无论这意味着更改数据库结构,还是更新一些数据库内容——都会触发升级程序。事实上,你可以安全地从WordPress 0.70升级到最新版本,数据库也会跟上十多年来的变化。

知道升级由一个号码来处理wp-includes / version.php, WordPress数据库版本。该编号对应于代码库的修订号,通常是最后引入数据库升级例程的修订号。当代码中的数字与数据库中存储的数字不一致时,例程将在wp-admin /包括/ upgrade.php运行。

这个函数wp_upgrade ()调用upgrade_all ()(以及其他函数),它将按顺序运行适当的例程。为了触发一个新的例程,一个“模式碰撞”-改变正确的数字,包括WordPress数据库版本version.php-需要发生。

数据库结构的更改由一个称为dbDelta (),它接受表定义,将它们与现有模式进行比较,并进行所需的更改—例如,添加新表、更改字段、添加索引。为dbDelta ()运行核心表定义,DB版本在version.php只是需要被撞一下。

顶部↑

文件更新

核心开发人员通常会区分数据库“升级”和版本“更新”。将WordPress升级到最新的代码库(通过用户界面)会触发一系列复杂的操作。

在任何更新之前,WordPress已经进行了民意调查api.www.kotonoha369.com确定它是否需要更新,如果需要,在哪里找到新版本。一旦更新被触发,WordPress将下载ZIP归档文件并将其解压缩到的临时目录中wp-content /升级.一个文件,wp-admin /包括/ update-core.php,将从临时目录中复制出来,并覆盖现有的wp-admin /包括/ update-core.php,此时它将被执行。因此,新下载的代码处理复制新文件的主要过程。这允许我们提供特定于新版本的指令,例如哪些文件是旧的,可以删除。

顶部↑

探索的代码

这些工具在探索WordPress代码库时可能会很有用:

最后更新: