LLMS_Admin_Post_Table_Courses::handle_bulk_actions( string $redirect_to, string $doaction, array $post_ids )

Exports courses from the Bulk Actions menu on the courses post table


Parameters Parameters

$redirect_to

(string) (Required) url to redirect to upon export completion (not used)

$doaction

(string) (Required) action name called

$post_ids

(array) (Required) selected post ids


Top ↑

Return Return

(null)


Top ↑

Source Source

File: includes/admin/post-types/post-tables/class.llms.admin.post.table.courses.php

	public function handle_bulk_actions( $redirect_to, $doaction, $post_ids ) {

		// Ensure it's our custom action.
		if ( 'llms_export' !== $doaction ) {
			return $redirect_to;
		}

		$data = array(
			'_generator' => 'LifterLMS/BulkCourseExporter',
			'_source'    => get_site_url(),
			'_version'   => LLMS()->version,
			'courses'    => array(),
		);

		foreach ( $post_ids as $post_id ) {

			$c                 = new LLMS_Course( $post_id );
			$data['courses'][] = $c->toArray();

		}

		$title = str_replace( ' ', '-', __( 'courses export', 'lifterlms' ) );
		$title = preg_replace( '/[^a-zA-Z0-9-]/', '', $title );

		$filename = apply_filters( 'llms_bulk_export_courses_filename', $title . '_' . current_time( 'Ymd' ), $this );

		header( 'Content-type: application/json' );
		header( 'Content-Disposition: attachment; filename="' . $filename . '.json"' );
		header( 'Pragma: no-cache' );
		header( 'Expires: 0' );

		echo json_encode( $data );

		die;

	}


Top ↑

Changelog Changelog

Changelog
Version Description
3.3.0 Introduced.

Top ↑

User Contributed Notes User Contributed Notes

You must log in before being able to contribute a note or feedback.