WordPress 换域名代码



UPDATE wp_options SET option_value = replace(option_value, 'www.olddomain.com','www.newdomain.com') ;
UPDATE wp_posts SET post_content = replace(post_content, 'www.olddomain.com','www.newdomain.com') ; 
UPDATE wp_comments SET comment_content = replace(comment_content, 'www.olddomain.com', 'www.newdomain.com') ;
 UPDATE wp_comments SET comment_author_url = replace(comment_author_url, 'www.olddomain.com', 'www.newdomain.com') ; 

mov 批量转为 mp4

回到老家,拍了一些照片,打算把照片上传到 QQ 空间中去。在上传中发现,由于 Live Photo 被提取出后成为了 mov 文件,而 QQ 空间是不支持 mov 格式的。所以写了个简单的脚本,来做 mov 转 mp4 。

脚本代码如下。


#!/bin/bash

for file in `ls ./`
do
    ffmpeg -i $file -vcodec copy -acodec copy $file".mp4"
done

Simple Plyr —— 又双叒叕一个视频播放器

plyr 挺好看的

初衷

原本我是打算用 WordPress 来建设云学堂的,所以就制作了这款编辑器。但是后来由于考虑到长期发展的问题,所以又放弃了 WordPress 的方案,暂定使用 RoR 来建设。

插件信息

插件名为 Simple Plyr ,目前已经上架到 WordPress 官方仓库,可以在后台直接搜索下载

插件使用说明

使用短代码`[plyr]`即可添加播放器,支持参数 urlposter ,分别是视频地址和视频封面图片地址

Github 仓库地址:https://github.com/bestony/simple-plyr
WordPress 官方仓库地址:https://wordpress.org/plugins/simple-plyr/

为 Django 配置 MySQL驱动

pip install pymysql

先安装 pymysql
然后修改主应用的 __init__.py ,加入如下代码

import pymysql
pymysql.install_as_MySQLdb()

最后,加入数据库配置

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql', #数据库引擎
        'NAME': 'user_im',                       #数据库名
        'USER': 'root',                       #用户名
        'PASSWORD': '',                   #密码
        'HOST': '',                           #数据库主机,默认为localhost
        'PORT': '',                           #数据库端口,MySQL默认为3306
        'OPTIONS': {
            'autocommit': True,
        },
    }
}

解决 VSCode 下 Python 报错 80 字符的问题

其实我也希望遵守 80 字符,但是 Django 官方的配置文件中就存在超过 80 个字符的行,这就没办法了,只好扩大要求。

我的 VSCode 使用的是 Pylint,所以可以通过在编辑器设置中,添加如下代码实现。

"python.linting.pylintArgs": [
        "--max-line-length=100"
    ],

将限制放宽到 100 个字符,不会太影响视觉,也能很好的符合规范。

七星主题修复的问题

前段时间承接了 李长太老师的博客,由于我惯用 PHP 7 ,所以李老师的博客也被我放在了 PHP 7 的站点上,但是由于使用的主题是第三方仿的,在使用中出现了非常多的问题。

比如:无法正常加载主题设置项、开启 Debug 后显示非常多的报错。在这里记录一下,以备后用。

建议给has_cap传入一个参数!用户级别已被废弃,请改用能力。

这是因为使用的函数调用的是传统的 1,2,3来表示权限,但是用户等级早已弃用,将其中的用户等级修改为权限名即可。

add_menu_page("主题设置", "主题设置", '10', 'sevenstar_theme', array(&$this,'sevenStar_Theme_Options_Form'),'dashicons-carrot','777');
// 改为 
add_menu_page("主题设置", "主题设置", 'manage_options', 'sevenstar_theme', array(&$this,'sevenStar_Theme_Options_Form'),'dashicons-carrot','777');

无法加载后台设置项目

这一块主要是渲染表单出了问题,所以这里就只需要将对应的用法改为 php7 的即可。

$this->$option['type']( $option )
// 改为
{$option['type']}( $option );

使用类名作为构造函数

这个更为简单,只需将类名对应的构造函数改为 __construct即可

Laravel 的 验证旧密码的验证代码

一个很有用的验证方法,奇怪的是竟然没有在官方的验证规则方法中。可能是中外习惯不同吧。

更新密码这是一个非常常用的功能,我们需要为用户提供一个更改密码的方式。安全一些的方式是通过验证旧密码,再更新密码,以免由于“记住我”功能导致的密码被盗改。

一般来说,Laravel 的更改密码都是通过 RestPassword Email 来实现的,但是我更倾向用户可以在后台更改。所以,便在这里贴下相关的代码,借助下方的代码,可以实现验证用户密码,旧密码验证通过后,再进行新的密码的更新。

 App\Providers\AppServiceProvider 中的 Boot 方法中添加如下代码。

Validator::extend('password_hash_check', function($attribute, $value, $parameters, $validator) {
            return Hash::check($value , $parameters[0]) ;
        });

在对应的表单请求中,添加如下的调用。

use Auth;



/**
     * Get the validation rules that apply to the request.
     *
     * @return array
     */
    public function rules()
    {

        $password = Auth::user()->password;

        return [
            'old_password' => "required|password_hash_check:" . $password,
            "password" => "required|min:6|max:25|confirmed",
        ];
    }

(上述代码采用的是表单请求的方式来进行验证的,使用方法参看:Validation