如何在single.php中获取自定义字段?

时间:2018-01-18 21:32:24

标签: wordpress timber

我正在使用Wordpress Timber来构建我的wordpress主题,并希望如何在木材中获得自定义字段?我指的是php文件而不是twig模板文件。

是否有获取自定义字段的功能?现在这种方法不起作用:

$post = new TimberPost();
$post->some_custom_field_name;

1 个答案:

答案 0 :(得分:1)

当您有Timber帖子时,目前有3种不同的方式可以访问自定义字段值。在Twig中,它可能更容易编写,但最终,Twig在幕后被翻译为PHP,所以在PHP中肯定有一种方法!

1。通过酒店直接进入

当您创建新的Timber帖子时,Timber将使用可直接作为属性访问的自定义字段值自动填充您的帖子对象。

因此,如果您有一个名为some_custom_field_name的自定义字段,您应该能够以您尝试过的方式访问它:

$custom_field_value = $post->some_custom_field_name;

如果未设置您的值,您可以通过使用var_dump()转储内容来检查帖子上是否设置了属性:

var_dump( $post );

另请参阅Debugging Guide

2。通过custom属性

访问

Timber还将所有自定义字段值作为数组复制到帖子上名为custom的属性。所以你的领域也应该是这样的:

$custom_field_value = $post->custom['some_custom_field_name'];

3。通过meta方法访问

上述两种方法将直接返回数据库的值。如果您使用高级自定义字段之类的插件,则可能不需要数据库中的原始值,而是需要插件正确过滤的值。然后你应该使用meta() method

$custom_field_value = $post->meta('some_custom_field_name');