2

URLのスラッグで動作する多言語symfony 2 eコマースサイトに取り組んでいます。

現在、両方の言語の動作として、(製品名に基づく) 製品のスラッグも翻訳されています。だから私はこの種のURLを持っています:

  • 英語: example.com/en/products/english-product-name
  • 中国語: example.com/zh/products/chinese-product-name

スラッグは名前に基づいているため、翻訳テーブルに言語ごとに保存されます。私が望むのは、両方の言語で英語のスラッグのみを使用することです。私のエンティティファイルでは、次のようになります。

/**
 * @Gedmo\Translatable
 * @Gedmo\Sluggable(slugField="slug")
 * @ORM\Column(type="string", unique=true)
 */
private $name;

/**
 * @Gedmo\Translatable
 * @Gedmo\Slug
 * @ORM\Column(length=128, unique=true)
 */
private $slug;

スラッグと翻訳にStofDoctrineExtensionsBundleを使用しています。

翻訳できない追加のフィールドを作成し、(製品名の代わりに) スラッグのベースにすることを考えましたが、良い方法とは思えません。

4

0 に答える 0