humanmade / network-media-library

Network Media Library plugin for WordPress Multisite
MIT License
290 stars 55 forks source link

Filters not working, unable to change site ID #76

Open matt-oakley-99 opened 4 years ago

matt-oakley-99 commented 4 years ago

Hi

I have been experimenting with the plugin but only been able to get it to work if hard code the site ID constant.

Could you maybe provide some support / direction on where i may be going wrong.

I have tried both the following:

add_filter( 'network-media-library/site_id', function( $site_id ) {
    return 18;
} );
add_filter( 'network-media-library/site_id', array( $this, 'multi_media_network_side_id' ), 999, 1 );

public function multi_media_network_side_id( $site_id ) {
    $site_id = (int) get_theme_mod( 'network_media_id' );

    if ( false !== $site_id ) {
        return $site_id;
    }

    return 0;
}

After some debugging the site id filter is being run but does not seem to be applying it the variable.

artifex404 commented 4 years ago

Do you have the Class setup properly? Maybe you should try a plain function:

add_filter( 'network-media-library/site_id', function( $site_id ) {
    $site_id = (int) get_theme_mod( 'network_media_id' );

    if ( false !== $site_id ) {
        return $site_id;
    }

    return 0;
} );

Make sure the function get_theme_mod() actually returns the correct int.