Support

Account

Forum Replies Created

  • Solved. Here are the steps I took:

    I registered these options pages:

    /** Creates ACF Options Pages **/
    if( function_exists('acf_add_options_page') ) {
        
        acf_add_options_sub_page(array(
            'page_title'    => 'Posts Style',
            'menu_title'    => 'Posts Stylesheet',
            'parent_slug'   => 'edit.php',
            'capability'    => 'manage_options'
        ));
        
        acf_add_options_sub_page(array(
            'page_title'    => 'Portfolio Style',
            'menu_title'    => 'Portfolio Stylesheet',
            'parent_slug'   => 'edit.php?post_type=portfolio',
            'capability'    => 'manage_options'
        ));
        
        acf_add_options_sub_page(array(
            'page_title'    => 'Careers Style',
            'menu_title'    => 'Careers Stylesheet',
            'parent_slug'   => 'edit.php?post_type=careers',
            'capability'    => 'manage_options'
        ));
        
    }

    I created my ACF select fields:

    • singular_css
    • posts_css
    • portfolio_css
    • careers_css

    And they all share these dropdown values:

    • /custom-css/white.css : White
    • /custom-css/black.css : Black
    • /custom-css/blue.css : Blue
    • /custom-css/tan.css : Tan
    • /custom-css/gray.css : Gray

    This code in the functions.php file works:

    /** Enqueue Dynamic Stylesheet using ACF Field **/
    function dynamic_style()
    {
        if (is_singular()) {
            global $post;
            $singular_css = get_field('singular_css', $post->ID);
            wp_enqueue_style('singular_css', get_stylesheet_directory_uri(). $singular_css);
        } elseif (is_home()) {
            $posts_css = get_field('posts_css', 'option');
            wp_enqueue_style('posts_css', get_stylesheet_directory_uri(). $posts_css);
        } elseif (is_post_type_archive('portfolio')) {
            $portfolio_css = get_field('portfolio_css', 'option');
            wp_enqueue_style('portfolio_css', get_stylesheet_directory_uri(). $portfolio_css);
        } elseif (is_post_type_archive('careers')) {
            $careers_css = get_field('careers_css', 'option');
            wp_enqueue_style('careers_css', get_stylesheet_directory_uri(). $careers_css);
        } elseif (is_404()) {
            wp_enqueue_style('white_css', get_stylesheet_directory_uri(). '/custom-css/white.css');
        }
    }
    add_action('wp_enqueue_scripts', 'dynamic_style', 99);
  • I’ve tried these approaches, but neither are working:

    /** Enqueue Dynamic Stylesheet using ACF Field **/
    function singular_style() {
    	$singular_css = get_field('singular_css');
    	if (is_singular()) {
        wp_enqueue_style( 'singular_css', get_stylesheet_directory_uri(). $singular_css );
    	}
    }
    add_action( 'wp_enqueue_scripts', 'singular_style' );
    	
    function portfolio_style() {
        $portfolio_css = get_field('portfolio_css', 'option');
    	if (is_post_type_archive('portfolio')) {
        wp_enqueue_style( 'portfolio_css', get_stylesheet_directory_uri(). $portfolio_css );
    	}
    }
    add_action( 'wp_enqueue_scripts', 'portfolio_style' );	
    	
    function careers_style() {
        $careers_css = get_field('careers_css', 'option');	
    	if (is_post_type_archive('careers')) {
        wp_enqueue_style( 'careers_css', get_stylesheet_directory_uri(). $careers_css );
    	}
    }
    add_action( 'wp_enqueue_scripts', 'careers_style' );

    And this:

    /** Enqueue Dynamic Stylesheet using ACF Field **/
    function dynamic_style() {
    	$singular_css = get_field('singular_css');
        $portfolio_css = get_field('portfolio_css', 'option');
        $careers_css = get_field('careers_css', 'option');
    
    	if (is_singular()) {
        wp_enqueue_style( 'singular_css', get_stylesheet_directory_uri(). $singular_css );
    	}
    	elseif (is_post_type_archive('portfolio')) {
        wp_enqueue_style( 'portfolio_css', get_stylesheet_directory_uri(). $portfolio_css );
    	}
    	elseif (is_post_type_archive('careers')) {
        wp_enqueue_style( 'careers_css', get_stylesheet_directory_uri(). $careers_css );
    	}
    }
    add_action( 'wp_enqueue_scripts', 'dynamic_style' );
Viewing 2 posts - 1 through 2 (of 2 total)