Documentation for Exelana Kick Start Cart plugin exksc.php Plugin Implementation creates ExelanaKickStartCart object (extends Exelana class) options.php exksc_settings_page() returns array passed to EXKSC::init_settings_page exksc_options($version) returns array passed to EXKSC::init_options_list uninstall.php Plugin Uninstall currently does nothing The ExelanaKickStartCart object (via Exelana::init): - initialize options - conditionally enable debugging - call Exelana::init - initialize options configuration processing - initialize database processing - generate machine ID (unless bot or cron) - initialize KSC API During standard processing (that is, website accessed from a browser), WordPress will call plugin functions as requested by calls to Exelana::addAction (WordPress add_action) and Exelana::addFilter (WordPress add_filter). During non-standard processing, standalone scripts will call Exelana::implementStandalone to load WordPress and call the appropriate implementation function. =================================================================================================================== Standalone Scripts ------------------ File Implementation * Output Admin Description ---- -------------- ------ ----- ----------- action.php EXKSC::processAjax json process AJAX requests cmd.php EXKSC::processCommand location process commands from Kick Start Cart create_user.php EXKSC::loginUser location create a new user (after purchase) download.php EXKSC::processDownload file process download requests dump.php EXKSC-Dump::runDump html Y dumps information about site list.php EXKSC-List::runList html/text Y lists errors & logs (errors use text) login_user.php EXKSC::loginUser location logs in a newly created user notify.php EXKSC::processNotification (nothing) process order notifications from Kick Start Cart test.php EXKSC-Test::run_test html Y self-contained file for quick and dirty PHP testing Debugging Implementation Output Admin Description --------- -------------- ------ ----- ----------- analyze.php processAnalysis json respond to analysis messages dbqa.php EXKSC-QA::runTest html runs database QA free.php free html sets option free_content_dir to '/assets/' Class Definitions ----------------- File Defines class Extends class ---- ------------- ------------- dbqa.php ExelanaDBQA Exelana dump.php ExelanaKickStartCartDump ExelanaKickStartCart list.php ExelanaKickStartCartList ExelanaKickStartCart test.php ExelanaKickStartCartTesting ExelanaKickStartCart include/exelana_class.php Exelana include/exelana_db_class.php ExelanaDB include/exelana_db_qa.php ExelanaDBQA Exelana include/exksc_class.php ExelanaKickStartCart Exelana include/exksc_dump_class.php ExelanaKickStartCartDump ExelanaKickStartCart include/exksc_list_class.php ExelanaKickStartCartList ExelanaKickStartCart include/exksc_testing_class.php ExelanaKickStartCartTesting ExelanaKickStartCart Notes ----- * EXKSC in the Implementation column above is an abbreviation for ExelanaKickStartCart; the hyphen is added for readabilty and does not appear in the class name. Each standalone script creates ExelanaKickStartCart object and calls Exelana::implement_standalone. The scripts noted above under Admin require a logged-in administrator, logged in account with debugging enabled, or remote access. Some scripts call Exelana::setOutput(null) to block debugging messages that would interfere with the processing of the script; these scripts call Exelana::setOutput with an appropriate value (see "Output" above) once the "Implementation" routine has been called. cmd.php is included by /cmd.php (created by EXKSC::exksc_activate during activation) Used if Domain Masking is enabled in KSK Settings > Domain Masking (currently disabled for Impax) notify.php is included by /notify.php (created by EXKSC::activate during activation) Used if notifications are enabled in KSK My Account > API Settings (currently enabled for Impax) =================================================================================================================== Analysis Requests ----------------- The theme script js/impax.js can be enabled to analyze style usage on a page and transmit it to the server using analyze.php, which stores the results in exksc/logs/analysis.logs. The analysis can then be processed by Tony's analyzeCSS Perl script. Note: This analysis generates a LOT of data and should only be enabled in js/impax.js when the site is actively being analyzed. =================================================================================================================== Debugging Bar Icons \f107 Globals exelana_class.php \f108 Options exelana_class.php \f111 Tables exelana_db_class.php \f115 Evaluator exelana_class.php \f163 Actions exelana_class.php \f174 API KickStartCartAPI.php \f179 Queries exelana_db_class.php \f491 Output exelana_class.php \f534 Errors exelana_class.php \f536 Filters exelana_class.php Kick Start Cart Settings -> Troubleshooting -> Filtering (enabled by Exelana::enable_filter_tracking) See https://developer.wordpress.org/resource/dashicons/