2017-07-06 16 views
0

prestashop 1.7で製品タイトルに#シンボルを使用させるには、どのファイルを調整または上書きする必要がありますか?プレスタショップ1.7をオーバーライドして製品タイトルに#を付けるには

私はGoogleを検索し、以前のバージョンのprestashop(validate.phpファイルの編集など)でさまざまな方法を試しましたが、いずれも違いがありませんでした。

私はprestashopフォーラムでこれを尋ねましたが、これはHTMLタグであるためにこれを無効にすることを推奨しないと言われ、シャープにミュージカルシンボルを使用するように言われましたが、音楽シンボルではなくハッシュタグシンボルを使用して人々を検索する結果となり、shopify(実際には同じ)のような他のプラットフォームでも同じ制限が適用されず、現在誰もそれについて話していません。

私はコーディングに新しいので、ステップバイステップガイドは素晴らしいと思いますのでご注意ください。私は可能な限り詳細にしようとしましたが、誰かがさらに情報を必要とする場合はお尋ねください。

コメントには、プレスタショップフォーラムの質問へのリンクがあります。 https://www.prestashop.com/forums/topic/617693-how-do-i-use-in-product-title/

+0

ようこそ! "私はprestashopフォーラムでこれを尋ねました" - その質問へのリンクを含めるとよいかもしれません。 – user5226582

+0

@ user5226582提案していただきありがとうございます、私は今、私がprestashopについて質問した質問へのリンクを含めました。 – Zanriken

答えて

0

私はこの同じ問題に遭遇したPrestaShopののV1.5 +

に製品名/タイトルフィールドに#記号を許可します。単純なオーバーライドを作成することでこれを修正できます。この方法でPrestashopのアップデートがインストールされ、必要に応じて機能するようにします。これにより、プライマリバックエンドコードは変更されず、単一の機能が拡張されます。

新しいファイルを作成し、名前を付けてValidate.php - 次のファイルを貼り付けます。

<?php 
class Validate extends ValidateCore 
{ 
    /** 
    * Check for product or category name validity 
    * 
    * @param string $name Product or category name to validate 
    * @return bool Validity is ok or not 
    */ 
    public static function isCatalogName($name) 
    { 
     return preg_match(Tools::cleanNonUnicodeSupport('/^[^<>;={}]*$/u'), $name); 
    } 
} 

この新しいファイルを保存/アップロードする必要があります。 /override/classes/Validate.php

最終ステップ:あなたは、単一のファイルを削除する必要があります。サーバーから/cache/class_index.phpを。このファイルは、管理領域の次回のロード時に自動的に再作成されます。新しいclass_indexに新しいオーバーライドが含まれ、製品名に#文字の商品を追加することができます。

That's It!

creating overrides in Prestashopについて学んでください。 class_index.phpファイルを削除することをためらっている場合は、心配しないでください。非常に一般的です。 You can read about deleting that file here

0

私が見つけた唯一の解決策は、このファイル内のパターンに変更することです:行145変更

pattern' => '/[<>;=#{}]/' 

\ SRC \ PrestaShopBundle \フォーム\管理\製品\ ProductInformation.php

ホー

pattern' => '/[<>;={}]/'

へpeヘルプ。 乾杯

関連する問題