Automattic\WooCommerce\Internal\ProductDownloads\ApprovedDirectories\Admin
SyncUI::add_tools()
Adds Approved Directory list-related entries to the tools page.
Метод класса: SyncUI{}
Хуков нет.
Возвращает
Массив
.
Использование
$SyncUI = new SyncUI(); $SyncUI->add_tools( $tools ): array;
- $tools(массив) (обязательный)
- Admin tool definitions.
Код SyncUI::add_tools() SyncUI::add tools WC 9.7.1
public function add_tools( array $tools ): array { $sync = wc_get_container()->get( Synchronize::class ); if ( ! $sync->in_progress() ) { // Provide tools to trigger a fresh scan (migration) and to clear the Approved Directories list. $tools['approved_directories_sync'] = array( 'name' => __( 'Synchronize approved download directories', 'woocommerce' ), 'desc' => __( 'Updates the list of Approved Product Download Directories. Note that triggering this tool does not impact whether the Approved Download Directories list is enabled or not.', 'woocommerce' ), 'button' => __( 'Update', 'woocommerce' ), 'callback' => array( $this, 'trigger_sync' ), 'requires_refresh' => true, ); $tools['approved_directories_clear'] = array( 'name' => __( 'Empty the approved download directories list', 'woocommerce' ), 'desc' => __( 'Removes all existing entries from the Approved Product Download Directories list.', 'woocommerce' ), 'button' => __( 'Clear', 'woocommerce' ), 'callback' => array( $this, 'clear_existing_entries' ), 'requires_refresh' => true, ); } else { // Or if a scan (migration) is already in progress, offer a means of cancelling it. $tools['cancel_directories_scan'] = array( 'name' => __( 'Cancel synchronization of approved directories', 'woocommerce' ), 'desc' => sprintf( /* translators: %d is an integer between 0-100 representing the percentage complete of the current scan. */ __( 'The Approved Product Download Directories list is currently being synchronized with the product catalog (%d%% complete). If you need to, you can cancel it.', 'woocommerce' ), $sync->get_progress() ), 'button' => __( 'Cancel', 'woocommerce' ), 'callback' => array( $this, 'cancel_sync' ), ); } return $tools; }