Multisite – Multiple logo?

The possibilities to set a favicon are different. I think the best way is about a plugin. Also here give it more possibilities.

  1. You can use this plugin, that enhance the customizer to set a Favicon.
  2. Use this plugin, enhance more as only the favicon
  3. Custom plugin, see the code hints below. The follow example set a favicon from the theme path of each blog. The path to the stylesheet (get_stylesheet_directory*) is the key here. You can also change this path to your requiremtents.

    add_action( 'wp_head', 'fb_set_favicon' );
    /**
     * Set Favicon from theme directory
     */
    function fb_set_favicon() {
    
        $stylesheet_dir_uri = get_stylesheet_directory_uri();
        $stylesheet_dir     = get_stylesheet_directory();
        $favicon            = '/favicon.ico';
        $output="";
    
        if ( file_exists( $stylesheet_dir . $favicon ) ) {
            $output .= '<link rel="shortcut icon" type="image/x-icon" href="'
                . esc_url( $stylesheet_dir_uri . $favicon ) . '" />';
            $output .= '<style>';
        }
    
        echo $output;
    }
    
  4. It is also possible to set a favicon for each site in the network. But a switch about each site is non performant, is heavy for the system. You find a solution for this scenario in this class, that switch about all sites in the network and add a favicon to the admin bar, each site get a icon.