eighteen73 / custom-tables-api

A helper library for registering WordPress custom table CRUD pages with a simpler API

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

WordPress Custom Table API Class

Allows for easier creation of custom table CRUD pages by using an object oriented approach.

An example

use Eighteen73\CustomTablesApi\CustomTablesApi;

$custom_table = new CustomTablesApi(
	'my_custom_table',
	'My Custom Table Data',
	[
		'id' => [
			'type' => 'bigint',
			'length' => '20',
			'auto_increment' => true,
			'primary_key' => true,
		],
		'title' => [
			'type' => 'varchar',
			'length' => '50',
		],
		'status' => [
			'type' => 'varchar',
			'length' => '50',
		],
		'date' => [
			'type' => 'datetime',
		]
	],
	1,
	[
		'title' => [
			'label' => __( 'Title' ),
			'sortable' => 'title', // ORDER BY title ASC
		],
		'status' => [
			'label' => __( 'Status' ),
			'sortable' => [ 'status', false ], // ORDER BY status ASC
		],
		'date' => [
			'label' => __( 'Date' ),
			'sortable' => [ 'date', true ], // ORDER BY date DESC
		],
	]
);

add_action( 'ct_init', [ $custom_table, 'init' ] );

Credits

Heavily based on CT by Ruben Garcia.

About

A helper library for registering WordPress custom table CRUD pages with a simpler API

License:MIT License


Languages

Language:PHP 100.0%