Routes 如何在extbase中从list plugin到showplugin获取参数,并避免在url中显示它?

Routes 如何在extbase中从list plugin到showplugin获取参数,并避免在url中显示它?,routes,typo3,fluid,extbase,typo3-9.x,seo,Routes,Typo3,Fluid,Extbase,Typo3 9.x,Seo,我在extbase扩展中有多个列表插件。列表1显示所有对象,列表2按属性a显示对象,列表3按属性b显示对象,依此类推。 为了显示对象的详细视图,我有一个show插件,所有列表插件都使用它 到目前为止,这是可行的。现在,我需要在show视图中显示一个面包屑,它显示的不是细节页面的根行,而是请求来自的列表页面的根行。我尝试将列表页面的页面Uid作为GET参数放在链接上,该链接调用detail页面,并在show操作中使用此Uid生成面包屑 <f:link.action pageUid="

我在extbase扩展中有多个列表插件。列表1显示所有对象,列表2按属性a显示对象,列表3按属性b显示对象,依此类推。 为了显示对象的详细视图,我有一个show插件,所有列表插件都使用它

到目前为止,这是可行的。现在,我需要在show视图中显示一个面包屑,它显示的不是细节页面的根行,而是请求来自的列表页面的根行。我尝试将列表页面的页面Uid作为GET参数放在链接上,该链接调用detail页面,并在show操作中使用此Uid生成面包屑

<f:link.action pageUid="123" pluginName="myPlugin" action="show" controller="myObject"
                   arguments="{object:object,listpid:listpid}">

现在我的问题是:有没有办法避免在URL中显示此参数?分别。我可以从URL生成中排除此参数吗。
或者我是否有其他机会在我的表演动作中获取列表pid?

否。你的表演动作需要这些信息。可以使用GET/POST,但必须以任何方式传输对象的UID


这个参数有什么问题?如果它看起来有点难看,你可以定义一个“发言URL”…

不。你的表演需要这些信息。可以使用GET/POST,但必须以任何方式传输对象的UID


这个参数有什么问题?如果它看起来有点难看,你可以定义一个“说话的URL”…

正如朱利安所指出的,你需要以某种方式传递数据。如果为了创建不同的面包屑而发送不同的
listpid
的唯一目的是为了创建不同的面包屑,并且您不想因为SEO而创建成倍的资源,那么您可以使用post表单技巧,而不是如中所示的普通链接,使用伪链接发送隐藏参数,您的HTML标记将如下所示:

.inline{
显示:内联;
}
.链接按钮{
背景:无;
边界:无;
颜色:蓝色;
文字装饰:下划线;
光标:指针;
字号:1em;
字体系列:衬线;
}
.链接按钮:焦点{
大纲:无;
}
.链接按钮:激活{
颜色:红色;
}

详细信息页

正如朱利安所指出的,您需要以某种方式传递数据。如果为了创建不同的面包屑而发送不同的
listpid
的唯一目的是为了创建不同的面包屑,并且您不想因为SEO而创建成倍的资源,那么您可以使用post表单技巧,而不是如中所示的普通链接,使用伪链接发送隐藏参数,您的HTML标记将如下所示:

.inline{
显示:内联;
}
.链接按钮{
背景:无;
边界:无;
颜色:蓝色;
文字装饰:下划线;
光标:指针;
字号:1em;
字体系列:衬线;
}
.链接按钮:焦点{
大纲:无;
}
.链接按钮:激活{
颜色:红色;
}

详细信息页

对象的Uid不是我的问题。我不希望列表pid出现在URL中。URL应该是这样的:domain.ltd/somepath/detail/object-name/,不带任何附加参数。对象的Uid不是我的问题。我不希望列表pid出现在URL中。URL应该是这样的:domain.ltd/somepath/detail/object-name/,没有任何附加参数。我对过滤器变量也有类似的问题:show视图中的反向链接应该使用与以前相同的过滤器打开列表视图。这是真正的seo问题,因为url中的附加过滤器变量将导致重复内容。最后,我使用了同样的方法:一个seo锚链接,只有show view所需的参数,一个实际链接的表单,所有过滤参数都是隐藏字段。谢谢@biesior的这个技巧。它是有效的,但正如你所描述的,我现在没有共同的联系。在我的例子中,除了搜索引擎的问题外,它还会生成无效的html,因为我使用了一个包含图像和文本的摘要元素周围的链接。有什么技巧可以处理这个问题吗?或者在这个小例子中我应该接受无效的html吗?postscript:你认为如何在我的链接摘要构造中隐藏假表单并用javascript处理表单的提交?然后,我将有一个有效的html和搜索引擎的链接,并可以传输我的参数虽然@biesior@m4a,它很可能会工作,请检查我的编辑,最后一部分;)@我现在也用类似的方式做了这件事。但是,用JS填充隐藏表单的action属性和隐藏字段的value属性,而不是在流体模板中设置它,有什么好处呢?我对过滤器变量也有类似的问题:show视图中的反向链接应该使用与以前相同的过滤器打开列表视图。这是真正的seo问题,因为url中的附加过滤器变量将导致重复内容。最后,我使用了同样的方法:一个seo锚链接,只有show view所需的参数,一个实际链接的表单,所有过滤参数都是隐藏字段。谢谢@biesior的这个技巧。它是有效的,但正如你所描述的,我现在没有共同的联系。在我的例子中,除了搜索引擎的问题外,它还会生成无效的html,因为我使用了一个包含图像和文本的摘要元素周围的链接。有什么技巧可以处理这个问题吗?或者在这个小例子中我应该接受无效的html吗?postscript:你认为如何在我的链接摘要构造中隐藏假表单并用javascript处理表单的提交?然后,我将有一个有效的html和搜索引擎的链接,并可以传输我的参数虽然@biesior@m4a,它很可能会工作,请检查我的编辑,最后一部分;)@我现在也用类似的方式做了这件事。但是,用JS填充隐藏表单的action属性和隐藏字段的value属性,而不是在流体模板中设置它,有什么好处呢?