How can I disable new plugin and theme install, but allow updates?

This would probably make a job done, although using die is not the pretty way add_filter( ‘upgrader_package_options’, function( $options ) { if ( isset( $options[‘hook_extra’][‘action’] ) && $options[‘hook_extra’][‘action’] === ‘install’ && isset( $options[‘hook_extra’][‘type’] ) && in_array( $options[‘hook_extra’][‘type’], [ ‘plugin’, ‘theme’ ] ) { die(‘Plugins & Themes installation disabled!’); } return $options; } );

Allow users to give a dashboard widget a custom name using ACF

add_action( ‘wp_dashboard_setup’, ‘feed_dashboard_add_widgets’ ); function feed_dashboard_add_widgets() { $title = __( ‘My title’, ‘textdomain’ ); //by default title // if ACF is activated (prevent fatal) end your field not empty, define a new $title if ( function_exists( ‘get_field’ ) && ! empty( get_field(‘my_widget_name’ ) ){ $title = get_field(‘my_widget_name’ ); } wp_add_dashboard_widget( ‘dw_dashboard_widget_feed’, $title, ‘my_cool_widget’); }