/ / संसाधन फ़ाइल (थीम फ़ोल्डर से सीएसएस, जेएस फाइलें) तक कैसे पहुंचें और एफटीएल से लिंक प्राप्त करें? - ट्विटर-बूटस्ट्रैप, टॉगल

संसाधन फ़ाइल (सीएसएस, थीम फ़ोल्डर से जेएस फाइल) तक कैसे पहुंचे और एफटीएल से लिंक प्राप्त करें? - ट्विटर बूटस्ट्रैप, ofbiz

मेरे पास "नियॉन - बूटस्ट्रैप एडमिन थीम" है (https://themeforest.net/item/neon-bootstrap-admin-theme/6434477 )। मेरा कर्तव्य इस बूटस्ट्रैप थीम को 16.11.02 को टोबे में एकीकृत करना है। मैंने 3 दिन कोशिश की, लेकिन मैं डटी रही।

यह मेरा पूर्ण स्रोत कोड है: https://gitlab.com/Donhu/ofbiz मेरा एक नया थीम बनाया गया है, जिसका नाम है "BOOTSTRAP", जो "TOMAHAWK" थीम पर आधारित है।यहां छवि विवरण दर्ज करें

मुझे पता नहीं है कि स्टेटिक रिसोर्स फाइल्स (css, js, image) तक कैसे पहुंचा जा सकता है

मैंने और जानकारी जोड़ी है https://gitlab.com/Donhu/ofbiz/blob/master/framework/common/config/CommonEntityLabels.xml https://gitlab.com/Donhu/ofbiz/tree/master/themes/bootstrap (पहला कदम, मैं TOMAHAWK से क्लोन किया गया)।

ये फाइलें (https://gitlab.com/Donhu/ofbiz/tree/master/themes/bootstrap/webapp/bootstrap/assets) "नियॉन - बूटस्ट्रैप एडमिन थीम" से आते हैं। मुझे यह पता नहीं है कि कैसे पहुँचें, कैसे इसके सापेक्ष लिंक प्राप्त करें, और FTL फ़ाइल के अंदर रखें (उदाहरण के लिए: https://gitlab.com/Donhu/ofbiz/blob/master/themes/bootstrap/template/Header.ftl#L47 वर्तमान में, यह काम नहीं करता है)

<#if layoutSettings.VT_HDR_JAVASCRIPT?has_content>
<#list layoutSettings.VT_HDR_JAVASCRIPT as javaScript>
<script src="<@ofbizContentUrl>${StringUtil.wrapString(javaScript)}</@ofbizContentUrl>" type="text/javascript"></script>
</#list>
</#if>

मेरा प्रश्न: अनुकूलित थीम फ़ोल्डर से स्थिर फ़ाइलों तक कैसे पहुंचें, इसे एफटीएल फाइल में डालें?

उत्तर:

उत्तर № 1 के लिए 1

उदाहरण के लिए, थीम रेज़ोर्स के लिए फ़ाइल पथ थीम डेटा में संग्रहीत हैं

<VisualThemeResource visualThemeId="TOMAHAWK" resourceTypeEnumId="VT_HDR_JAVASCRIPT" resourceValue="/images/jquery/plugins/asmselect/jquery.asmselect-1.0.4a-beta.js" sequenceId="05"/>
<VisualThemeResource visualThemeId="TOMAHAWK" resourceTypeEnumId="VT_HDR_JAVASCRIPT" resourceValue="/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon.min-1.4.3.js" sequenceId="07"/>
<VisualThemeResource visualThemeId="TOMAHAWK" resourceTypeEnumId="VT_HDR_JAVASCRIPT" resourceValue="/images/jquery/plugins/fjTimer/jquerytimer-min.js" sequenceId="09"/>
<VisualThemeResource visualThemeId="TOMAHAWK" resourceTypeEnumId="VT_HDR_JAVASCRIPT" resourceValue="/images/jquery/plugins/jquery.maskedinput-1.3.1.min.js" sequenceId="10"/>
<VisualThemeResource visualThemeId="TOMAHAWK" resourceTypeEnumId="VT_HDR_JAVASCRIPT" resourceValue="/images/jquery/plugins/jeditable/jquery.jeditable.js" sequenceId="11"/>
<VisualThemeResource visualThemeId="TOMAHAWK" resourceTypeEnumId="VT_HDR_JAVASCRIPT" resourceValue="/images/jquery/plugins/validate/jquery.validate.min.js" sequenceId="12"/>

इस स्थिति में, हेडर के लिए सभी जावास्क्रिप्ट रीसोर्स को लोड अनुक्रम को नियंत्रित करने के लिए अलग-अलग अनुक्रमआईड के साथ एक ही रिसोर्सटाइपइंयूमिड के तहत स्टोर किया जाता है।

फिर आप अपने ftl टेम्पलेट में इन रीसोर्स को एक्सेस कर सकते हैं, उदाहरण के लिए टॉमहॉक थीम में Header.ftl:

<#if layoutSettings.VT_HDR_JAVASCRIPT?has_content>
<#list layoutSettings.VT_HDR_JAVASCRIPT as javaScript>
<script src="<@ofbizContentUrl>${StringUtil.wrapString(javaScript)}</@ofbizContentUrl>" type="text/javascript"></script>
</#list>
</#if>

वे हेडर में इस तरह से प्रस्तुत किए जाते हैं:

<script src="/images/jquery/plugins/asmselect/jquery.asmselect-1.0.4a-beta.js" type="text/javascript"></script>
<script src="/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon.min-1.4.3.js" type="text/javascript"></script>
<script src="/images/jquery/plugins/fjTimer/jquerytimer-min.js" type="text/javascript"></script>
<script src="/images/jquery/plugins/jquery.maskedinput-1.3.1.min.js" type="text/javascript"></script>
<script src="/images/jquery/plugins/jeditable/jquery.jeditable.js" type="text/javascript"></script>
<script src="/images/jquery/plugins/validate/jquery.validate.min.js" type="text/javascript"></script>

में भंडारित किया जाना चाहिए/ theme / theme-name / webapp / theme-name / subfolders जैसे / images, / css etc .. बेशक आप एक अलग सबफ़ोल्डर लेआउट निर्दिष्ट कर सकते हैं और तदनुसार VisualThemeResource प्रविष्टियाँ बदल सकते हैं।

यदि वर्तमान उपयोगकर्ता के लिए कोई VISUAL_THEME UserPreference रिकॉर्ड नहीं है, तो डिफ़ॉल्ट विषय सामान्य से लिया जाता है। यहां आप अपनी नई डिफ़ॉल्ट थीम सेट कर सकते हैं:

VISUAL_THEME=TOMAHAWK