LegacyTextTagMigration
in package
テキストユニットで非推奨化されたタグ選択(pre / none / markdown / wysiwyg)から、 独立ユニットとして提供されている移行先のユニットタイプを解決する。
Tags
Table of Contents
Constants
- TAG_TO_UNIT_TYPE = ['pre' => 'code', 'none' => 'html', 'markdown' => 'markdown', 'wysiwyg' => 'wysiwyg']
- 非推奨タグ値と移行先ユニットタイプの対応表
Methods
- resolveColumnType() : string|null
- 元の column_type("text" または column_add_type で追加された "text_xxx" 拡張ユニット指定子)と タグ値から、移行後の column_type を解決する。
- resolveUnitType() : string|null
- タグ値から移行先のユニットタイプを解決する
- targetTags() : array<string|int, string>
- 移行対象のタグ値一覧を取得
Constants
TAG_TO_UNIT_TYPE
非推奨タグ値と移行先ユニットタイプの対応表
private
array<string, string>
TAG_TO_UNIT_TYPE
= ['pre' => 'code', 'none' => 'html', 'markdown' => 'markdown', 'wysiwyg' => 'wysiwyg']
Methods
resolveColumnType()
元の column_type("text" または column_add_type で追加された "text_xxx" 拡張ユニット指定子)と タグ値から、移行後の column_type を解決する。
public
static resolveColumnType(string $tag, string $originalColumnType[, bool $preserveExtendSpecifier = false ]) : string|null
column_add_type で追加した拡張ユニット(例: "text_extend")は detectUnitTypeSpecifier() の アンダースコア区切りで基底タイプ("text")を判定しつつ、column_type にはフル指定子がそのまま 保存される(Traits\Unit\UnitModelTrait::insertDataTrait 参照)。拡張指定子はテーマ側の 個別テンプレートブロック(unit#text_xxx)に対応するためのものだが、移行先タイプとの組み合わせ (例: unit#wysiwyg_xxx)はテーマに存在しないことが多く、指定子を引き継ぐと何も表示されなくなる リスクがある。そのため既定では指定子を落とし、テーマ側で移行先の拡張ブロックを用意済みの場合の み $preserveExtendSpecifier で維持できるようにする。
Parameters
- $tag : string
- $originalColumnType : string
- $preserveExtendSpecifier : bool = false
-
拡張ユニット指定子を移行後も維持するか
Return values
string|null —対象外のタグ値、またはテキストユニット以外の場合は null
resolveUnitType()
タグ値から移行先のユニットタイプを解決する
public
static resolveUnitType(string $tag) : string|null
Parameters
- $tag : string
Return values
string|null —対象外のタグ値の場合は null
targetTags()
移行対象のタグ値一覧を取得
public
static targetTags() : array<string|int, string>