如何自定义 WordPress 后台的 Admin

WordPress 的后台有非常多的东西,其中的很多东西都并非我们想要的,时间长了,看起来特别的头疼,所以,不妨写一些代码,来精简你的后台。

你所需要做的很简单,就是在你的主题的 functions.php 文件中添加如下代码。

function ixiqin_com_remove_menu_item()
{
    // 移除菜单项目的代码
}
add_action('admin_menu', 'ixiqin_com_remove_menu_item');
Code language: JavaScript (javascript)

其中,移除菜单项目的代码主要有以下两个函数

  • remove_menu_page('upload.php') 这个是移除一级菜单的,比如这个移除的是媒体库的菜单项目。
  • remove_submenu_page('options-general.php','options-reading.php')这个是移除设置中,阅读二级菜单的。

这两个函数的参数都是文件路径,这个路径你可以在 URL 栏中找到

dil27

用上了自己做的翻译插件

之前用的翻译插件cos_slug_translator 因为一些原因,并没有办法很好的和 JetPack 一起联用。导致每次发布到 Twitter 的文章链接都是失效的。为此,我前往 Github ,在 JetPack 的项目中发起了一个 Issue 。

Jeremy 给我了一些建议 , 于是,我就重新做了一个插件,并将这个插件提交到了官方的插件系统。希望可以通过审核。

后续考虑继续支持其他一些翻译平台,比如,有道翻译的新 API、搜狗、Google等一系列。特别是 Google, 这样就可以支持非中文文章了,比如,日语的。

项目仓库:

https://github.com/bestony/automatic-translate-slug

本站在用的一些WordPress插件

Akismet Anti-Spam

WordPress 官方出的,用于屏蔽垃圾评论的。基本上每个用 WordPress 的人都会装。

CB Change Mail Sender

一个用于修改 WordPress 自动发信时的 Sender 和 Sender Email Adress 的插件。

cos_slug_translator

将文章的 Slug 从中文转换为英文的插件。后续我会重写这个插件,更简单使用,以及发布到官方的插件市场。

Jetpack

JetPack 用于古腾堡编辑器中的新 Block

Link Share

我自己开发的插件,效果可以参考顶部菜单栏中的分享页面。

No Self Pings

用于控制自己的文章不要向内产生 PingBack

WP-Optimize

WordPress 优化插件

WP-PostViews

WordPress 访问量统计插件

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') ;

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

初衷

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

插件信息

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

插件使用说明

使用短代码`[plyr]`即可添加播放器,支持参数 urlposter ,分别是视频地址和视频封面图片地址
Github 仓库地址:https://github.com/bestony/simple-plyr
WordPress 官方仓库地址:https://wordpress.org/plugins/simple-plyr/

七星主题修复的问题

前段时间承接了 李长太老师的博客,由于我惯用 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即可

Insert Update Time – WordPress 的链接分享插件

b29692084bbb

初衷

在使用 Dokuwiki 时,可以使用按钮一键添加一个编辑记录的标签
esuad
我在写博客时,有更新旧文的习惯,但是由于没有更新记录,对读者来说不慎友好,故而做出这个插件,来一键生成编辑记录。

插件信息

插件名为 Insert Update Time ,目前已经上架 WordPress 官方插件库,可以通过在博客后台搜索直接下载
3r9w0

插件使用说明

插件默认会在你的编辑器内添加一个按钮,点击按钮,就会自动生成一个更新记录。
p5ejz
更新记录中包含一个 更多标签和一个包含用户信息和更新日期的标志。

插件使用动态图

TinyMCE

lp3b9

QuickTag

插件安装方法

1. 在 WordPress 后台搜索 Insert Update Time 或搜作者 Bestony ,即可找到这个插件
2. 前往插件主页下载插件,并上传到 WordPress 中 https://wordpress.org/plugins/insert-update-time/

我的其他插件

LinkShare – WordPress 链接分享插件

LinkShare – WordPress 的链接分享插件

b29692084bbb

[title]初衷[/title]
最近将云笔记由有道云笔记切换为了印象笔记(确实好用一些),所以整理了有道云笔记的资料。
发现自己在过去其实收藏了很多的资料,但是由于年久未看,所以也是囤积在了云笔记中。而自己的本心其实是想通过这些资料,来整理出自己的文章,最终无以成型。
再加上最近看了一篇文章,在说当下的文章转载问题:当下的文章转载非常不规范,CC 协议不遵守,并且 CC 协议其实鼓励的是使用链接分享。
基于这样的考量,我想我需要的其实是类似于微博那样的简短的分享的功能。但是在 WordPress 中集成一个 微博的功能其实并不简单,而且我也希望即使我换主页,也能够很好的兼容,那么对于插件的要求就会很高,而我当下主要的工作还是考研,所以实在无力优化,所以便曲线救国,采用了分享链接的形式。
[title]使用思路[/title]
插件默认会在后台创建一个新的文件类型 LinkShare,同时,你可以在后台侧边栏和顶部的新建中看到分享,你可以通过这两处来创建新的分享。同时,还可以在侧边栏中的分享进行分享的管理
[title]Demo[/title]
https://www.ixiqin.com/links-share/
[title]使用说明[/title]

插件安装说明

  1. 安装插件
  2. 创建一个新的页面,在页面中添加如下短代码[ linkshare][ /linkshare]
  3. 保存页面,并在后台新建链接分享

链接分享说明

  1. 点击侧边栏中的分享或顶部新建中的分享,进入到新建分享的页面。
  2. 在该页面依次添加标题、链接、评论dhlji
  3. 填写完成后点击发布

[title]安装方式[/title]

  1. 【推荐】在 WordPress 后台的插件中心搜索关键词 Link Share 或搜索作者 Bestony 即可找到插件,点击安装即可。
  2. 前往 https://wordpress.org/plugins/link-share/ 下载 zip ,然后上传到后台插件中心即可。

[title]样式美化[/title]
短代码生成的是 ul 无序列表,该列表的结构如下

<ul class ="linkshare-list”>
    <li class=“linkshare-item”>
        <a class=“linkshare-link”>linktitle</a>
    <li>
</ul>

你只需要对应添加 linkshare-listlinkshare-itemlinkshare-link 的 css 样式即可
[title]Todo[/title]

  1. 加入标签
  2. 允许将分隔符切换为其他的符号

[title]更新日志[/title]
= 0.0.6 =
1. 将默认语言切换为英文,方便后续的国际化
2. 添加中文语言
= 0.0.4 =
1. 在输出端使用 esc_url 处理URL
= 0.0.3 =
1. 在输入端使用 esc_url 处理URL
= 0.0.2 =
1. 审查、处理 POST 请求
= 0.0.1 =
1. 完成短代码部分
2. 完成文章类型部分
3. 完成信息提交部分

WordPress Slug 中翻英插件

b29692084bbb

我大部分时间都是在使用中文写作,而很多时候,由于性格中感性成分非常多,所以我写的文章的标题并不好写成对应的英文,这里我用的是生活点滴开发的cos_slug_translator插件。这里也推荐给你

 

原博主地址:http://www.storyday.com/html/y2007/1202_auto-slug-translate-plugin.html

插件备份下载:

cos_slug_translator

使用方法:

sgbin

修改代码中如下两行

  1. define(“TRANS_KEY”,“1234567”);
  2. define(“TRANS_FROM”,“zhtis”);

事实上这篇文章的slug也是自动生成的。

WordPress 文件名 MD5 解决中文乱码问题

b29692084bbb

每次安装完成 WordPress,都会先添加这个函数,来确保我上传的文件不至于乱码,也分享给诸位。

  1. function new_filename($filename) {  
  2.     $info = pathinfo($filename);  
  3.     $ext = emptyempty($info[‘extension’]) ?  : ‘.’ . $info[‘extension’];  
  4.     $name = basename($filename$ext);  
  5.     return substr(md5($name), 0, 12) . $ext//截取长度12  
  6. }  
  7.   
  8. add_filter(‘sanitize_file_name’, ‘new_filename’, 10);