/** * */ public function testGetSnippetsFromDirectory() { $snippets = Phpsnippets\Base::get_snippets(dirname(__FILE__) . '/dir1', '.snippet.php'); $this->assertTrue(count($snippets) == 4, 'There are 4 .snippet.php files in dir1'); $snippets = Phpsnippets\Base::get_snippets(dirname(__FILE__) . '/dir1', '.php'); $this->assertTrue(count($snippets) == 7, 'There are 7 .php files in dir1'); }
global $shortcode_tags; $existing_shortcodes = array_keys($shortcode_tags); // Load up data $ps_data = get_option(Phpsnippets\Base::db_key, array()); $defined_dirs = Phpsnippets\Base::get_value($ps_data, 'snippet_dirs', array()); $ext = Phpsnippets\Base::get_value($ps_data, 'snippet_suffix', '.php'); $include_built_in = Phpsnippets\Base::get_value($ps_data, 'show_builtin_snippets', true); // Set any placeholders we want to support in directory names Phpsnippets\Base::set_placeholder('ABSPATH', ABSPATH); // Get all snippets in all dirs $dirs = Phpsnippets\Base::get_dirs($defined_dirs, $include_built_in); PhpSnippets\Widget::setDirs($dirs); PhpSnippets\Widget::setExt($ext); // Loop thru each dir foreach ($dirs as $d => $d_exists) { $snippets = (array) Phpsnippets\Base::get_snippets($d, $ext); // Loop thru each file foreach ($snippets as $s) { Phpsnippets\Base::add_shortcode($s, $ext); } } // Register Ajax Calls Phpsnippets\Ajax::$controllers['dir_snippets'] = PHP_SNIPPETS_PATH . '/ajax-controllers/dir_snippets.php'; Phpsnippets\Ajax::$controllers['get_snippet_shortcode'] = PHP_SNIPPETS_PATH . '/ajax-controllers/get_snippet_shortcode.php'; Phpsnippets\Ajax::$controllers['list_snippets'] = PHP_SNIPPETS_PATH . '/ajax-controllers/list_snippets.php'; Phpsnippets\Ajax::$controllers['list_directory'] = PHP_SNIPPETS_PATH . '/ajax-controllers/list_directory.php'; foreach (Phpsnippets\Ajax::$controllers as $shortname => $path) { add_action('wp_ajax_' . $shortname, 'Phpsnippets\\Ajax::' . $shortname); } }); add_action('widgets_init', 'PhpSnippets\\Widget::register_this_widget');