5分钟生成10篇英文软文article forge软件试用

想要创建一个插件来扩展 WooCommerce? WooCommerce 插件与常规 WordPress 插件相同。 有关更多信息,请访问编写插件。

google广告开户

您的 WooCommerce 扩展程序应该:

  • 遵守所有 WordPress 插件编码标准,以及 WordPress 内和其他 WordPress 插件和谐存在的最佳实践指南。
  • 拥有单一核心目的并尽可能多地使用 WooCommerce 功能。
  • 不要做任何恶意或不正当的事情——例如,插入垃圾邮件链接或在 WooCommerce.com 生态系统之外向上销售服务。
  • 不破坏或覆盖核心中的市场连接——例如,扩展不能创建品牌顶级菜单项或引入自己的遥测。

商家每天都使用 WooCommerce 扩展程序,并且应该在这样做的同时获得统一和愉快的体验,而不会有广告侵入他们的 WP 管理员或商店。

注意:我们提供此页面作为开发人员的最佳实践。

笔记: 我们无法为我们的自定义代码提供支持 支持政策. 如果您不熟悉代码和解决潜在冲突,请选择 Woo 专家或开发人员 寻求帮助。

检查 WooCommerce 是否处于活动状态 ↑ 回到顶部

大多数 WooCommerce 插件不需要运行,除非 WooCommerce 已经处于活动状态。 您可以将插件包装在检查中以查看是否安装了 WooCommerce:

// Test to see if WooCommerce is active (including network activated).
$plugin_path = trailingslashit( WP_PLUGIN_DIR ) . 'woocommerce/woocommerce.php';

if (
    in_array( $plugin_path, wp_get_active_and_valid_plugins() )
    || in_array( $plugin_path, wp_get_active_network_plugins() )
) {
    // Custom code here. WooCommerce is active, however it has not 
    // necessarily initialized (when that is important, consider
    // using the `woocommerce_init` action).
}

请注意,如果 WC 插件文件夹的名称不是 woocommerce.

主插件文件应采用插件的名称,例如,带有目录名称的插件 plugin-name 将其主文件命名为 plugin-name.php.

遵循 WordPress 开发人员国际化指南,文本域应与您的插件目录名称匹配,例如,目录名称为的插件 plugin-name 会有文本域 plugin-name. 不要使用下划线。

WordPress divi主题

插件代码中的所有文本字符串都应该在 英语. 这是 WordPress 默认的语言环境,英语应该始终是第一语言。 如果您的插件适用于特定市场(例如,西班牙或意大利),请在您的插件包中包含这些语言的适当翻译文件。 在使用 Makepot 翻译您的插件中了解更多信息。

遵循 WordPress PHP 指南 ↑ 回到顶部

WordPress 有一套准则来保持所有 WordPress 代码一致且易于阅读。 这包括引号、缩进、大括号样式、速记 php 标签、yoda 条件、命名约定等。 请查看指南。

代码约定还可以防止基本错误,就像 Apple 在 iOS 7.0.6 中所做的那样。

自定义数据库表和数据存储 ↑ 回到顶部

避免创建自定义数据库表。 尽可能使用 WordPress 帖子类型、分类法和选项。

考虑数据的持久性。 这是一个快速入门:

  • 如果数据可能并不总是存在(即过期),请使用 短暂的.
  • 如果数据是持久的但并不总是存在,请考虑使用 WP缓存.
  • 如果数据是持久的并且始终存在,请考虑 wp_options 桌子。
  • 如果数据类型是一个实体 n 单位,考虑一个 帖子类型.
  • 如果数据是一种手段或对实体进行排序/分类,请考虑 分类.

日志应该使用 WC_Logger 班级。

尽量防止直接访问数据泄露。 在每个 PHP 文件的开始 PHP 标记之后添加这行代码:

if ( ! defined( 'ABSPATH' ) ) {
    exit; // Exit if accessed directly
}

所有插件都需要标准的 WordPress 自述文件。

您的自述文件可能如下所示:

=== Plugin Name ===
Contributors: (this should be a list of wordpress.org userid's)
Tags: comments, spam
Requires at least: 4.0.1
Tested up to: 4.3
Requires PHP: 5.6
Stable tag: 4.3
License: GPLv3 or later License
URI: http://www.gnu.org/licenses/gpl-3.0.html

一致性对我们和我们的客户都很重要。 通过 WooCommerce.com 提供的产品应为产品的各个方面提供一致的体验,包括查找有关谁与查询联系的信息。

fiverr建站WordPress程序员

客户应该能够轻松地将在 WooCommerce.com 购买的产品与在其他地方购买的产品区分开来,只需查看他们在 WordPress 中的插件列表。

因此,以下插件标头应该到位:

  • Plugin AuthorYourName/YourCompany
  • Developer 标题是 YourName/YourCompanyDeveloper URI 字段列为 http://yourdomain.com/

例如:

/**
 * Plugin Name: WooCommerce Extension
 * Plugin URI: http://woocommerce.com/products/woocommerce-extension/
 * Description: Your extension's description text.
 * Version: 1.0.0
 * Author: Your Name
 * Author URI: http://yourdomain.com/
 * Developer: Your Name
 * Developer URI: http://yourdomain.com/
 * Text Domain: woocommerce-extension
 * Domain Path: /languages
 *
 * Woo: 12345:342928dfsfhsf8429842374wdf4234sfd
 * WC requires at least: 2.2
 * WC tested up to: 2.3
 *
 * License: GNU General Public License v3.0
 * License URI: http://www.gnu.org/licenses/gpl-3.0.html
 */

声明所需和支持的 WooCommerce 版本 ↑ 回到顶部

使用以下标头声明“必需”和“已测试”版本:

  • WC 至少需要
  • WC 测试高达

插件 URI ↑ 回到顶部

确保 Plugin URI 提供了上述插件标题的行。 此行应包含 WooCommerce.com 上插件产品/销售页面的 URL(如果由 WooCommerce 出售)或您网站上插件的专用页面。

独立站选品工具

WooCommerce 核心寻找一个 Woo 插件标题注释中的行,以确保它可以检查 WooCommerce.com 上插件的更新。 此行如下所示:

Woo: 12345:342928dfsfhsf8429842374wdf4234sfd

这是 仅适用于在 WooCommerce.com 上销售的产品。 不需要或不需要将此行用于 WordPress.org 或其他地方列出的产品。

对于在 WooCommerce.com 上销售的产品,供应商可以通过登录到他们的 登录到供应商仪表板并前往 扩展 > 所有扩展。 然后,选择 产品并点击 编辑产品页面。 此代码段将位于屏幕的右上角。

高质量外链购买

请参阅上面的插件标题注释示例,了解如何 Woo 标题在上下文中查找。

开发人员应使用 WordPress 操作和过滤器来允许修改/自定义,而无需用户接触插件的核心代码库。

如果您的插件创建前端输出,我们建议使用模板引擎,以便用户可以在其主题的 WooCommerce 文件夹中创建自定义模板文件以覆盖插件的模板文件。

使用版本控制,没有理由留下注释掉的代码; 滚动浏览和阅读很烦人。 如果需要,将其删除并稍后添加。

如果你有一个函数,这个函数有什么作用? 代码中的大多数函数(如果不是所有函数)都应该有注释。 某人/您可能想修改插件,评论对此很有帮助。 我们建议使用类似于 WooCommerce 的 PHP Doc Blocks。

JasperAI 10000字免费额度试用

上帝对象是知道或做得太多的对象。 面向对象编程的要点是把一个大问题分解成更小的部分。 当函数做得太多时,很难遵循它们的逻辑,从而使错误更难修复。 与其拥有庞大的功能,不如将它们分解成更小的部分。

始终在 WP_DEBUG 模式下进行开发,因此您可以看到所有发送到屏幕的 PHP 警告。 这将标记诸如确保在检查值之前设置变量之类的事情。

分离业务逻辑和表示逻辑 ↑ 回到顶部

将业务逻辑(即插件如何工作)与表示逻辑(即外观)分开是一种很好的做法。 如果需要,两个独立的逻辑更容易维护和交换。 一个例子是有两个不同的类——一个用于显示最终结果,一个用于管理设置页面。

使用瞬态存储异地信息 ↑ 回到顶部

如果您通过 API 提供服务,最好存储该信息,以便以后可以更快地完成查询并减少服务的负载。 WordPress 瞬态可用于在一定时间内存储数据。

您可能希望记录对调试有用的数据。 这很好,有两个条件:

WordPress备份工具updrafplus
  • 允许任何日志记录为“选择加入”。
  • 使用 WC_Logger 类。 然后,用户可以在其系统状态页面上查看日志。

如果将日志记录添加到您的扩展程序,这里有一个用于显示日志链接的片段,以一种扩展程序用户可以轻松使用的方式。


此文件包含双向 Unicode 文本,其解释或编译方式可能与下面显示的不同。 要查看,请在显示隐藏 Unicode 字符的编辑器中打开文件。
了解有关双向 Unicode 字符的更多信息

此信息适用于第三方开发人员,因此他们编写的产品可以更好地处理错误。 在上传新提交或更新市场上的现有产品时,产品构建服务器会生成错误代码。

错误成功 ↑ 回到顶部

操作已成功完成。

error_pbs_prepare_apache ↑ 回到顶部

产品构建服务器的内部错误 – 无法初始化 Apache 守护程序。

error_pbs_prepare_mysql ↑ 回到顶部

产品构建服务器的内部错误 – 无法初始化 MySQL 守护程序。

error_pbs_prepare_wp ↑ 回到顶部

产品构建服务器的内部错误 – 无法初始化 WordPress。

error_pbs_prepare_wc ↑ 回到顶部

产品构建服务器的内部错误 – 无法初始化 WooCommerce。

error_pbs_prepare_dependencies ↑ 回到顶部

产品构建服务器的内部错误 – 无法配置依赖项。

error_pbs_test_malware_scanning ↑ 回到顶部

恶意软件扫描错误。 如果您的产品在代码中包含恶意软件,就会发生这种情况。

这是一个示例输出:

ObfuscatedPhp /tmp/product_clone/woocommerce-example/includes/views/html-settings-page.php
0x406:$ini_set:  ini_set(
0x506:$ini_set:  ini_set(
ObfuscatedPhp /tmp/product_clone/woocommerce-example/includes/views/html-extras-page.php
0x406:$eval:  exec(

这意味着文件中绝对位置0x406(1030)和0x506(1286)的字符 html-settings-page.php 没有通过 $ini_set 规则,因为它正在使用 call_user_func 在那个文件中。 另外,另一个文件 html-extras-page.php 不通过规则 $register_function 这是使用 exec 称呼。

error_pbs_test_extracting ↑ 回到顶部

无法提取产品。 最常见的问题是 zip 的顶级目录与其 slug 不匹配。

error_pbs_test_phpcs ↑ 回到顶部

phpcs 检查失败。 该检查使用 WooCommerce-Core 嗅探器,并带有以下内容 phpcs.xml


此文件包含双向 Unicode 文本,其解释或编译方式可能与下面显示的不同。 要查看,请在显示隐藏 Unicode 字符的编辑器中打开文件。
了解有关双向 Unicode 字符的更多信息

要在本地安装:

  1. 转到您的产品目录。
  2. 安装 WooCommerce 嗅探器 composer require woocommerce/woocommerce-sniffs.
  3. phpcs.xml 上面的产品目录。
  4. ./vendor/bin/phpcs --warning-severity=0 -s --ignore-annotations --extensions=php,html . .

error_pbs_test_installing ↑ 回到顶部

无法安装产品。 最常见的问题是 zip 的顶级目录与其 slug 不匹配。

error_pbs_test_activating ↑ 回到顶部

无法激活产品。 有关更多详细信息,请参阅构建输出。

error_pbs_test_deactivating ↑ 回到顶部

无法停用产品。 有关更多详细信息,请参阅构建输出。

error_pbs_test_host_plan_installing ↑ 回到顶部

此错误表示您的产品与主机计划中的其他产品不兼容。 有关更多详细信息,请参阅构建输出。

error_pbs_test_host_plan_activating ↑ 回到顶部

此错误表示您的产品与主机计划中的其他产品不兼容。 参考…

5分钟生成10篇英文软文article forge软件试用
tiktok