使用Twig为WordPress wp_editor文本框设置初始值时变量未解析的问题
问题分析与解决方案
嘿,这个问题我之前也碰到过!核心问题在于你给wp_editor传递初始值的方式错了——你把Twig变量job_text包裹在了双引号字符串"{{ job_text }}"里,Twig不会解析字符串内部的模板语法,所以编辑器直接把{{ job_text }}当成了文本内容输出,而不是解析变量的值。
正确的写法
你需要直接把Twig变量作为wp_editor的第二个参数传递,不需要额外加模板标签或者引号:
{% set job_text = "test text" %} {{ fn('wp_editor', job_text, 'post_content', { 'textarea_name':'post_content', 'media_buttons': 0, 'wpautop':true, 'editor_height':'200px', 'quicktags': 0 } ) }}
额外说明
- 如果你的
job_text变量是动态获取的(比如从数据库、上下文或者其他来源),直接传递变量名就行,Twig会自动解析它的真实值并传给wp_editor函数。 - 如果变量内容包含HTML特殊字符,建议加上
escape过滤器确保内容正确渲染,比如:job_text|escape('html')。
内容的提问来源于stack exchange,提问作者Kir Mazur
相关产品推荐
相关产品推荐

