webfoo/html-to-shopify-rich-text 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

webfoo/html-to-shopify-rich-text

最新稳定版本:1.0.2

Composer 安装命令:

composer require webfoo/html-to-shopify-rich-text

包简介

A PHP library to convert HTML to Shopify's Rich Text format

README 文档

README

A PHP package that converts HTML content to Shopify's Rich Text format. This package provides a simple and reliable way to transform HTML content into the JSON structure that Shopify's Rich Text editor expects.

Features

  • Converts common HTML elements to Shopify Rich Text format
  • Supports headings (h1-h6)
  • Handles paragraphs, lists (ordered and unordered)
  • Processes inline elements (bold, italic, links)
  • Sanitizes HTML input
  • Validates HTML structure
  • Handles whitespace normalization
  • Provides detailed error handling

Installation

You can install the package via Composer:

composer require webfoo/html-to-shopify-rich-text

Usage

use Webfoo\HtmlToShopifyRichText\HtmlToShopifyRichText;

$html = '<h1>Hello World</h1><p>This is a <strong>test</strong> paragraph.</p>';
$richText = HtmlToShopifyRichText::convert($html);

// $richText will contain the JSON representation of the Shopify Rich Text

Supported HTML Elements

  • Headings: <h1> through <h6>
  • Paragraphs: <p>
  • Lists: <ul>, <ol>, <li>
  • Links: <a href="...">
  • Bold: <strong>, <b>
  • Italic: <em>, <i>

Error Handling

The package throws specific exceptions for different error scenarios:

  • InvalidHtmlException: Thrown when the HTML is invalid or cannot be parsed
  • ConversionException: Thrown when the conversion process fails
  • JsonEncodingException: Thrown when the JSON encoding fails

Example error handling:

try {
    $richText = HtmlToShopifyRichText::convert($html);
} catch (InvalidHtmlException $e) {
    // Handle invalid HTML
} catch (ConversionException $e) {
    // Handle conversion errors
} catch (JsonEncodingException $e) {
    // Handle JSON encoding errors
}

Requirements

  • PHP 8.1 or higher
  • Composer
  • Required dependencies:
    • symfony/dom-crawler
    • ezyang/htmlpurifier

License

This package is open-sourced software licensed under the MIT license.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

统计信息

  • 总下载量: 120
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 4
  • 点击次数: 3
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 4
  • Watchers: 1
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-04-05