2

我正在开发一个多语言 symfony 2 电子商务网站,该网站使用 URL 的 slugs。

目前两种语言的行为是产品的 slug(基于产品名称)也被翻译。所以我有这种网址:

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

slug 基于名称,因此为每种语言保存在翻译表中。我想要的是只对两种语言都使用英语 slug。在我的实体文件中,它看起来像这样:

/**
 * @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用于我的 slug 和翻译。

我考虑过创建一个不可翻译的附加字段,并以此为基础(而不是产品名称),但这似乎不是一个好方法。

4

0 回答 0