分类: 博客

WordPress全新区块样板构建器

不管有多少人还怀念着经典编辑器,WordPress已经打算在古腾堡编辑器一条路走到底了。 为了让用户更加舒爽的使用古腾堡,WordPress.org推出了全新的区块样板构建器。简单的说,区块样板编辑器可以让用户自己构建、编辑和提交自制的...

阅读更多

jQuery自动调整图片尺寸

其实标题应该叫《jQuery自动调整人像图片(Portrait image)尺寸》。最近复古心盛,重调回了窄单栏布局。由于CSS的局限性,风景图片(Landscape image)会自适应缩小,但人像图片不会同比例缩小,只能以原始尺寸显示在眼前,显得很扎...

阅读更多

Post_tag按文章数排序输出

WordPress一个常用的字符数组是post_tag,可以用来显示标签。

如果只是想单纯按文章数排序列出所有的标签,可以用内置的wp_tag_cloud

<?php wp_tag_cloud('number=1000&orderby=count'); ?>

如果想要按文章数排序输出当前文章的标签并自定义显示方式,则需要用到array_multisort()函数:

function s_get_the_term_list( $id, $taxonomy ) {
    $terms = get_the_terms( $id, $taxonomy );
    $term_links = "";
    if ( is_wp_error( $terms ) )
        return $terms;
    if ( empty( $terms ) )
        return false;
    foreach ( $terms as $term ) {
        $link = get_term_link( $term, $taxonomy );
        if ( is_wp_error( $link ) )
            return $link;
	$term_count[] = $term->count;
	$term_link[] = '<a href="' . esc_url( $link ) . '" class="post--keyword" data-title="' . $term->name . '" data-type="'. $taxonomy .'" data-term-id="' . $term->term_id . '">' . $term->name . '<sup>['. $term->count .']</sup></a>';
    }
   array_multisort($term_count,SORT_DESC,$term_link);
   foreach ( $term_link as $tlink) {
	$term_links .= $tlink;
   }
   return $term_links;
}

调用方式:

<?php echo s_get_the_term_list( get_the_ID(), 'post_tag' );?>

修复wp-json 403错误

在前日《破事》文中提到:

更新文章一直显示“正在保存”,无法解决。实在没办法了,粘贴到手机上才成功。

以及编辑器右边的“分类”也不见了。

这些错误是在WP更新时出现的,因此一直以为是更新导致的。查看后台错误显示:GET wp-json/wp/v2/ 403 (Forbidden)。采取的解决方法包括:

  • 重装WordPress 5.9
  • 重装Really Simple SSL插件
  • 刷新浏览器Cache
  • 安装Gutenberg插件
  • ……

唯一有用的办法是安装经典编辑器,可是经典编辑器如今已经非常用不惯了,特别是插入图片不能拖拽、图片不能转换为相册、相册内图片编辑困难、不能一键插入文本格式,等等。

到处找解决方案,最权威的说法是:

Actions you should take to get rid of the 403 error message on your WordPress site:

  1. Check the .htaccess file.
  2. Reset file and directory permissions.
  3. Disable WordPress plugins.
  4. Upload an index page.
  5. Edit file ownership.
  6. Verify the A record.
  7. Remove any malware.
  8. Clear the web browser history and cache.

然鹅这样一套流程下来还是没有解决。

最终发现是function.php里有一个函数在之前的调整中不小心删掉了路径:

update_option('home','https://synyan.cn/t');

重新输入代码后解决。

CSS实现特定图片反色

思路: 利用通配符*=找出特定图片加上滤镜filter: invert(1) 用处: 比如网站加了夜间模式,由于某些图标是暗色的,在夜间模式下看不清,那么使用一行CSS代码可以非常简单的实现高亮。 例子: /* 查找所有文件名包含“...

阅读更多

精简文章分类

博客写了十七年,文章分类(Category)越来越多。今天在首页文章标题顶部加上分类链接时发现了这个问题,一狠心,把当年挖空心思取名的文章分类清理并简化,比如“摄影无忌”精简为“摄影”、“饕餮人生”精简为“美食”,等等。

个人感觉还有精简的空间,毕竟完全不需要将“音乐”、“娱乐”、“绘画”这样分得很细致。暂且如此,待日后删刈。

2 回复

如今博客圈是蓝色空间号遇见的“水洼”。

Sent from my iPhone 12 Pro

成败在细节

主机换到阿里云后,评论回复邮件就挂了。上个月反复测了两天不通,想着可能是阿里云不支持,就放弃了,反正没有也没什么打紧的。

今日午睡后忽然来了感觉,一波操作后立刻成功了,原来问题出在所用SMTP邮箱的授权码上,是单独的一个身份认证密码。

所谓成败在细节,便是如此。

figcaption标签作为图片alt属性(修订版)

去年的这两天写了《将figcaption标签作为图片alt属性》。

在最后一段留了尾巴:

如部分图片已插入alt会造成一定混乱。以上代码未相应修改。

其实是代码本身有逻辑问题,加上php偏重静态,只能放弃。

今日找到更好的办法,很简单,使用JavaScript一劳永逸的解决上述缺陷和不足。

1、新建alt.js,放入theme的文件夹下,比如theme/build/js/

/* Auto Add Image Alt Attribute (JS) */
window.$ = jQuery;
$(document).ready(function(){
$('figure img').each(function() {
    var $img = $(this);
    var alt = $img.next("figcaption").text();
    $img.attr('alt', alt);
    })
})

2、wp引用js。

function pm_load_static_files(){
    wp_enqueue_script( 'alt', get_template_directory_uri() . '/build/js/alt.js');
}
add_action( 'wp_enqueue_scripts', 'pm_load_static_files' );

假使图片未设置figcaption属性,比如<ruby></ruby>项下的图片,可加入if判断句。

/* Auto Add Image Alt Attribute (JS) */
window.$ = jQuery;
$(document).ready(function(){
$('.grap img').each(function() {
    var $img = $(this);
    var alt = $img.next("figcaption").text();
	if (!alt) {
		var alt = $img.next().next("rt").text();
	}
    $img.attr('alt', alt);
    })
})

p.s. 为何感觉每次修订代码的日期都是差不多的……😳

“优雅化”足迹页面

大发做过一个插件Marker Pro,个人还挺喜欢那界面的,特别是将地标集聚化,能让足迹页面清爽不少。大发给了个装逼的广告叫“可能是最优雅与易用的”。 相应的想在MapsMarker Pro也实现类似效果,虽然MapsMarker Pro插件里也有类似功...

阅读更多

1 2 3 4 29