Gedmo Slug从关系作为后缀

问题描述 投票:0回答:1

我需要从相关字段中生成Slug作为后缀,但我只能作为前缀。我配置了SlugHandler,如下所示。

/**
     * @ORM\Column(type="string", length=90, unique=true)
     * @Gedmo\Slug(handlers={
     *      @Gedmo\SlugHandler(class="Gedmo\Sluggable\Handler\RelativeSlugHandler", options={
     *          @Gedmo\SlugHandlerOption(name="relationField", value="category"),
     *          @Gedmo\SlugHandlerOption(name="relationSlugField", value="name"),
     *          @Gedmo\SlugHandlerOption(name="separator", value="-"),
     *          @Gedmo\SlugHandlerOption(name="urilize", value="true"),
     *      })
     * }, fields={"title"})
     */
    private $slug;

这段代码创建了如下的Slug:"category-name-title",但我需要它作为 "title-category-name"。

这可以实现吗?

symfony doctrine-orm doctrine
1个回答
0
投票

我不认为用现有的处理程序可以做到这一点。但你总是可以创建和使用你自己的自定义的 RelativeSlugHandler

class MyRelativeSlugHandler extends RelativeSlugHandler {
    public function transliterate($text, $separator, $object) {
        // change this method implementation as you like
    }
}

在注释中替换为 class 与您的自定义路径 MyRelativeSlugHandler

© www.soinside.com 2019 - 2024. All rights reserved.