欢迎光临
请一秒记住我们的网址:www.xinfangs.com !

纯代码教你如何在WordPress发布文章时自定义文章作者名称

时间煮雨阅读(1882)


有时候网站会收到一些投稿文章,或者也会转载别人的文章,新创建一个用户又有些麻烦,但在作者名称那里显示自己的名字,总不是那么和谐。今天倡萌推荐 @西秦公子 的一个小插件,支持在后台自定义当前文章的作者名称,效果如下图所示:

不过网站玩的久了,插件装的太多,还是喜欢 直接用代码和协在网站内部,话不多说,直接上代码,

把下面代码复制在 functions.php 即可。

//自定义作者名称
add_action('post_submitbox_misc_actions', 'cus_author_createCustomField');
add_action('save_post', 'cus_author_saveCustomField');
/** 创建一个checkBox */
function cus_author_createCustomField() {
	$post_id = get_the_ID();
	if (get_post_type($post_id) != 'post') {
		return;
	}
	/**
	 * 提取现有的值
	 * @var boolean
	 */
	$value = get_post_meta($post_id, '_custom_author_name', true);
	/**
	 * 添加 nonce 安全处理
	 */
	wp_nonce_field('custom_author_nonce' , 'custom_author_nonce');
	?>
    <div class="misc-pub-section misc-pub-section-last dashicons-before dashicons-admin-users">
        <label><b>作者:</b><input type="text" value="<?php echo $value ?>" name="_custom_author_name" /></label>
    </div>
    <?php   
}
/**
 * 保存配置信息
 * @param  int $post_id 文章的ID
 */
function cus_author_saveCustomField($post_id) {
	/**
	 * 自动保存不处理
	 */
	if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) {
		return;
	}
	/**
	 * nonce 信息不正确不处理
	 */
	if (
		!isset($_POST['custom_author_nonce']) ||
		!wp_verify_nonce($_POST['custom_author_nonce'], 'custom_author_nonce')
	) {
		return;
	}
	/**
	 * 用户无权编辑文章不处理
	 */
	if (!current_user_can('edit_post', $post_id)) {
		return;
	}
	/**
	 * 存在此项目就更新
	 */
	if (isset($_POST['_custom_author_name'])) {
		update_post_meta($post_id, '_custom_author_name', sanitize_text_field($_POST['_custom_author_name']));
	} else {
		/**
		 * 不存在就删除
		 */
		delete_post_meta($post_id, '_custom_author_name');
	}
}
 
add_filter('the_author','cus_author_the_author');
function cus_author_the_author($author){
    $custom_author = get_post_meta(get_the_ID(), '_custom_author_name');
    if ($custom_author) {
		return $custom_author[0];
	} else {
		return $author;
	}
}
核心思路就是通过钩子 the_author 来修改了文章作者的显示名称。限定了文章类型为 post(文章),见32行。

至此关于在WordPress发布文章时自定义文章作者名称就结束了,更多关于WordPress技巧与插件请查看下面的相关链接

WordPress显示加载时间、数据库查询次数及内存占用

时间煮雨阅读(937)


经常有人问“缙哥哥的博客”底部有个“本页数据库查询次数,页面生成操作耗时,PHP内存消耗量”,小伙伴们也想实现,这个功能。一来可以看看自己的 WordPress 站点的页面状态,二来可以通过某个插件或某段代码执行后的内存使用情况对内存的影响。

页面加载时间代码:

本页数据库查询:<?php echo get_num_queries(); ?> 次;

数据库查询次数代码:

页面生成操作耗时:<?php timer_stop(3); ?> 秒;

内存占用代码

通过memory_get_usage()函数,返回当前分配给你的 PHP 脚本的内存量,单位是字节(byte)。也就是当时 PHP 脚本使用的内存(不含memory_get_usage()函数本身占用的内存)。

获取当前内存

如果是自己调试对比,那么用这个,可以快速对比加某段代码或插件甚至更换主题后的内存占用情况。

<?php 
echo memory_get_usage(); 
$var = str_repeat("liuhui", 10000); 
echo memory_get_usage(); 
unset($var); 
echo memory_get_usage(); 
?>

优化内存显示单位

目前缙哥哥使用的就是这个,毕竟 bytes 单位显得数值太大了!至于其他中文字,在其前后加上即可。

该函数默认返回的是占用内存的字节数,我们可以通过除以 1024 来以 KB 为单位,再除以 1024 以 MB 为单位。

<?php 
function convert($size){ 
$unit=array('B','KB','MB','GB','TB','PB'); 
return @round($size/pow(1024,($i=floor(log($size,1024)))),2).' '.$unit[$i]; 
} 
echo convert(memory_get_usage(true)); 
?>

自定义函数获取数组或变量值大小

<?php 
function array_size($arr) { 
ob_start(); 
print_r($arr); 
$mem = ob_get_contents(); 
ob_end_clean(); 
$mem = preg_replace("/\n +/", "", $mem); 
$mem = strlen($mem); 
return $mem; 
} 
$memEstimate = array_size($GLOBALS); 
?>

HTML页面显示指数

通过 functions 函数调用,在当前主题的 functions.php 文件添加:

//WordPress 站点显示页面加载时间、数据库查询次数及内存占用 - https://wpexp.cn/?p=74
function performance( $visible = false ) {
	$stat = sprintf( '本页生成数据库 %d 次查询,耗时 %.3f 秒,使用 %.2fMB 内存',
		get_num_queries(),
		timer_stop( 0, 3 ),
		memory_get_peak_usage() / 1024 / 1024
	);
	echo $visible ? $stat : "<!-- {$stat} -->" ;
}

然后可以在需要显示的地方,使用下面的代码进行调用:

<?php if(function_exists('performance')) performance(false) ;?>
performance参数false表示在页面前端不显示,只在HTML源码中可见。如果你想在页面中直接显示,可改为true即可。

如果你想在页脚加载,可以将下面的代码添加到functions.php该函数的下面(确保你的主题文件中包含wp_footer()):

add_action( 'wp_footer', 'performance', 20 );

ps:本文转载:https://wpexp.cn/74.html

宝塔面板 - 简单好用的Linux/Windows服务器运维管理面板

时间煮雨阅读(1295)

安装方法查看详细教程 >>

使用 SSH 连接工具,如堡塔SSH终端连接到您的 Linux 服务器后,挂载磁盘,根据系统执行相应命令开始安装(大约2分钟完成面板安装):

Centos安装脚本 yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh e3bb5f4de
Ubuntu/Deepin安装脚本 wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh e3bb5f4de
Debian安装脚本 wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && bash install.sh e3bb5f4de
Fedora安装脚本 wget -O install.sh http://download.bt.cn/install/install_6.0.sh && bash install.sh e3bb5f4de
注意:必须为没装过其它环境如Apache/Nginx/php/MySQL的新系统,推荐使用centos 7.X的系统安装宝塔面板

Wordpress主题-萨龙网络推荐Wordpress导航主题下-Slhao主题

时间煮雨阅读(2045)


Slhao 主题是萨龙网络科技推出的一款 WordPress 简约高端集书签、工具、书箱和人物的网址导航类主题,主要就是为了方便网站管理者收集和整理自己喜欢的网站链接,软件利器,专业书籍和喜欢设计师等,使用 Slhao 主题能更好的管理这些导航。

首页有各类导航的统计模块 热门导航、随机导航、浏览最多、点赞最多和直达最多的所有类型文章模块,都可通过AJAX切换显示。同时可设置所有类型分类,可单个分类一个模块,或者使用AJAX TABS显示。

更新日期:2020.05.05,版本:2.3

修复一些Bug,完善一些细节
新增:文章目录,列表滚动响应
新增:工具中的下载列表新增用户登录才能查看
新增:广告 PC 端和移动端分开选项
优化:大屏幕时主体内容居中显示
优化:METAS 开关设置模块修改成弹窗显示
修复:关闭「外链跳转」选项前台报错的问题

WordPress主题-非常火爆的主题-日主题RiPro V9版

时间煮雨阅读(1623)


全新发布,更加专业,资源,素材,源码站运营首选,支付宝原生/当面付、微信扫码/H5支付、码支付、虎皮椒、PAYJS。QQ/微信/微博一键登录,付费下载、付费查看、支持卡密、会员、推广佣金、作者佣金、前端发布资源等。

重要-WordPress的伪静态设置:

主题启用后,请设置WordPress的固定链接和伪静态规则,否则个别页面会出现404错误
1:宝塔面板请在网站管理--设置--伪静态--选择wordpress--保存
2:然后到WP后台设置--固定链接--固定连接模式推荐为自定义: /%post\_id%.html
非宝塔面板用户,请自己百度看一下自己服务器环境如何配置WP网站的伪静态,步骤二同上
已经配置过自己伪静态规则的用户请忽略本设置,固定链接模式只要是自定义模式都OK

xydown插件精简版无独立下载页面

时间煮雨阅读(1459)


PS:最近在文章放置主题,插件下载链接的时候,感觉市面上好多的插件都是独立页面的,用起来不是很方便,自己以前又是都用的Xydown的插件,一个个改起来比较麻烦,就把Xydown 插件剔除了不是很常用的内容,精简了下,用起来还是蛮好的,不多说,

效果如下。

后台操作如下:

插件下载:

请一秒记住我们的网址:www.xinfangs.com !

去投稿去留言