wordpress点击中文tag标签出现404解决方案
TypeCho转WordPress之后,发现点击中文tag出现404页面,也就是点击无效了。试了几种修改链接样式,都没效果。也尝试了各种网上找的3中方法:
第一种方法:打开 WP-include/classes.php(3.1之前版本)或WP-include/class-wp.php(3.1+之后版本,下文称新版)找到第154行(新版为142行),把:
$pathinfo = $_SERVER['PATH_INFO';
替换为:
$pathinfo = mb_convert_encoding($_SERVER['PATH_INFO'], 'UTF-8', 'GBK');
找到第159行(新版为147行),把:
$req_uri = $_SERVER['REQUEST_URI';
替换为:
$req_uri = mb_convert_encoding($_SERVER['REQUEST_URI'], 'UTF-8', 'GBK');
已经测试这个是可以的
第二种方法:1、在网站的根目录的wp-includes文件夹中找到“rewrite.php”这个文件;2、备份一下“rewrite.php”,以防修改出错(改代码之前我们都最好备份一下原代码);3、打开“rewrite.php”文件中我们找到如下代码:
1function get_tag_permastruct() {if (isset($this->tag_structure)) {return $this->tag_structure;}if (empty($this->permalink_structure)) { //修改这句$this->tag_structure = '';return false;}if (empty($this->tag_base))$this->tag_structure = $this->front . 'tag/';else$this->tag_structure = $this->tag_base . '/';$this->tag_structure .= '%tag%';return $this->tag_structure;}
4、将其中的
" if (empty($this->permalink_structure)) { ”修改为“ if (! empty($this->permalink_structure)) { ";
注意这个里面只加了一个英文“!”号,经测试,使用的这个方法非常有效。PS.直接没找到这个文件内说的这段代码。。。
第三种方法:最后解决中文TAG 404错误的方法,其实说到底就是ISAPI_Rewrite伪静态的规则没有写好才导致找不到网页文件的。其实就是更改一下规则就可以了:之前的tag伪静态的规则
RewriteRule /tag/(.*)$ /index\.php\?tag=$1
更改后的规则
RewriteRule /tag/(.*)/$ /index\.php\?tag=$1
WordPress中文标签Tags分页打不开解决办法
问题描述:
设置了伪静态以后,对于中文的支持就很容易出现乱码,除了常见的utf-8更改格式以外。有一些插件仍然会出现bug。
这里出现的问题就是中文tag,分页会出现404或者好似500错误。牵扯到的插件是wp-pagenavi。
解决方法:
解决wp-pagenavi插件中文tags分页问题
方法一:修改wp-pagenav文件
1、备份你的wp-pagenav分页插件,形成良好的备份习惯。这里只需要对wp-pagenavi.php文件操作,如果你懒干脆只备份此文件。
2、用FTP软件,二进制方式下载wp-pagenavi.php文件到本地,使用Editplus或Dreamweaver打开文件。搜索下面代码(大约170行):
1return "<a href='" . esc_url(get_pagenum_link($page)) . "' class='$class'>$text</a>";
3、在此句前加“#”,或用“/**/”把词句包含,注释掉此段代码。另起一行,加入如下代码:
1return "<a href='" . esc_url(mb_convert_encoding(get_pagenum_link($page), "UTF-8","GBK")) . "' class='$class'>$text</a>";
4、保存文件,并上传到服务器,测试你的Tags分页是否可用。我的Tags:网站优化,截止目前为止有10个。
方法二:给中文标签写上别名
登录wordpress后台,在文章标签里。给每一个含中文的Tags标签,加上一个标签别名。“别名” 是URL友好的另外一个名称。它通常为小写并且只能包含字母,数字和连字符。
对于上百个以上中文Tags标签的博客,此种方法工作量巨大。我看了就头疼,因此选用了第一种方法。
这里不想去改代码直接给标签加上非中问的别名就可以解决了,且可以有更好的URL形式
wordpress点击中文tag标签出现404解决方案的更多相关文章
- 若依 | 点击顶部 tag 标签不自动刷新
需求场景 之前:只要点击若依顶部的标签,页面都会自动刷新. 问题:A 页面有查询结果,切换到 B 页面查看信息,再切回 A 页面,则 A 页面的查询结果不会保留. 需求:点击标签,页面不自动刷新,或者 ...
- Nginx配置https的wordpress站点,wp-content目录下资源404解决方案
wordpress 下配置 ssl证书, server { listen ; server_name demo.example.com; ssl on; root /data/; ssl_certif ...
- WordPress教程之如何批量删除未引用(无用)的TAG标签
WordPress文章与标签的关系 在WordPress中添加标签是非常方便的,只需要在写文章时在侧栏标签处添加一下就会自动在后台增加标签(所以你是不是也跟缙哥哥一样每篇文章都增加标签呢),不像分类目 ...
- 针对CMS中的tag标签理解
针对CMS的tag标签有以下解释: 什么tag标签? TAG标签是一种由自定义的一种标签,要比分类更加的准确,可以概括文章主要内容的关键词. 运用TAG标签,可以使网站的文章更容易被搜索引擎检索到.百 ...
- 一行JS代码,解决DedeCMS TAG标签错误输入符号问题
在维护内容的时候, Tag标签输入经常要来回切换输入法, 只能通过','号分隔. 中文用户, 输入法出来的经常是全角的, 经常弄错, 增加了检查的工作量, 现在只要一句JS代码, 就自动替换所有 ...
- dede tag标签静态化
看回那2个文件夹即可,txt说明书我已经修改过. 下面说一下tag标签静态化之后在内容页.列表页中如何使用. 内容页中沿用之前的方法即可: {dede:tag sort='new' getall='0 ...
- DedeCms织梦发布文章时输入Tag标签逗号自动变成英文标点的方法
把TAG标签的间隔号由空格改为英文的逗号,这样使得经常原创文章的站长朋友非常不方便,因为我们输入汉字时总是喜欢使用全角的逗号,那么有没有办法使用 js脚本把输入的中文逗号变成英文逗号呢?当然是可以的! ...
- 使用tag标签是SEO优化的重要性是什么?
使用tag标签是SEO优化的重要性是什么? tag标签是一种SEO技术,在网站优化的过程中,更准确.更具体地用关键词对文章进行分类,对SEO优化具有重要的作用. 但是,很多新人站长在发表文章时不太注意 ...
- Vue + Element-ui实现后台管理系统(3)---面包屑 + Tag标签切换功能
面包屑 + Tag标签切换功能 有关后台管理系统之前写过两遍博客,看这篇之前最好先看下这两篇博客.另外这里只展示关键部分代码,项目代码放在github上: mall-manage-system 1.V ...
随机推荐
- CentOS中配置Kafka集群
环境:三台虚拟机Host0,Host1,Host2 Host0:192.168.10.2 Host1: 192.168.10.3 Host2: 192.168.10.4 在三台虚拟机上配置zook ...
- 基于Docker一键部署大规模Hadoop集群及设计思路
一.背景: 随着互联网的发展.互联网用户的增加,互联网中的数据也急剧膨胀.每天产生的数据量数以万计,本地文件系统和单机CPU已无法满足存储和计算要求.Hadoop分布式文件系统(HDFS)是海量数据存 ...
- Scala--集合
一.主要的集合特质 Seq有先后顺序的序列,如数组列表.IndexedSeq通过下标快速的访问元素.不可变:Vector, Range, List 可变:ArrayBuffer, LinkedList ...
- 20155204《网络对抗》Exp 6 信息搜集与漏洞扫描
20155204<网络对抗>Exp 6 信息搜集与漏洞扫描 一.实验后回答问题 1.哪些组织负责DNS,IP的管理. 互联网名称与数字地址分配机构,简称ICANN机构,决定了域名和IP地址 ...
- 20155216 Exp7 网络欺诈技术防范
Exp7 网络欺诈技术防范 基础问题回答 1.通常在什么场景下容易受到DNS spoof攻击? 1.在同一局域网下比较容易受到DNS spoof攻击,攻击者可以冒充域名服务器,来发送伪造的数据包,从而 ...
- Word2010去除灰色中括号标记
在使用的Word复制内容时,有时会出现这种情况: 去除灰色中括号 出现这种情况,是因为无意中插入了书签.解决方案如下: 或者直接使用ctrl+shift+F5,选择要删除的标签
- C++中前置声明介绍
前置声明是指对类.函数.模板或者结构体进行声明,仅仅是声明,不包含相关具体的定义.在很多场合我们可以用前置声明来代替#include语句. 类的前置声明只是告诉编译器这是一个类型,但无法告知类型的大小 ...
- 【HNOI2016】序列
题面 题解 设\([l, r]\)的最小值的位置为\(p\),那么对于左端点在区间\([l, p]\),右端点在区间\([p, r]\)的区间最小值都为\(a[p]\). 这一部分的贡献就是\(a[p ...
- 初识TPOT:一个基于Python的自动化机器学习开发工具
1. TPOT介绍 一般来讲,创建一个机器学习模型需要经历以下几步: 数据预处理 特征工程 模型选择 超参数调整 模型保存 本文介绍一个基于遗传算法的快速模型选择及调参的方法,TPOT:一种基于Pyt ...
- 洛咕 P3702 [SDOI2017]序列计数
和https://www.cnblogs.com/xzz_233/p/10060753.html一样,都是多项式快速幂,还比那个题水. 设\(a[i]\)表示\([1,m]\)中$ \mod p\(余 ...