高级自定义字段(ACF)css

时间:2017-04-10 16:42:30

标签: css wordpress advanced-custom-fields

我一直试图找出如何从ACF添加PHP来为CSS中的一些文本设置样式。使用:https://www.advancedcustomfields.com/resources/color-picker/

.special-color {
    background-color: <?php the_field('color'); ?>;
}

2 个答案:

答案 0 :(得分:1)

要将php回复到可行的CSS中,您必须将CSS包含在站点的php部分中(或更高级的内容,可能使用functions.php)。如果您只是添加:

,这将有效
<style>
 .special-color {
  background-color: <?php the_field('color'); ?>;
 }
</style>

..(比方说)循环中的single.php文件。

顺便说一下,我认为这不是改变网站颜色的可行方法(如果这是你要做的事情?),但更多的是(比方说)指定标题的特定颜色一个帖子。

然后你可能会考虑包括样式INLINE(伪代码):

<h1 style="color: <?php the_field('color'); ?>">Post title</h1>

答案 1 :(得分:0)

只需获取当前帖子的“高级自定义字段”值(该元素的custom_color),然后使用JQuery更改元素的颜色。

所以我用以下代码在子主题中创建了一个新的js文件(custom_css.js):

jQuery(document).ready(function($) {
    console.log(css.custom_color);
    // add dynamic css to the elements

});

然后这是functions.php文件中的代码:

add_action('wp_enqueue_scripts', 'custom_css');
/* Get position details */
function custom_css() {
    wp_enqueue_script('custom_css', get_stylesheet_directory_uri() . '/js/custom_css.js', array('jquery'));
    wp_localize_script('custom_css', 'css', array(
        'admin_url'     => admin_url(),
        'custom_color'  => get_field('custom_color', get_queried_object_id() )
    ));

}