Text only version of website

时间:2019-01-10 作者:danski

我在一家公共服务网站工作,我们真的需要一个纯文本版本的网站,或黑白版本,供有特殊需要的人使用。

是否有任何插件或脚本可以做到这一点?非常感谢你!

3 个回复
最合适的回答,由SO网友:Rick Hellewell 整理而成

如果要从站点中删除所有彩色文本,可以使用全局CSS规则,如

* {color:black !important; background-color:white !important}
这将使所有文本在白色背景下变为黑色。(应将“*”应用于所有CSS元素。)这并不能去除图像或其他东西,所以您可以将其添加到图像中

img {display:none !important;}
然后根据需要添加其他元素。

这样做的问题是,它会影响整个网站,因此您需要有一种方法来动态更改主题,只针对纯文本用户。我认为这不容易做到。

可能会创建另一个使用相同数据库的WP安装,但为新站点设置一个主题,根据需要添加上述CSS和其他CSS。新站点位于https://www.example.com/textonly , 例如您还需要将plugins文件夹复制到新站点。

可能需要一些额外的调整,但这可能会让您开始。

Added

当我想到复制站点/相同数据库的想法时,如果复制站点使用不同的主题,可能会出现问题。

活动主题存储在wp options表中(我认为),因此共享数据库不能有不同的主题。

因此,在页面加载过程的第一部分,您需要使用挂钩来更改主题名称(和位置)。您仍然需要单独安装共享数据库,但挂钩将加载不同的主题。

也许只需要使用一个钩子来更改主题名称(和位置)的函数。钩子将查看页面的查询参数(例如https://www.example.com/some-page?theme=textonly )并检查“theme”查询参数以决定要加载哪个主题。

我认为WP core中没有指定主题名称的查询参数,尽管这是个好主意;对于在活动站点上测试新主题非常有用,有些人希望这样做。

但也许我随机的想法会让你朝着一个能满足你需求的方向前进。我对这方面的其他想法很感兴趣。

Added More

所以,在挖掘可能的钩子时,我想出了\'setup_theme\' 挂钩,在wp设置中。第407行附近的php。稍后在该文件中(大约第438行)(代码中的行号来自我的复制/粘贴):

// Load the functions for the active theme, for both parent and child theme if applicable.
439 if ( ! wp_installing() || \'wp-activate.php\' === $pagenow ) {
440         if ( TEMPLATEPATH !== STYLESHEETPATH && file_exists( STYLESHEETPATH . \'/functions.php\' ) )
441                 include( STYLESHEETPATH . \'/functions.php\' );
442         if ( file_exists( TEMPLATEPATH . \'/functions.php\' ) )
443                 include( TEMPLATEPATH . \'/functions.php\' );
444 }
因此,通过改变TEMPLATEPATHSTYLESHEETPATH 常量,我们可以更改正在使用的主题。

因此,psuedocode:

add_action(\'setup_theme\', \'my_use_different_theme\');
function my_use_different_theme() {
  TEMPLATEPATH = "path/to/the/other/theme/templates\';
  STYLESHEETPATH = "path/to/the/other/theme/styles";
return;
}
可能允许您创建一个函数,如果查询参数包含类似\'theme=newtheme\', 何处\'newtheme\' 是要使用的主题的名称。Psuedocode(伪代码):

$themename = "get/the/query/value";
if ($themename ==\'newtheme\') {
  add_action(\'setup_theme\', \'my_use_different_theme\');
}
这就叫我们的\'my_use_different_theme\' 如果页面的查询参数为theme=newtheme .

SO网友:mrben522

听起来您的实际目标是可访问性。你应该退房WCAG 2.0 看看他们的推荐标准。但简而言之,答案是否定的,没有一个好方法可以自动让你的网站变得可访问。您也可以使用WAVE scanner 找出您需要在特定页面上修复的内容。

SO网友:Stefano Tombolini

我非常喜欢这个插件:https://it.wordpress.org/plugins/wp-accessibility-helper/

它有很多功能,包括卸载CSS。

相关推荐

如何清理wp-content/plugins/wordpress-seo中不必要的文件?

我目前维护Wordpress网站7年。磁盘使用率最近已满,因此我需要定期检查自动备份并保存这些备份,然后将其从服务器中删除。当我检查时,插件文件夹中的wordpress seo文件夹(这是Yoast seo默认插件文件夹)占用了太多空间。据我所知,它充满了各种版本的插件文件。确切地说,它位于wordpress seo插件的js/dist文件夹中。它包含几种类型的小型javascript,每个名称的末尾都有某种序列或版本号,总容量约为250-300 MB。我可以清理这些文件吗?如果是,是否安全?如果我从以前