作者: Jet L

  • 【网站】让WordPress封面区块的视频背景支持在微信环境下自动切换为照片

    移动版本的微信,在其内置的微信WEB环境中,对视频播放有很多限制,如果我们的封面区块想设置视频,就会出现无法加载播放的情况。

    为了解决这个问题,我去看了一下一些大厂的做法,当然大厂用的肯定不是WP,不过思路是可以借鉴的。

    华为的做法是用一个JS来判断是否是微信环境,如果是微信环境则切换到图片。OPPO的做法更加直接,他们直接用图片+动画的形式解决了视频这个问题,emm通用性确实刚刚的。

    那么我们在WP下,使用原版的封面区块是否可以进行类似的切换呢?也是可以的,原理是在区块代码中插入一个图片,利用一个简单的IF判断来实现微信环境下的自动切换。

    具体代码如下:

    <!-- wp:cover {"url":"//默认图片地址","id":588,"dimRatio":50,"overlayColor":"contrast","isUserOverlayColor":true,"backgroundType":"video","minHeight":840,"minHeightUnit":"px","isDark":false,"className":"main-container","layout":{"type":"constrained"}} -->
    <div class="wp-block-cover is-light main-container" style="min-height:840px">
        <span aria-hidden="true" class="wp-block-cover__background has-contrast-background-color has-background-dim"></span>
    
        <!-- 视频背景,添加 id="background-video" -->
        <video id="background-video" class="wp-block-cover__video-background intrinsic-ignore" autoplay muted loop playsinline 
            src="//视频地址" data-object-fit="cover">
        </video>
    
        <!-- 备用静态图片,默认隐藏 -->
        <img id="background-image" src="//图片地址" 
            alt="Background Image" style="display:none; width: 100%; height: 100%; object-fit: cover; position: absolute; top: 0; left: 0;">
    
        <div class="wp-block-cover__inner-container">
            <!-- 可添加文本或其他内容 -->
        </div>
    </div>
    <!-- /wp:cover -->
    
    <script>
    document.addEventListener("DOMContentLoaded", function () {
        function isWeChatBrowser() {
            return /MicroMessenger/i.test(navigator.userAgent);
        }
    
        if (isWeChatBrowser()) {
            let video = document.getElementById("background-video");
            let image = document.getElementById("background-image");
    
            if (video && image) {
                video.style.display = "none"; // 隐藏视频
                image.style.display = "block"; // 显示备用图片
            }
        }
    });
    </script>
    
  • 【网站】WordPress中如何获得无间隔的区块

        "spacing": {
            "blockGap": "1.2rem",
            "padding": {
                "left": "var:preset|spacing|50",
                "right": "var:preset|spacing|50"
            }
        },

    6.X版本的Wordpress中,区块之间会有一个默认1.2rem的间隔,这个间隔在页眉页脚设置中会与其他不同色彩的区块产生非常显眼的割裂,或者同一种非白色区块中间产生间隔缝隙。

    如何修改这个问题?很简单,我们可以在主题样式和区块设置 (theme.json)中进行更改,去掉这个间隔,让我们的区块背景更加融合或者分离的更明显,具体如上代码,找到 “spacing” 中的 “blockGap” 部分,将预设的 “1.2rem” 改为null即可(不用带引号),修改完毕的代码如下所示↓

    修改完毕后最好检查一下页面是否有其他区块被影响,目前观察容易受到影响的有导航栏,可以在其单独的样式中针对性调整区块间隔。

        "spacing": {
            "blockGap": null,
            "padding": {
                "left": "var:preset|spacing|50",
                "right": "var:preset|spacing|50"
            }
        },
  • 【音乐】《问月》——你可听过百年故事千年唱

    歌词:

    玉盘玉盘

    你为何悬于屋顶上

    玉盘玉盘

    你为何白白送银光

    玉盘玉盘

    你为何有时招摇有时藏

    有时瘦来有时胖

    玉盘玉盘

    你可曾装过喜时糖

    玉盘玉盘

    你可曾见过别时泪长淌

    玉盘玉盘

    你可曾听过百年故事千年唱

    长诗逾万行

    月亮月亮心头光

    月光月光亮汪汪

    月亮月亮

    那孩子正抬头凝望

    请仙鹤来访

    直驾九天上

    玉盘玉盘

    太白和眼睛谁比较璀璨

    玉盘玉盘

    金乌和嫦娥谁比较孤单

    玉盘玉盘

    是什么亮闪闪推动我的小船

    有时明来有时暗

    玉盘玉盘

    那天宫是否有答案

    玉盘玉盘

    那大圣取经何时还

    玉盘玉盘

    那孩子乘风越过天上万重山

    漫漫漫漫漫漫向星汉

    月亮月亮太极长

    月光月光浩茫茫

    月亮月亮

    那孩子已拂去风霜

    为他揽星辰

    带他回故乡

    月亮月亮太极长

    月光月光浩茫茫

    月亮月亮

    那孩子已拂去风霜

    为他揽星辰

    带他回故乡

    月亮月亮 嘿 月亮

    抬头凝望,玉盘悬于屋顶上,今人不见古时月,今月曾经照古人。从古人对广寒宫的朴素畅想,到如今的玉兔在月,鹊桥环绕,无论阴晴圆缺,月亮始终伴随中华民族的成长,见证无数聚散,其已经成为一个意义丰富的文化符号。

    今年的春晚我并没有认真看,这两天却听到了其中的《玉盘》,这简单重复的旋律,却有一种特别的引力,因此我找到了《问月》,也知道了谭淇尹、葫芦童声、妞妞合唱团,知道了歌曲背后的故事,了解了一群可爱的孩子。

    说来有趣,我最喜欢的主旋律歌曲也和航天有关——《祖国不会忘记》,说来有趣,我也和凉山的孩子有过一些间接的接触——通过敬爱的支教老师,也捐赠过一些学习用品。

    因此在听这首歌时候,更有一些别样的情感,难以一言以蔽之,有对文化的回响,有对经历的共鸣,有对星空的畅想,鉴于这是一首与航天有关的曲子,更有康斯坦丁·齐奥尔科夫斯基的话语——“地球是人类的摇篮,但人类不可能永远被束缚在摇篮里”。

    回顾这几年,有的人类在摇篮里厮杀,也有人类试图朝着太空不断进发(当然也有人想回还没回来(X))但愿月亮成为人类的前进的基地,携手向更远的世界探索,让未来的百年或者千年故事可以传唱其他的行星、卫星或者恒星,毕竟我们已经对着月亮唱了千年。