質問 > 管理機能 > 商品説明の文字数制限を3000文字以上に変更したいです |
管理機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
2645dfd |
投稿日時: 2025/2/14 12:58
対応状況: 解決済
|
常連 ![]() ![]() 登録日: 2022/5/2 居住地: 投稿: 35 |
商品説明の文字数制限を3000文字以上に変更したいです ▼テンプレート
[EC-CUBE] EC-CUBE 4.2.1 [レンタルサーバ] エックスサーバー [OS] Windows [PHP] 8.1.29 [データベース] phpmyadmin(MySQL5.7) [導入プラグインの有無] おすすめ商品管理プラグイン 4.3.0 関連商品プラグイン 4.3.0 データ移行プラグイン 4.3.0 PGマルチペイメントサービス決済プラグイン 1.0.6 EC-CUBEペイメント決済プラグイン(4.2系) [カスタマイズの有無] 関係ないかもしれませんが商品説明でcssタグを使えるようにしてます [現象] 商品説明(description_detail)の文字数制限を変更したいです。 過去の質問を参考に以下のことを試しまして、保存時のエラーは表示されませんが、自動的に3000文字以下に切り捨てられてしまいます。 ■src/Eccube/Form/Type/Admin/ProductType.php
eccube_lltext_lenに変更 ■src/Eccube/Entity/Product.php
type="string", length=10000に変更 ■データベース構造はこの様になっています。 dtb_product.description_detail varcharvarchar(10000) ■参考にさせていただいた質問 https://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=27798&forum=11&post_id=110218#forumpost110218 https://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=24995&forum=11&post_id=101012#forumpost101012 proxy の再生成とスキーマ更新のコマンドを試しましてデータベースには反映されましたが、「composer dump-autoload」実行時にエラーがでたのでそれが原因かもしれません。 エラー: PHP Parse error: syntax error, unexpected '?' in vendor/symfony/flex/src/Flex.php on line 129 Parse error: syntax error, unexpected '?' in vendor/symfony/flex/src/Flex.php on line 129 該当の記述内容: vendor/symfony/flex/src/Flex.php on line 129
「??」部分がphpverが低いためのエラーかと考えましたが、「php -v」で確認してPHP 8.1.29 であると確認しました。 過去のご質問を参考に解決できると考えていましたが、ご助言いただけると幸いです。 |
mcontact |
投稿日時: 2025/2/17 17:03
対応状況: −−−
|
神 ![]() ![]() 登録日: 2022/1/22 居住地: 投稿: 1709 |
Re: 商品説明の文字数制限を3000文字以上に変更したいです 商品説明の文字数制限の改修だけであれば、
src/Eccube/Form/Type/Admin/ProductType.php src/Eccube/Entity/Product.php の改修と下記コマンド実行のみであり「composer dump-autoload」コマンドを実行する必要は基本的にないです。 rm -f app/proxy/entity/src/Eccube/Entity/*.php php bin/console cache:clear --no-warmup php bin/console eccube:generate:proxies php bin/console doctrine:schema:update --dump-sql php bin/console doctrine:schema:update --dump-sql --force
|
2645dfd |
投稿日時: 2025/3/13 15:59
対応状況: −−−
|
常連 ![]() ![]() 登録日: 2022/5/2 居住地: 投稿: 35 |
Re: 商品説明の文字数制限を3000文字以上に変更したいです ご返信ありがとうございます!確認遅くなりまして申し訳ありません。
その後、ProductType.phpをよく確認しましたらのlltext_lenが反映されておりませんでした。 このようにして、文字制限を1万文字にすることができました。 1万文字以上はエラー文章はでませんが、自動的に1万文字以下に削除される挙動のようでした。 ありがとうございました。 ■ファイル改修 ---src/Eccube/Form/Type/Admin/ProductType.php ->add('description_detail', TextareaType::class, [ 'purify_html' => true, 'constraints' => [ new Assert\Length(['max' => $this->eccubeConfig['eccube_lltext_len']]), ], ]) ---src/Eccube/Entity/Product.php /** * @var string|null * * @ORM\Column(name="description_detail", type="string", length=10000, nullable=true) */ private $description_detail; ■データベース dtb_product.description_detail varcharvarchar(10000) ■コマンドを実行 rm -f app/proxy/entity/src/Eccube/Entity/*.php php bin/console cache:clear --no-warmup php bin/console eccube:generate:proxies php bin/console doctrine:schema:update --dump-sql php bin/console doctrine:schema:update --dump-sql --force ■キャッシュ削除 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |