WordPress如何设置一次ACF以在所有页面上显示

时间:2018-10-09 21:28:01

标签: wordpress advanced-custom-fields

我有一个custom-field,其类型为Repeater,我想在所有页面的页眉和页脚中显示它们。在后端,我将Show this field group if设置为

- Post type is equal to page
- Post type is not equal to page

这给了我两个问题:

1)自定义字段显示在后端的每个Page

2)我必须在每个页面上添加相同的内容,以使其出现在页眉和页脚中

所以,我的愿望是,我只需要添加一次内容,例如Frontpage,然后将其显示在所有页面的页眉和页脚中。我该如何实现?

1 个答案:

答案 0 :(得分:2)

您可以通过在ACF调用中指定页面ID来访问另一个页面的自定义字段。

IE:

db.getCollection('collection').aggregate({
    $match: {
        /* some criteria that you currently get in the "Expression<Func<BsonDocument, bool>> filter" */
    }
}, {
    $sort: {
        "ModifiedDate": -1 // this will use the index!
    }
}, {
    $group: {
        "_id": "$Id",
        "document": { $first: "$$ROOT" } // no need to do a separate subsequent query or a $max/$min across the entire group because we're sorted!
    }
}, {
    $match: { // some additional filtering depending on your needs
        "document.Status": { $ne: "Delete" }
    }
})

因此,您只需要在一个页面上输入内容,然后使用上面的代码在其他页面上显示该内容(只需将<?php the_field('field_name', 123); ?> 替换为您要从中提取内容的页面ID)即可。

Read more about it here

或者,您可以使用ACF Options Page完成此操作。