Skip to content

Support Orchard Core custom Liquid inline/block tags and surface parsing errors #124

Description

@safinilnur

Problem

When the tool is used in custom Orchard Core project, it does not recognize Orchard Core-specific Liquid inline/block tags or custom tags defined by the Orchard Core application.

Because of this:

  • Liquid files containing these tags fail during parsing or processing.
  • The failures happen silently because errors are not displayed or logged.
  • Some .liquid files are skipped entirely and no translations are generated for them.

Expected Behavior

The tool should:

  • Support to extend Orchard Core Liquid inline/block tags.
  • For example, to allow registration or configuration of custom project-specific Liquid tags.
  • Display clear parsing/processing errors in Console instead of failing silently.
  • Report which files were skipped and why.

Current Behavior

Currently, Orchard Core tags (e.g. script/style tags in liqud files) or custom Liquid tags cause the processing pipeline to fail silently. As a result:

  • translation generation is incomplete,
  • some Liquid templates are ignored,
  • and there is no visible indication of the root cause.

Suggested Improvement

Possible approaches:

  1. Custom Tags support:
    1.1. Provide a mechanism to register custom tags (e.g. to have a json file containing LiquidProcessorConfiguration)
    1.2. Existing plugins functionality actually can be used for this (custom plugin can remove from registered processors the existing one and add a new custom LiquidProcessor). But the problem can happen later, if PoExtractor tool will get new changes in the LiquidProjectProcessor file. That's difficult to support for the company, which has several Orcahr Core applications.
  2. Add logging for errors in LiquidProjectProcessor

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions