Commit d4482feb by liumengfei

优化底部块缓存时间

优化精简顶部免运费模块
parent 1dc3a0f3
<?php
/**
* Web Technology Codes
* Web Technology Codes Google Language Translator Extension
*
* @category WebTechnologyCodes
* @package WebTechnlogyCodes_GoogleLanguageTranslater
* @copyright Copyright © 2018 Web Technology Codes (https://www.webtechnologycodes.com)
* @license https://www.webtechnologycodes.com/magento-extension-license/
*/
namespace Joshine\FreeBar\Block;
use Magento\Framework\View\Element\Template;
class Index extends Template
{
/**
* Initialize
*
* @param \Magento\Framework\View\Element\Template\Context $context
* @param array $data
*/
public function __construct(
\Magento\Framework\View\Element\Template\Context $context,
array $data = []
) {
parent::__construct($context, $data);
}
/**
* Get System configuration option values
*/
public function getConfigValue($value = '') {
return $this->_scopeConfig
->getValue(
$value,
\Magento\Store\Model\ScopeInterface::SCOPE_STORE
);
}
/**
* Return image url
*
* @return string
*/
public function getImageValue($mobile = '')
{
if ($mobile){
$drive_type ="freebar/general/image_mobile";
}else{
$drive_type ="freebar/general/image_pc";
}
$image_url = $this->_scopeConfig->getValue($drive_type,\Magento\Store\Model\ScopeInterface::SCOPE_STORE);
return $this->getMediaUrl(). 'joshine/freebar/'.$image_url;
}
/**
* Return media path
*
* @return string
*/
public function getMediaUrl()
{
return $this->_storeManager->getStore()
->getBaseUrl(\Magento\Framework\UrlInterface::URL_TYPE_MEDIA);
}
}
<?xml version="1.0"?>
<!--
/**
* Web Technology Codes
* Web Technology Codes Google Language Translator Extension
*
* @category WebTechnologyCodes
* @package WebTechnlogyCodes_GoogleLanguageTranslater
* @copyright Copyright © 2018 Web Technology Codes (https://www.webtechnologycodes.com)
* @license https://www.webtechnologycodes.com/magento-extension-license/
*/
-->
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Acl/etc/acl.xsd">
<acl>
<resources>
<resource id="Magento_Backend::admin">
<resource id="WebTechnologyCodes_GoogleLanguageTranslater::extension">
<resource id="WebTechnologyCodes_GoogleLanguageTranslater::view" title="Google Custom Search Integration" sortOrder="200" />
</resource>
<resource id="Magento_Backend::stores">
<resource id="Magento_Backend::stores_settings">
<resource id="Magento_Config::config">
<resource id="WebTechnologyCodes_GoogleLanguageTranslater::settings" title="Google Translate Integration Section" />
</resource>
</resource>
</resource>
</resource>
</resources>
</acl>
</config>
\ No newline at end of file
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Config:etc/system_file.xsd">
<system>
<tab id="freebar" translate="label" sortOrder="110">
<label>Joshine</label>
</tab>
<section id="freebar" translate="label" type="text" sortOrder="320" showInDefault="1" showInWebsite="1" showInStore="1">
<label>Freebar</label>
<tab>freebar</tab>
<resource>Solwin_GoogleLanguageTranslate::configuration</resource>
<group id="general" translate="label" type="select" sortOrder="10" showInDefault="1" showInWebsite="1" showInStore="1">
<label><![CDATA[Top free bars]]></label>
<field id="active" translate="label" type="select" sortOrder="10" showInDefault="1" showInWebsite="1" showInStore="1">
<label><![CDATA[是否打开]]></label>
<source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
</field>
<field id="is_pic" translate="label" type="select" sortOrder="10" showInDefault="1" showInWebsite="1" showInStore="1">
<label><![CDATA[是否图片]]></label>
<source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
</field>
<field id="content" translate="label" type="text" sortOrder="10" showInDefault="1" showInWebsite="1" showInStore="1">
<label><![CDATA[文案内容]]></label>
<depends>
<field id="is_pic">0</field>
</depends>
</field>
<field id="content_size" translate="label" type="text" sortOrder="10" showInDefault="1" showInWebsite="1" showInStore="1">
<label><![CDATA[字体大小]]></label>
<comment><![CDATA[默认为14px]]></comment>
<depends>
<field id="is_pic">0</field>
</depends>
</field>
<field id="content_color" translate="label" type="text" sortOrder="10" showInDefault="1" showInWebsite="1" showInStore="1">
<label><![CDATA[文字颜色]]></label>
<comment><![CDATA[默认为#000]]></comment>
<depends>
<field id="is_pic">0</field>
</depends>
</field>
<field id="content_back_color" translate="label" type="text" sortOrder="10" showInDefault="1" showInWebsite="1" showInStore="1">
<label><![CDATA[背景颜色]]></label>
<comment><![CDATA[默认为#FFF]]></comment>
<depends>
<field id="is_pic">0</field>
</depends>
</field>
<field id="image_pc" translate="label" type="Magento\Config\Block\System\Config\Form\Field\Image" sortOrder="10" showInDefault="1" showInWebsite="1" showInStore="1" >
<label>PC Image</label>
<backend_model>Magento\Config\Model\Config\Backend\Image</backend_model>
<upload_dir config="system" scope_info="1">joshine/freebar</upload_dir>
<base_url type="media" scope_info="1">joshine/freebar</base_url>
<depends>
<field id="is_pic">1</field>
</depends>
</field>
<field id="image_mobile" translate="label" type="Magento\Config\Block\System\Config\Form\Field\Image" sortOrder="10" showInDefault="1" showInWebsite="1" showInStore="1" >
<label>Mobile Image</label>
<backend_model>Magento\Config\Model\Config\Backend\Image</backend_model>
<upload_dir config="system" scope_info="1">joshine/freebar</upload_dir>
<base_url type="media" scope_info="1">joshine/freebar</base_url>
<depends>
<field id="is_pic">1</field>
</depends>
</field>
</group>
</section>
</system>
</config>
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../Store/etc/config.xsd">
<default>
<freebar_settings>
<general>
<active>1</active>
<content_size>14px</content_size>
<content_color>#FFF</content_color>
<content_back_color>#000</content_back_color>
</general>
</freebar_settings>
</default>
</config>
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
<module name="Joshine_FreeBar" setup_version="1.0.0" />
</config>
<?php
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::MODULE,
'Joshine_FreeBar',
__DIR__
);
<?xml version="1.0"?>
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
<body>
<referenceContainer name="header.container">
<block class="Joshine\FreeBar\Block\Index" name="free-shipping.bar" template="Joshine_FreeBar::free_shipping_bar.phtml" before="header.panel.wrapper" >
<arguments>
<argument name="cache_lifetime" xsi:type="number">3600</argument>
</arguments>
</block>
</referenceContainer>
</body>
</page>
<?php
/** @var $block \Joshine\FreeBar\Block\Index */
?>
<?php
$isEnable = $block->getConfigValue('freebar/general/active');
if ($isEnable):
$is_image = $block->getConfigValue('freebar/general/is_pic');
if ($is_image):
?>
<style>
.free-shipping-bar{line-height: 0.7;width: 100%;height: auto;}
@media (max-width: 768px) {.free-shipping-bar{line-height: unset;}}
</style>
<div class="free-shipping-bar">
<picture>
<source media="(max-width: 768px)" srcset="<?=$block->getImageValue(1)?>">
<source media="(min-width: 769px)" srcset="<?=$block->getImageValue()?>">
<img src="<?=$block->getImageValue()?>" loading="lazy" >
</picture>
</div>
<?php else: ?>
<style>
.free-shipping-bar{
width: 100%;
height: 40px;
line-height: 40px;
text-align: center;
background-size: 100% 100%!important;
background-repeat: no-repeat;
background-color: <?=$block->getConfigValue('freebar/general/content_back_color') ?>;
font-size: <?=$block->getConfigValue('freebar/general/content_size') ?>;
}
.free-shipping-bar span {width: 100%;height: 100%; display: block; color: <?=$block->getConfigValue('freebar/general/content_color') ?>}
@media (max-width: 768px) {
.free-shipping-bar{
width: 100%;
height: 30px;
line-height: 30px;
background-size: 100% 100%!important;
background-repeat: no-repeat;
}
}
</style>
<div class="free-shipping-bar">
<span><?=$block->getConfigValue('freebar/general/content') ?></p></span>
</div>
<?php endif ?>
<?php endif ?>
<?xml version="1.0" ?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Config:etc/system_file.xsd">
<system>
<tab id="joshine" translate="label" sortOrder="10">
<label>Joshine</label>
</tab>
<section id="joshine_top_bar" translate="label" sortOrder="1" showInDefault="1" showInWebsite="1" showInStore="1">
<class>separator-top</class>
<label>FreeBar</label>
<tab>joshine</tab>
<group id="general" translate="label" type="text" sortOrder="10" showInDefault="1" showInWebsite="0" showInStore="0">
<label>General Configuration</label>
<field id="enable" translate="label" type="select" sortOrder="1" showInDefault="1" showInWebsite="0" showInStore="0">
<label>Module Enable</label>
<source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
</field>
<field id="display_text" translate="label" type="text" sortOrder="1" showInDefault="1" showInWebsite="0" showInStore="0">
<label>Display Text</label>
<comment>This text will display on the frontend.</comment>
</field>
</group>
</section>
</system>
</config>
\ No newline at end of file
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Store:etc/config.xsd">
<default>
<joshine_top_bar>
<general>
<enable>1</enable>
<display_text>Hello World</display_text>
</general>
</joshine_top_bar>
</default>
</config>
\ No newline at end of file
<?xml version="1.0" ?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
<module name="Joshine_FreeBar" setup_version="1.0.0">
</module>
</config>
<?php
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::MODULE,
'Jonshine_FreeBar',
__DIR__
);
......@@ -106,7 +106,11 @@
<referenceBlock name="copyright" remove="true"/>
</referenceContainer>
<referenceContainer name="before.body.end">
<block class="Magento\Theme\Block\Html\Footer" name="footer" template="Magento_Theme::html/footer.phtml" cacheable="true" />
<block class="Magento\Theme\Block\Html\Footer" name="footer" template="Magento_Theme::html/footer.phtml">
<arguments>
<argument name="cache_lifetime" xsi:type="number">3600</argument>
</arguments>
</block>
</referenceContainer>
<referenceContainer name="content">
<block class="Magento\Framework\View\Element\FormKey" name="formkey"/>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment