如何通过Wordpress the_title();通过Gravity Form短代码进行标记

时间:2014-01-27 15:14:00

标签: php wordpress shortcode gravity

我正在尝试使用WP帖子标题动态填充Gravity表单中的不可见字段。现在我有:

<?php echo do_shortcode('[gravityform id="9" field_values="trip_of_interest=the_title();"]'); ?>

然而,这最终给了我“the_title();”的值,但是没有给我实际的标题本身。

修改:现在正在使用以下字段正确传递字段:

<?php echo do_shortcode('[gravityform id="9" title="false" field_values="trip_of_interest=' . the_title('','',FALSE) . '"]'); ?>

但是,如果帖子标题包含撇号,则传递的值只是该撇号之前的所有内容,而不是完整的标题。

2 个答案:

答案 0 :(得分:1)

你不能在这样的字符串中调用PHP函数。需要使用连接。

此外,您需要将可选的第三个参数设置为FALSE以返回而不是回显标题。

echo do_shortcode('[gravityform id="9" field_values="trip_of_interest=' . the_title('','',FALSE) . '"]'); ?>

答案 1 :(得分:1)

我确实将此添加为对jszobody评论的评论,但我认为为了清楚起见,我会将其添加到此处。

WordPress中的the_title()函数将标题回显到浏览器 - 这实际上不是你在此之后的功能。

有一个单独的函数get_the_title(),它将返回标题以用作另一个字符串的一部分,因此所需的代码将是:

<?php echo do_shortcode('[gravityform id="9" field_values="trip_of_interest=' . get_the_title() . '"]'); ?>