Plugin / Kwik Framework
Kevin ChappellDescription
Description
Kwik Framework is a framework for rapid development of WordPress themes and Plugins. It lets you quickly create option pages with dynamic error handling, programmatically generate markup where needed and provides custom inputs for your theme or plugin.
Usage
Simply installing the plugin provides a robust API that lets you quickly create settings pages for you plugin or theme.
Generating Setting Page
add_action( 'admin_menu', 'my_plugin_add_admin_menu' );
add_action( 'admin_init', 'my_plugin_settings_init' );
function my_plugin_add_admin_menu() {
// add_submenu_page( 'edit.php?post_type=kwik-framework', __('Kwik Framework Settings', 'kwik'), __('Settings', 'kwik'), 'manage_options', 'kwik_framework', 'my-plugin' );
add_options_page('Kwik Framework Settings', 'Kwik Framework', 'manage_options', 'my-plugin', 'my-plugin'.'_settings');
}
function my_plugin_settings_init() {
$kwik_settings = new KwikSettings();
$defaultSettings = my_plugin_default_options();
$kwik_settings->settings_init(MyPlugin, 'my-plugin', $defaultSettings);
}
function kwik_framework_settings() {
$settings = my_plugin_get_options();
echo '<div class="wrap">';
echo KwikInputs::markup('h2', __('Framework Settings', 'kwik'));
echo KwikInputs::markup('p', __('Set the API keys and other options for your website. Kwik Framework needs these settings to connect to Google fonts and other APIs.','kwik'));
echo '<form action="options.php" method="post">';
settings_fields('my-plugin');
echo KwikSettings::settings_sections('my-plugin', $settings);
echo '</form>';
echo '</div>';
}
function my_plugin_get_options() {
return get_option('my-plugin', my_plugin_default_options());
}
function my_plugin_default_options() {
$my_plugin_default_options = array(
'section_1' => array(
'section_title' => __('Section One', 'kwik'),
'section_desc' => __('This is the description for section one.', 'kwik'),
'settings' => array(
'sec_1_first_option' => array(
'type' => 'text',
'title' => __('First Option', 'kwik'),
'value' => ''
),
'sec_2_second_option' => array(
'type' => 'text',
'title' => __('Second Option', 'kwik'),
'value' => ''
)
)
),
'section_2' => array(
'section_title' => __('Section Two', 'kwik'),
'section_desc' => __('This is the description for section two.', 'kwik'),
'settings' => array(
'sec_2_first_option' => array(
'type' => 'text',
'title' => __('Option One Title', 'kwik'),
'value' => ''
),
'sec_2_second_option' => array(
'type' => 'text',
'title' => __('Option Two Title', 'kwik'),
'value' => ''
)
)
)
);
return apply_filters('my_plugin_default_options', $kf_default_options);
}
That’s it. The above code block will add a new options page to your theme or plugin with automatic field validation. In this example, options are added to the my_plugin_default_options
multi-dimensional array. Type is defined as the input type to be used such as text
and select
but Kwik Framework also provides the following custom types img
, font
, toggle
, color
, link
, spinner
and nonce
. The custom inputs can be easily extended using the input
or multi
types and supplying your own attributes.
Generating markup
$inputs = new KwikInputs();
$link = $inputs->markup('a', "This is a link", array("class" => "test_link", href="http://test-site.com", "title" => "Test Title"));
echo $link;
Widgets
Latest Posts
Displays a list of posts. Features:
- Filter by category and tag
- date and read more formatting
- numerous options
Ratings
Rating breakdown
Details Information
DIRECTORY DISCLAIMER
The information provided in this THEME/PLUGIN DIRECTORY is made available for information purposes only, and intended to serve as a resource to enable visitors to select a relevant theme or plugin. wpSocket gives no warranty of any kind, express or implied with regard to the information, including without limitation any warranty that the particular theme or plugin that you select is qualified on your situation.
The information in the individual theme or plugin displayed in the Directory is provided by the owners and contributors themselves. wpSocket gives no warranty as to the accuracy of the information and will not be liable to you for any loss or damage suffered by you as a consequence of your reliance on the information.
Links to respective sites are offered to assist in accessing additional information. The links may be outdated or broken. Connect to outside sites at your own risk. The Theme/Plugin Directory does not endorse the content or accuracy of any listing or external website.
While information is made available, no guarantee is given that the details provided are correct, complete or up-to-date.
wpSocket is not related to the theme or plugin, and also not responsible and expressly disclaims all liability for, damages of any kind, arising out of the use, reference to, or reliance on, any information or business listed throughout our site.