예제 #1
0
 public function getHtml_helpPointImage($params = null, $content = null, $smarty = null, &$repeat = null, $template = null)
 {
     if (is_null($content) || empty($content)) {
         return;
     }
     $img = hiweb()->file()->getStr_pathBySearch(array(array($content, HIWEB_CORE_DIR . DIR_SEPARATOR . $content, HIWEB_CORE_DIR . DIR_SEPARATOR . 'inc' . DIR_SEPARATOR . $content, HIWEB_CORE_DIR . DIR_SEPARATOR . 'inc' . DIR_SEPARATOR . 'hiweb-core-wizard' . DIR_SEPARATOR . 'img' . DIR_SEPARATOR . $content, HIWEB_CORE_DIR . DIR_SEPARATOR . 'inc' . DIR_SEPARATOR . 'hiweb-core-wizard' . DIR_SEPARATOR . $content, HIWEB_DIR_ASSET . DIR_SEPARATOR . $content), array('', '.png', '.jpg')));
     if (is_string($img)) {
         return '<span class="hiweb-core-wizard-helpPoint hiweb-core-wizard-helpPointImage dashicons dashicons-editor-help"><span class="hiweb-core-wizard-helpPoint-content"><img src="' . hiweb()->file()->getStr_urlFromRealPath($img) . '"/></span></span>';
     } else {
         hiweb()->console()->error(array('hiweb->wizard->getHtml_helpPointImage', 'error : file [' . $content . '] don\'t find...', hiweb()->getStr_debugBacktraceFunctionLocate()));
     }
 }
예제 #2
0
 public static function do_removeJob($job = '')
 {
     if (hiweb()->string()->getBool_isRegex($job)) {
         $jobs = self::getArr_jobs();
         foreach ($jobs as $j) {
             if (preg_match($job, $j) > 0) {
                 unset($jobs[array_search($job, $jobs)]);
             }
         }
         return self::do_saveJobs($jobs);
     } else {
         if (self::getBool_jobExists($job)) {
             $jobs = self::getArr_jobs();
             unset($jobs[array_search($job, $jobs)]);
             return self::do_saveJobs($jobs);
         } else {
             return false;
         }
     }
 }
예제 #3
0
    function scpt_site_settings_page()
    {
        global $scpt_plugin;
        if (!current_user_can('manage_options')) {
            wp_die(__('You do not have sufficient permissions to access this page.'));
        }
        hiweb()->file()->inc('class-hiwebsptfont');
        ?>
		<div class="wrap">
			<div id="icon-scpt" class="icon32"><br /></div>
			<h2>SuperCPT Settings</h2>

			<h3 class="nav-tab-wrapper">
				<a class="nav-tab nav-tab-active" href="#scpt_icons">Icons</a>
			</h3>

			<div id="scpt_icons">
				<?php 
        do_action('scpt_plugin_icon_demos');
        ?>
			</div>
		</div>
		<?php 
    }
예제 #4
0
 /**
  * Возвращает URL с измененным QUERY фрагмнтом
  * @param null $url
  * @param array $addData
  * @param array $removeKeys
  * @return string
  *
  * @version 1.1
  */
 public function getStr_urlQuery($url = null, $addData = array(), $removeKeys = array())
 {
     return hiweb()->url()->getStr_urlQuery($url, $addData, $removeKeys);
 }
예제 #5
0
 /**
  * Чтение / запись в файл JSON, учитывая поиск
  * @param null $mix - если не указывать или оставить значние NULL, то будет произведен поиск файла и чтение из него информации. Если задать значение (кроме NULL), то в файл будет сохранена указанная переменная в формате JSON
  * @param null $path - если указать имя файла, то он будет учавствовать в поиске для чтения/записи в файл
  * @param bool $beautyJSON
  * @return null
  */
 public function json($path = null, $mix = null, $beautyJSON = true)
 {
     if (is_null($mix)) {
         $debugTrace = array_merge(hiweb()->getArr_debugBacktrace(0, 0, 1, 0, 0, 0, 2, 2, DIR_SEPARATOR), hiweb()->getArr_debugBacktrace(1, 1, 0, 0, 0, 0, 3, 3, DIR_SEPARATOR));
         $searchFile = $this->getStr_pathBySearch(array(array($path, ''), array('', dirname(hiweb()->array2()->getVal(debug_backtrace(), array(0, 'file')))), array_merge(array(''), $debugTrace), array(DIR_SEPARATOR . $path, '.tpl', '')), 1, 0);
         if (is_string($searchFile)) {
             return $this->getMix_fromJSONFile($searchFile);
         }
     } else {
         if (is_null($path) || !file_exists($path) || !is_file($path) || !$this->getStr_fileExtension($path) == 'json') {
             $debugTrace = array_merge(hiweb()->getArr_debugBacktrace(0, 0, 1, 0, 0, 0, 2, 2, DIR_SEPARATOR), hiweb()->getArr_debugBacktrace(1, 1, 0, 0, 0, 0, 3, 3, DIR_SEPARATOR));
             $dir = dirname(hiweb()->array2()->getVal(debug_backtrace(), array(0, 'file')));
             $searchPath = $this->getStr_pathBySearch(array($dir, array_merge($debugTrace, array(''))), 0, 1);
             if (is_string($searchPath)) {
                 if (is_null($path)) {
                     $path = basename($searchPath);
                 }
                 if ($this->getStr_fileExtension($path) != 'json') {
                     $path .= '.json';
                 }
                 $path = $searchPath . DIR_SEPARATOR . $path;
             }
             return $this->do_varExportToFile($path, $mix, $beautyJSON);
         }
     }
     return null;
 }
예제 #6
0
 /**
  * Отправить почту
  * @version 1.8
  * @param null $to - адрес ящика, либо 'mail1@mail.ru,mail2@mail.ru...', либо array(mail1@mail.ru, mail2@mail.ru, ...)
  * @param string $theme - тема сообщения
  * @param string $htmlContent - содержимое письма (поддерживает формат HTML)
  * @return bool
  */
 function do_mail($to = null, $theme = 'тема письма', $htmlContent = 'текст сообщения', $from = null)
 {
     if (is_null($to)) {
         return false;
     }
     if (is_string($to) && strpos($to, ',') !== false) {
         $to = explode(',', $to);
     }
     if (!is_array($to)) {
         $to = array($to);
     }
     $firstMail = null;
     $alreadySendMail = array();
     foreach ($to as $mail) {
         if (is_null($firstMail)) {
             $firstMail = $mail;
         }
         if (in_array($mail, $alreadySendMail)) {
             continue;
         }
         $alreadySendMail[] = $mail;
     }
     //$to =  array_shift($alreadySendMail);
     $from = hiweb()->string()->getStr_ifEmpty($from, '"' . get_bloginfo('name') . '" <' . get_bloginfo('admin_email') . '>');
     $r = true;
     ///
     foreach ($alreadySendMail as $mail) {
         $boundary = "--" . md5(uniqid(time()));
         // генерируем разделитель
         $headers = "MIME-Version: 1.0\n";
         $headers .= "Content-Type: multipart/mixed; boundary=\"{$boundary}\"\n";
         //$headers .="To: ".$mail."\n";
         $headers .= "From: {$from}\n";
         $headers .= "Reply-To: {$from}\n";
         $headers .= "X-Mailer: PHP/" . phpversion() . "\n";
         $multipart = "--{$boundary}\n";
         $multipart .= "Content-Type: text/html; charset=utf-8\n";
         $multipart .= "Content-Transfer-Encoding: Quot-Printed\n\n";
         $multipart .= "{$htmlContent}\n\n";
         $message_part = '';
         $multipart .= $message_part . "--{$boundary}--\n";
         $r = $r && mail($mail, $theme, $multipart, $headers) ? true : false;
     }
     return $r;
 }
예제 #7
0
 /**
  * Возвращает массив URL частей array(dirs => [...], args => [key => val,...])
  * @param string $url - укажите URL по необходимости, либо он будет взят из текущего адреса
  * @param string $dirsORargs - если указать 'dirs' или 'args', то из всего массива будет вернут только соответствующий массив
  * @param string $dirsORargsKey - если после указания аргумента $dirsORargs вложенный ключ указанного массива, будет вернуто только значение данного ключа
  * @return array|string
  * @version 2.0
  */
 public function getArr_requestUri($url = null, $dirsORargs = null, $dirsORargsKey = null)
 {
     $urlRequest = trim(str_replace($this->getStr_baseUrl(), '', hiweb()->string()->isEmpty($url) ? $this->getStr_urlFull() : $url), '/');
     $dirs = array();
     $args = array();
     if (strpos($urlRequest, '?') !== false) {
         list($dirs, $params) = explode('?', $urlRequest);
         foreach (explode('&', $params) as $pair) {
             list($k, $v) = explode('=', $pair);
             $args[$k] = $v;
         }
     } else {
         $dirs = $urlRequest;
     }
     $dirs = trim($dirs, '/');
     if (is_null($dirsORargs)) {
         return array('dirs' => explode('/', $dirs), 'query' => $args);
     } else {
         if (is_null($dirsORargsKey)) {
             return hiweb()->getVal_fromArr(array('dirs' => explode('/', $dirs), 'query' => $args), $dirsORargs);
         } else {
             return hiweb()->getVal_fromArr(array('dirs' => explode('/', $dirs), 'query' => $args), array($dirsORargs, $dirsORargsKey));
         }
     }
 }
예제 #8
0
 function start_el(&$output, $item, $depth = 0, $args = array(), $id = 0)
 {
     $indent = $depth ? str_repeat("\t", $depth) : '';
     $class_names = $value = '';
     $classes = empty($item->classes) ? array() : (array) $item->classes;
     if (in_array('menu-item-has-children', $classes)) {
         hiweb()->file()->js('hiweb-submenu');
     }
     if (in_array('menu-item-has-children', $classes)) {
         hiweb()->file()->css('hiweb-submenu');
     }
     $class_names = join(' ', apply_filters('nav_menu_css_class', array_filter($classes), $item));
     $class_names = ' class="' . esc_attr($class_names) . '"';
     $selectDataTag = get_the_ID() == $item->object_id ? 'data-select="1"' : '';
     $selectSubDataTag = in_array($item->object_id, hiweb()->wp()->getArr_parentsPostId()) ? 'data-subselect="1"' : '';
     $output .= $indent . '<li data-depth="' . $depth . '" ' . $selectDataTag . ' ' . $selectSubDataTag . ' id="menu-item-' . $item->ID . '"' . $value . $class_names . '>';
     $attributes = !empty($item->attr_title) ? ' title="' . esc_attr($item->attr_title) . '"' : '';
     $attributes .= !empty($item->target) ? ' target="' . esc_attr($item->target) . '"' : '';
     $attributes .= !empty($item->xfn) ? ' rel="' . esc_attr($item->xfn) . '"' : '';
     $attributes .= !empty($item->url) ? ' href="' . esc_attr($item->url) . '"' : '';
     $attributes .= !empty($item->custom) ? $item->custom : '';
     $prepend = '';
     $append = '';
     $description = !empty($item->description) ? '<span>' . esc_attr($item->description) . '</span>' : '';
     if ($depth != 0) {
         $description = $append = $prepend = "";
     }
     $item_output = $args->before;
     $item_output .= '<a data-depth="' . $depth . '"' . $attributes . ' >';
     $item_output .= $args->link_before . $prepend . apply_filters('the_title', $item->title, $item->ID) . $append;
     $item_output .= $description . $args->link_after;
     $item_output .= '</a>';
     $item_output .= $args->after;
     $output .= apply_filters('walker_nav_menu_start_el', $item_output, $item, $depth, $args);
 }
예제 #9
0
 /**
  * Возвращает содержимое ответа сервера
  * @param $url - запрашиваемый URL
  * @param null $postData - POST переменные
  *
  * @param int $redirectCount
  * @return array
  *
  * @version 1.4
  */
 function getArr_contentFromURL($url, $postData = null, $redirectCount = 0)
 {
     $urlOld = $url;
     $url = hiweb()->string()->getStr_urlNormal($url);
     if ($url == false) {
         return false;
     }
     if (self::$cookieFile == false) {
         self::$cookieFile = WP_CONTENT_DIR . self::$cacheDir . 'cookie' . self::$cacheFileExtension;
     }
     //$fileCache = BASE_DIR.DIR_SEPARATOR.self::$cacheDir.DIR_SEPARATOR.hiweb()->string()->getStr_allowSymbols($url).self::$cacheFileExtension;
     $urlParse = parse_url($url);
     ////
     $ch = curl_init($url);
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
     curl_setopt($ch, CURLOPT_HEADER, true);
     curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
     curl_setopt($ch, CURLOPT_REFERER, 'https://' . $urlParse['host'] . '/index.php');
     curl_setopt($ch, CURLOPT_COOKIEFILE, self::$cookieFile);
     curl_setopt($ch, CURLOPT_COOKIEJAR, self::$cookieFile);
     curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
     curl_setopt($ch, CURLOPT_HTTPHEADER, array('Expect:'));
     if (is_array($postData) || is_string($postData)) {
         $postData = is_array($postData) ? http_build_query($postData) : $postData;
         curl_setopt($ch, CURLOPT_POST, true);
         curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);
     }
     //curl_setopt($ch, CURLOPT_VERBOSE, true);
     //curl_setopt($ch, CURLOPT_POST, 1);
     //curl_setopt($ch, CURLOPT_NOBODY,true);
     //curl_setopt($ch, CURLOPT_POSTFIELDS, base::get_strParam($postData));
     //curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
     //
     $response = curl_exec($ch);
     $header_size = curl_getinfo($ch, CURLINFO_HEADER_SIZE);
     curl_close($ch);
     if (!$response) {
         return false;
     }
     $headerArr = $this->getArr_headersFromCurl(substr($response, 0, $header_size));
     ///Redirect Way
     if (in_array(hiweb()->array2()->getVal($headerArr, array('http_code_arr', 'code')), array(301, 302, 303)) && $redirectCount > 0) {
         return $this->getArr_contentFromURL(hiweb()->array2()->getVal($headerArr, 'location'), $postData, intval($redirectCount) - 1);
     }
     ///Else No Redirect
     $body = substr($response, $header_size);
     //
     $r = array('url' => $url, 'urlOld' => $urlOld, 'urlParse' => $urlParse, 'postData' => $postData, 'response' => $response, 'headers' => $headerArr, 'dataLength' => is_string($body) ? mb_strlen($body) : 0, 'data' => $body);
     ////
     return $r;
 }
예제 #10
0
 /**
  * Вывести в консоль ошибку
  * @param $info - информация
  * @param bool $debugMod - дополнительная информация
  *
  * @version 1.1
  */
 public function error($info, $debugMod = false)
 {
     $this->_errors[] = $info;
     $this->mess['error'][] = $info;
     $this->_mess[] = array('data' => $info, 'type' => 'error', 'debug' => $debugMod, 'microtime' => microtime(1), 'file' => hiweb()->getStr_debugBacktraceFunctionLocate(2), 'function' => hiweb()->getStr_debugBacktraceFunctionTrace(2));
 }
예제 #11
0
 /**
  * Возвращает путь до корневой папки плагина, если указать хотябы на один из файлов самого плагина
  * @param $file - путь до одного из файлов плагина
  * @return bool|null
  */
 public function getStr_pluginRootDir($file)
 {
     $file = hiweb()->file()->getStr_normalizeDirSeparates(hiweb()->file()->getStr_realPath($file));
     $plugDir = hiweb()->file()->getStr_normalizeDirSeparates(hiweb()->file()->getStr_realPath(WP_PLUGIN_DIR));
     if (strpos($file, $plugDir) === false) {
         return false;
     }
     ///
     return $plugDir . DIR_SEPARATOR . hiweb()->array2()->getVal_byIndex(hiweb()->array2()->explodeTrim(DIR_SEPARATOR, str_replace($plugDir, '', $file), 0, 0), 0);
 }
예제 #12
0
 public function do_titleFilter($title, $id = null)
 {
     if (!is_null($id) && !is_admin()) {
         $meta = array_merge(array('hiweb_cms_title_mod' => 'default', 'hiweb_cms_title' => ''), hiweb()->wp()->getArr_postMeta($id));
         if ($meta['hiweb_cms_title_mod'] == 'default') {
             return $title;
         }
         if ($meta['hiweb_cms_title_mod'] == 'none') {
             return '';
         }
         if ($meta['hiweb_cms_title_mod'] == 'custom') {
             return $meta['hiweb_cms_title'];
         }
     } else {
         return $title;
     }
     return $title;
 }
예제 #13
0
 /**
  * @param $id
  * @param array $field -> array(post_type => mix, post_taxonomy => mix)
  * @param null $optionsId
  * @return string|void
  */
 public function _terms_posts($id, $field = array(), $optionsId = null)
 {
     $field = $this->getArr_field($field);
     if (is_null(hiweb()->array2()->getVal($field, 'post_type'))) {
         $field['post_type'] = array_keys(get_post_types());
     }
     if (is_null(hiweb()->array2()->getVal($field, 'post_taxonomy'))) {
         $field['post_taxonomy'] = get_object_taxonomies($field['post_type']);
     }
     foreach (get_terms($field['post_taxonomy'], array('hide_empty' => false, 'childless' => true)) as $t) {
         $terms[$t->term_id] = $t;
     }
     $field['options'] = $this->getArrPosts_byTerms($field['post_type']);
     $input = $this->_tokenize($id, $field);
     return hiweb()->file()->getHtml_fromTpl(get_defined_vars(), 'types/_taxonomies_posts');
 }
예제 #14
0
 /**
  * Initialize a Custom Post Type
  *
  * @uses SCPT_Markup::labelify
  * @param string $type The Custom Post Type slug. Should be singular, all lowercase, letters and numbers only, dashes for spaces
  * @param string $singular Optional. The singular form of our CPT to be used in menus, etc. If absent, $type gets converted to words
  * @param string $plural Optional. The plural form of our CTP to be used in menus, etc. If absent, 's' is added to $singular
  * @param array|bool $register Optional. If false, the CPT won't be automatically registered. If an array, can override any of the CPT defaults. See {@link http://codex.wordpress.org/Function_Reference/register_post_type the WordPress Codex} for possible values.
  * @return \hiweb_cpt_type
  */
 public function type($type, $singular = false, $plural = false, $register = array())
 {
     hiweb()->file()->asset('font-awesome', null, 'font-awesome.min');
     hiweb()->file()->js('js/supercpt');
     return new hiweb_cpt_type($type, $singular, $plural, $register);
 }
예제 #15
0
 public function getHtml_footerErrors()
 {
     echo implode('', hiweb()->error()->footerErrorsHtml);
 }
예제 #16
0
<?php

/**
 * Created by PhpStorm.
 * User: denmedia
 * Date: 09.04.2015
 * Time: 9:55
 */
////DIRs
define('BASE_DIR', hiweb()->getStr_baseDir());
define('HIWEB_DIR', dirname(dirname(__FILE__)));
define('HIWEB_CORE_DIR', dirname(dirname(__FILE__)));
define('HIWEB_DIR_CACHE', hiweb()->file()->getStr_normalizeDirSeparates(WP_CONTENT_DIR . '/hiweb-cache'));
define('HIWEB_DIR_JS', hiweb()->file()->getStr_normalizeDirSeparates(HIWEB_CORE_DIR . '/js'));
define('HIWEB_DIR_CSS', hiweb()->file()->getStr_normalizeDirSeparates(HIWEB_CORE_DIR . '/css'));
define('HIWEB_DIR_ASSET', hiweb()->file()->getStr_normalizeDirSeparates(WP_CONTENT_DIR . '/assets'));
define('HIWEB_DIR_TPL', HIWEB_CORE_DIR . '/tpl');
////URLs
define('DOMAIN_URL', $_SERVER['SERVER_NAME']);
define('REQUEST_URL', 'http' . (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' || $_SERVER['SERVER_PORT'] == 443 ? 's' : '') . '://' . "{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}");
define('BASE_URL', hiweb()->getStr_baseUrl());
define('HIWEB_PLUGINS_REPOSITORY', BASE_URL);
if (!defined('DIR_SEPARATOR')) {
    define('DIR_SEPARATOR', hiweb()->file()->getStr_directorySeparator());
}
hiweb()->globalValues = array('_baseurl' => BASE_URL, '_base_url' => BASE_URL, '_base_dir' => BASE_DIR, '_domainurl' => DOMAIN_URL, '_hiweb_version' => HIWEB_VERSION, '_request_url_arr' => hiweb()->wp()->getArr_requestUri(), '_admin_mail' => hiweb()->wp()->getStr_adminMail(), '_blogname' => hiweb()->wp()->getStr_blogName(), '_dir_separator' => DIR_SEPARATOR);
예제 #17
0
 public function echo_metaboxTitle($post)
 {
     $meta = array_merge(array('hiweb_cms_title_mod' => 'default', 'hiweb_cms_title' => ''), hiweb()->wp()->getArr_postMeta($post->ID));
     wp_nonce_field('hiweb_cms_title_nonce', 'hiweb_cms_title_nonce');
     // Поля формы для введения данных
     $r = '<p><input type="radio" id="hiweb_cms_title_default" name="hiweb_cms_title_mod" value="default" size="25" ' . ($meta['hiweb_cms_title_mod'] == 'default' ? 'checked' : '') . ' />';
     $r .= '<label for="hiweb_cms_title_default">{lang}По умолчанию{/lang}</label></p>';
     $r .= '<p><input type="radio" id="hiweb_cms_title_none" name="hiweb_cms_title_mod" value="none" size="25" ' . ($meta['hiweb_cms_title_mod'] == 'none' ? 'checked' : '') . '/>';
     $r .= '<label for="hiweb_cms_title_none">{lang}Не показывать{/lang}</label></p>';
     $r .= '<p><input type="radio" id="hiweb_cms_title_custome" name="hiweb_cms_title_mod" value="custom" size="25" ' . ($meta['hiweb_cms_title_mod'] == 'custom' ? 'checked' : '') . '/>';
     $r .= '<label for="hiweb_cms_title_custome">{lang}Произвольный{/lang}</label></p>';
     $r .= '<p data-hiweb-cms-title><input class="full-width" type="text" name="hiweb_cms_title" placeholder="{lang}Введите произвольный заголовок{/lang}" value="' . $meta['hiweb_cms_title'] . '"/></p>';
     echo hiweb()->file()->getHtml_fromTplStr($r);
 }
예제 #18
0
 public function echoHtml_footer()
 {
     echo hiweb()->file()->getHtml_fromTpl(array('slug' => $this->type, 'menu_icon' => 'fa ' . $this->icon_name));
 }
예제 #19
0
 public function getHtml_options($fieldsArr = array(), $title = '', $opts = array())
 {
     if (!is_array($fieldsArr)) {
         return false;
     }
     if (!is_array($opts)) {
         $opts = array($opts);
     }
     ///
     $opts = array_merge(array('wp_nonce' => wp_nonce_field('update-options'), 'savechanges' => __('Save Changes'), 'ids' => array()), $opts);
     ///
     foreach ($fieldsArr as $id => $field) {
         if (!is_array($field)) {
             $opts['fields'][] = $field;
         } else {
             register_setting('hiweb-settings-plugins', $id);
             $field = array_merge($this->def_field, $field);
             $opts['fields'][$id] = $field;
             $opts['fields'][$id]['val'] = get_option($id, $field['def']);
             $opts['ids'][] = $id;
         }
     }
     return hiweb()->file()->getHtml_fromTpl($opts);
 }
예제 #20
0
<?php

/**
 * Created by PhpStorm.
 * User: denmedia
 * Date: 08.04.2015
 * Time: 21:43
 */
/*
Plugin Name: hiWeb Core
Plugin URI: http://plugins.hiweb.moscow/core
Description: This plug-in allows for the creators of WordPress sites to quickly and easily incorporate all the most standard features menu control widgets to customize the admin panel, delete or rename the menu items more convenient and simple. Just plug-in allows you to create your own repository of plug-ins and additional scripts, which will be useful for any developer sites.
Version: 1.4.0.2
Author: Den Media
Author URI: http://plugins.hiweb.moscow
*/
define('HIWEB_VERSION', '1.4.0.2');
require_once 'inc/hiweb-core-class.php';
require_once 'inc/hiweb-core-define.php';
hiweb()->wp_settings();
hiweb()->wizard();
hiweb()->file()->inc('hiweb-core-plugins');
if (is_admin()) {
    ////Admin CSS
    hiweb()->file()->inc('settings');
    hiweb()->file()->css('hiweb-core');
    hiweb()->file()->css('hiweb-core-settings/hiweb-core-settings');
    hiweb()->file()->js('hiweb-core');
    hiweb()->file()->js('hiweb-core-wp/hiweb-core-wp');
}