function theme_shop_smarty_helper_function_get_asset_url(array $paramArray, $smarty) { if (!isset($paramArray['asset'])) { return ''; } return ManagerHelper::getAssetUrl(ShopThemePlugin::pluginGetUniqueId(), $paramArray['asset']); }
public function beforeRoute($f3) { parent::beforeRoute($f3); // 发布我们自己的资源 ManagerHelper::publishAsset(ShopThemePlugin::pluginGetUniqueId(), 'css'); ManagerHelper::publishAsset(ShopThemePlugin::pluginGetUniqueId(), 'js'); ManagerHelper::publishAsset(ShopThemePlugin::pluginGetUniqueId(), 'img'); // 插件注册 css, js ManagerHelper::registerCss(ManagerHelper::getAssetUrl(ShopThemePlugin::pluginGetUniqueId(), 'css/theme_shop.css')); ManagerHelper::registerCss(ManagerHelper::getAssetUrl(ShopThemePlugin::pluginGetUniqueId(), 'css/advblock.css')); ManagerHelper::registerJs(ManagerHelper::getAssetUrl(ShopThemePlugin::pluginGetUniqueId(), 'js/theme_shop.js')); // 注册自己使用的 smarty 函数 theme_shop_smarty_register(); }
/** * 获取合并之后的 JS 文件 * * @param array $paramArray * @param $smarty * * @return string */ function smarty_helper_function_dump_merged_asset_js_url(array $paramArray, $smarty) { if (!isset($paramArray['asset'])) { return ''; } global $f3; $merge = $f3->get('sysConfig[enable_asset_merge]'); if (isset($paramArray['merge'])) { $merge = $paramArray['merge']; } $fileRelativeNameArray = explode(',', preg_replace('![\\r\\n\\s\\t]+!', '', $paramArray['asset'])); if (empty($fileRelativeNameArray)) { return ''; } $outputStr = ''; if (!$merge) { foreach ($fileRelativeNameArray as $relativeAssetPath) { $outputStr .= '<script type="text/javascript" src="' . \Core\Asset\ManagerHelper::getAssetUrl(\Theme\Supplier\SupplierThemePlugin::pluginGetUniqueId(), $relativeAssetPath) . '"></script>' . "\n"; } } else { // 合并文件 $outputStr = '<script type="text/javascript" src="' . \Core\Asset\ManagerHelper::getMergedAssetJsUrl(\Theme\Supplier\SupplierThemePlugin::pluginGetUniqueId(), $fileRelativeNameArray) . '"></script>'; } return $outputStr; }