You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Drupal专属Twig模板中获取带查询字符串的当前路径?

在Drupal Twig模板中获取带查询字符串的完整路径(无需PHP预处理)

直接用下面两种内置方式就行,不用写任何模块或theme的PHP代码:

  • 使用current_url()函数
    这是Drupal为Twig专门提供的内置函数,可直接获取包含查询字符串的完整当前URL(返回的是Url对象,调用.toString()可转为字符串格式):

    {# 直接获取字符串格式的完整URL(含域名、路径、查询参数) #}
    {% set fullUrl = current_url().toString() %}
    

    如果需要对URL进行修改等操作,可先保留对象再处理:

    {% set urlObj = current_url() %}
    {# 转为字符串路径 #}
    {% set fullPath = urlObj.toString() %}
    
  • 结合path()函数与app.request变量
    利用Drupal Twig环境中默认可用的app.request对象获取所有查询参数,再传递给path()函数生成带参数的路径:

    {# 获取仅包含路径和查询参数的字符串(不含域名) #}
    {% set fullPath = path('<current>', {'query': app.request.query.all()}) %}
    

    两种方式的区别:current_url()返回带域名的完整URL,而这种方式只返回路径+查询参数部分,可根据实际需求选择。

内容的提问来源于stack exchange,提问作者stkuser

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 13:50:28