Version Description
- Disable Toolbar on Edge due to page not found bug.
- Modifications to toolbar JS
- Remove title attribute settings remove attributes no longer being produced.
- Some code clean up and restructuring.
Download this release
Release Info
Developer | joedolson |
Plugin | WP Accessibility |
Version | 1.5.10 |
Comparing to | |
See all releases |
Code changes from version 1.5.9 to 1.5.10
- readme.txt +8 -1
- toolbar/img/sprite.png +0 -0
- toolbar/js/a11y.js +29 -29
- wp-accessibility-settings.php +3 -75
- wp-accessibility-toolbar.php +76 -0
- wp-accessibility-widget.php +35 -0
- wp-accessibility.php +79 -208
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: http://www.joedolson.com/donate/
|
|
4 |
Tags: title, accessibility, accessible, navigation, wcag, a11y, section508, focus, alt text, labels, aria
|
5 |
Requires at least: 3.4.2
|
6 |
Tested up to: 4.7
|
7 |
-
Stable tag: 1.5.
|
8 |
Text Domain: wp-accessibility
|
9 |
License: GPLv2 or later
|
10 |
|
@@ -60,6 +60,13 @@ Translating my plug-ins is always appreciated. Visit <a href="https://translate.
|
|
60 |
|
61 |
[Suggest a change!](https://github.com/joedolson/wp-accessibility/)
|
62 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
63 |
= 1.5.9 =
|
64 |
|
65 |
* Bug fix: another swapped options check, elsewhere. Sigh.
|
4 |
Tags: title, accessibility, accessible, navigation, wcag, a11y, section508, focus, alt text, labels, aria
|
5 |
Requires at least: 3.4.2
|
6 |
Tested up to: 4.7
|
7 |
+
Stable tag: 1.5.10
|
8 |
Text Domain: wp-accessibility
|
9 |
License: GPLv2 or later
|
10 |
|
60 |
|
61 |
[Suggest a change!](https://github.com/joedolson/wp-accessibility/)
|
62 |
|
63 |
+
= 1.5.10 =
|
64 |
+
|
65 |
+
* Disable Toolbar on Edge due to page not found bug.
|
66 |
+
* Modifications to toolbar JS
|
67 |
+
* Remove title attribute settings remove attributes no longer being produced.
|
68 |
+
* Some code clean up and restructuring.
|
69 |
+
|
70 |
= 1.5.9 =
|
71 |
|
72 |
* Bug fix: another swapped options check, elsewhere. Sigh.
|
toolbar/img/sprite.png
DELETED
Binary file
|
toolbar/js/a11y.js
CHANGED
@@ -9,8 +9,10 @@ function createCookie(name, value, days) {
|
|
9 |
var date = new Date();
|
10 |
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
|
11 |
var expires = "; expires=" + date.toGMTString();
|
12 |
-
} else
|
13 |
var expires = "";
|
|
|
|
|
14 |
document.cookie = name + "=" + value + expires + "; path=/";
|
15 |
}
|
16 |
|
@@ -22,6 +24,7 @@ function readCookie(name) {
|
|
22 |
while (c.charAt(0) == ' ') c = c.substring(1, c.length);
|
23 |
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
|
24 |
}
|
|
|
25 |
return null;
|
26 |
}
|
27 |
|
@@ -30,70 +33,67 @@ function eraseCookie(name) {
|
|
30 |
createCookie(name, "");
|
31 |
}
|
32 |
|
33 |
-
|
34 |
// Saturation handler
|
35 |
if (readCookie('a11y-desaturated')) {
|
36 |
$('body').addClass('desaturated');
|
37 |
$('#is_normal_color').attr('id', 'is_grayscale').attr('aria-pressed', true).addClass('active');
|
38 |
}
|
39 |
-
|
40 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
41 |
if ($(this).attr('id') == "is_normal_color") {
|
42 |
$('body').addClass('desaturated');
|
43 |
$(this).attr('id', 'is_grayscale').attr('aria-pressed', true).addClass('active');
|
44 |
createCookie('a11y-desaturated', '1');
|
45 |
-
return false;
|
46 |
} else {
|
47 |
$('body').removeClass('desaturated');
|
48 |
$(this).attr('id', 'is_normal_color').attr('aria-pressed', false).removeClass('active');
|
49 |
eraseCookie('a11y-desaturated');
|
50 |
-
return false;
|
51 |
}
|
|
|
|
|
52 |
});
|
53 |
-
//var a11y_stylesheet_path = $('.a11y_stylesheet_path').html();
|
54 |
-
// Contrast handler
|
55 |
-
if (readCookie('a11y-high-contrast')) {
|
56 |
-
$('body').addClass('contrast');
|
57 |
-
$('head').append($("<link href='" + a11y_stylesheet_path + "' id='highContrastStylesheet' rel='stylesheet' type='text/css' />"));
|
58 |
-
$('#is_normal_contrast').attr('id', 'is_high_contrast').attr('aria-pressed', true).addClass('active');
|
59 |
-
$('.a11y-toolbar ul li a i').addClass('icon-white');
|
60 |
-
}
|
61 |
-
;
|
62 |
|
63 |
-
$('.toggle-contrast').on('click', function () {
|
64 |
if ($(this).attr('id') == "is_normal_contrast") {
|
65 |
$('head').append($("<link href='" + a11y_stylesheet_path + "' id='highContrastStylesheet' rel='stylesheet' type='text/css' />"));
|
66 |
$('body').addClass('contrast');
|
67 |
$(this).attr('id', 'is_high_contrast').attr('aria-pressed', true).addClass('active');
|
68 |
createCookie('a11y-high-contrast', '1');
|
69 |
-
return false;
|
70 |
} else {
|
71 |
$('#highContrastStylesheet').remove();
|
72 |
$('body').removeClass('contrast');
|
73 |
$(this).attr('id', 'is_normal_contrast').attr('aria-pressed', false).removeClass('active');
|
74 |
eraseCookie('a11y-high-contrast');
|
75 |
-
return false;
|
76 |
}
|
|
|
|
|
77 |
});
|
78 |
|
79 |
-
|
80 |
-
if (readCookie('a11y-larger-fontsize')) {
|
81 |
-
$('html').addClass('fontsize');
|
82 |
-
$('#is_normal_fontsize').attr('id', 'is_large_fontsize').attr('aria-pressed', true).addClass('active');
|
83 |
-
}
|
84 |
-
|
85 |
-
$('.toggle-fontsize').on('click', function () {
|
86 |
if ($(this).attr('id') == "is_normal_fontsize") {
|
87 |
$('html').addClass('fontsize');
|
88 |
$(this).attr('id', 'is_large_fontsize').attr('aria-pressed', true).addClass('active');
|
89 |
createCookie('a11y-larger-fontsize', '1');
|
90 |
-
return false;
|
91 |
} else {
|
92 |
$('html').removeClass('fontsize');
|
93 |
$(this).attr('id', 'is_normal_fontsize').attr('aria-pressed', false).removeClass('active');
|
94 |
eraseCookie('a11y-larger-fontsize');
|
95 |
-
return false;
|
96 |
}
|
|
|
|
|
97 |
});
|
98 |
|
99 |
// Sets a -1 tabindex to ALL sections for .focus()-ing
|
@@ -112,5 +112,5 @@ jQuery(document).ready(function ($) {
|
|
112 |
$(anchorUponArrival).focus();
|
113 |
}, 100);
|
114 |
}
|
115 |
-
|
116 |
-
});
|
9 |
var date = new Date();
|
10 |
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
|
11 |
var expires = "; expires=" + date.toGMTString();
|
12 |
+
} else {
|
13 |
var expires = "";
|
14 |
+
}
|
15 |
+
|
16 |
document.cookie = name + "=" + value + expires + "; path=/";
|
17 |
}
|
18 |
|
24 |
while (c.charAt(0) == ' ') c = c.substring(1, c.length);
|
25 |
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
|
26 |
}
|
27 |
+
|
28 |
return null;
|
29 |
}
|
30 |
|
33 |
createCookie(name, "");
|
34 |
}
|
35 |
|
36 |
+
( function( $ ) {
|
37 |
// Saturation handler
|
38 |
if (readCookie('a11y-desaturated')) {
|
39 |
$('body').addClass('desaturated');
|
40 |
$('#is_normal_color').attr('id', 'is_grayscale').attr('aria-pressed', true).addClass('active');
|
41 |
}
|
42 |
+
|
43 |
+
if (readCookie('a11y-high-contrast')) {
|
44 |
+
$('body').addClass('contrast');
|
45 |
+
$('head').append($("<link href='" + a11y_stylesheet_path + "' id='highContrastStylesheet' rel='stylesheet' type='text/css' />"));
|
46 |
+
$('#is_normal_contrast').attr('id', 'is_high_contrast').attr('aria-pressed', true).addClass('active');
|
47 |
+
$('.a11y-toolbar ul li a i').addClass('icon-white');
|
48 |
+
}
|
49 |
+
|
50 |
+
if (readCookie('a11y-larger-fontsize')) {
|
51 |
+
$('html').addClass('fontsize');
|
52 |
+
$('#is_normal_fontsize').attr('id', 'is_large_fontsize').attr('aria-pressed', true).addClass('active');
|
53 |
+
}
|
54 |
+
|
55 |
+
$('.toggle-grayscale').on('click', function (e) {
|
56 |
if ($(this).attr('id') == "is_normal_color") {
|
57 |
$('body').addClass('desaturated');
|
58 |
$(this).attr('id', 'is_grayscale').attr('aria-pressed', true).addClass('active');
|
59 |
createCookie('a11y-desaturated', '1');
|
|
|
60 |
} else {
|
61 |
$('body').removeClass('desaturated');
|
62 |
$(this).attr('id', 'is_normal_color').attr('aria-pressed', false).removeClass('active');
|
63 |
eraseCookie('a11y-desaturated');
|
|
|
64 |
}
|
65 |
+
|
66 |
+
return false;
|
67 |
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
68 |
|
69 |
+
$('.toggle-contrast').on('click', function (e) {
|
70 |
if ($(this).attr('id') == "is_normal_contrast") {
|
71 |
$('head').append($("<link href='" + a11y_stylesheet_path + "' id='highContrastStylesheet' rel='stylesheet' type='text/css' />"));
|
72 |
$('body').addClass('contrast');
|
73 |
$(this).attr('id', 'is_high_contrast').attr('aria-pressed', true).addClass('active');
|
74 |
createCookie('a11y-high-contrast', '1');
|
|
|
75 |
} else {
|
76 |
$('#highContrastStylesheet').remove();
|
77 |
$('body').removeClass('contrast');
|
78 |
$(this).attr('id', 'is_normal_contrast').attr('aria-pressed', false).removeClass('active');
|
79 |
eraseCookie('a11y-high-contrast');
|
|
|
80 |
}
|
81 |
+
|
82 |
+
return false;
|
83 |
});
|
84 |
|
85 |
+
$('.toggle-fontsize').on('click', function (e) {
|
|
|
|
|
|
|
|
|
|
|
|
|
86 |
if ($(this).attr('id') == "is_normal_fontsize") {
|
87 |
$('html').addClass('fontsize');
|
88 |
$(this).attr('id', 'is_large_fontsize').attr('aria-pressed', true).addClass('active');
|
89 |
createCookie('a11y-larger-fontsize', '1');
|
|
|
90 |
} else {
|
91 |
$('html').removeClass('fontsize');
|
92 |
$(this).attr('id', 'is_normal_fontsize').attr('aria-pressed', false).removeClass('active');
|
93 |
eraseCookie('a11y-larger-fontsize');
|
|
|
94 |
}
|
95 |
+
|
96 |
+
return false;
|
97 |
});
|
98 |
|
99 |
// Sets a -1 tabindex to ALL sections for .focus()-ing
|
112 |
$(anchorUponArrival).focus();
|
113 |
}, 100);
|
114 |
}
|
115 |
+
|
116 |
+
} )( jQuery );
|
wp-accessibility-settings.php
CHANGED
@@ -13,22 +13,9 @@ function wpa_update_settings() {
|
|
13 |
die( "Security check failed" );
|
14 |
}
|
15 |
if ( isset( $_POST['action'] ) && $_POST['action'] == 'rta' ) {
|
16 |
-
$rta_from_nav_menu = ( isset( $_POST['rta_from_nav_menu'] ) ) ? 'on' : '';
|
17 |
-
$rta_from_page_lists = ( isset( $_POST['rta_from_page_lists'] ) ) ? 'on' : '';
|
18 |
-
$rta_from_category_lists = ( isset( $_POST['rta_from_category_lists'] ) ) ? 'on' : '';
|
19 |
-
$rta_from_archive_links = ( isset( $_POST['rta_from_archive_links'] ) ) ? 'on' : '';
|
20 |
$rta_from_tag_clouds = ( isset( $_POST['rta_from_tag_clouds'] ) ) ? 'on' : '';
|
21 |
-
$rta_from_category_links = ( isset( $_POST['rta_from_category_links'] ) ) ? 'on' : '';
|
22 |
-
$rta_from_post_edit_links = ( isset( $_POST['rta_from_post_edit_links'] ) ) ? 'on' : '';
|
23 |
-
$rta_from_edit_comment_links = ( isset( $_POST['rta_from_edit_comment_links'] ) ) ? 'on' : '';
|
24 |
-
update_option( 'rta_from_nav_menu', $rta_from_nav_menu );
|
25 |
-
update_option( 'rta_from_page_lists', $rta_from_page_lists );
|
26 |
-
update_option( 'rta_from_category_lists', $rta_from_category_lists );
|
27 |
-
update_option( 'rta_from_archive_links', $rta_from_archive_links );
|
28 |
update_option( 'rta_from_tag_clouds', $rta_from_tag_clouds );
|
29 |
-
|
30 |
-
update_option( 'rta_from_post_edit_links', $rta_from_post_edit_links );
|
31 |
-
update_option( 'rta_from_edit_comment_links', $rta_from_edit_comment_links );
|
32 |
$message = __( "Remove Title Attributes Settings Updated", 'wp-accessibility' );
|
33 |
|
34 |
return "<div class='updated'><p>" . $message . "</p></div>";
|
@@ -419,77 +406,17 @@ function wpa_admin_menu() {
|
|
419 |
<h2 class='hndle'><?php _e( 'Remove Title Attributes', 'wp-accessibility' ); ?></h2>
|
420 |
|
421 |
<div class="inside">
|
422 |
-
|
423 |
-
<p>
|
424 |
-
<?php _e( 'As of WordPress 4.0, the only globally added title attributes are in the WordPress tag cloud, showing the number of posts with that tag, and on the categories list, if the category has a term description.', 'wp-accessibility' ); ?>
|
425 |
-
</p>
|
426 |
<form method="post"
|
427 |
action="<?php echo admin_url( 'options-general.php?page=wp-accessibility/wp-accessibility.php' ); ?>">
|
428 |
<fieldset>
|
429 |
<legend><?php _e( 'Remove title attributes from:', 'wp-accessibility' ); ?></legend>
|
430 |
<ul>
|
431 |
-
<?php if ( version_compare( get_bloginfo( 'version' ), '3.8', '<' ) ) { ?>
|
432 |
-
<li>
|
433 |
-
<input type="checkbox" id="rta_from_nav_menu"
|
434 |
-
name="rta_from_nav_menu" <?php if ( get_option( 'rta_from_nav_menu' ) == "on" ) {
|
435 |
-
echo 'checked="checked" ';
|
436 |
-
} ?>/> <label
|
437 |
-
for="rta_from_nav_menu"><?php _e( 'Nav menus', 'wp-accessibility' ); ?>
|
438 |
-
(<?php echo ( version_compare( get_bloginfo( 'version' ), '3.8', '>=' ) ) ? __( 'Obsolete since WordPress 3.8', 'wp-accessibility' ) : ''; ?>
|
439 |
-
)</label></li>
|
440 |
-
<li>
|
441 |
-
<input type="checkbox" id="rta_from_page_lists"
|
442 |
-
name="rta_from_page_lists" <?php if ( get_option( 'rta_from_page_lists' ) == "on" ) {
|
443 |
-
echo 'checked="checked" ';
|
444 |
-
} ?>/> <label
|
445 |
-
for="rta_from_page_lists"><?php _e( 'Page lists', 'wp-accessibility' ); ?>
|
446 |
-
(<?php echo ( version_compare( get_bloginfo( 'version' ), '3.8', '>=' ) ) ? __( 'Obsolete since WordPress 3.8', 'wp-accessibility' ) : ''; ?>
|
447 |
-
)</label></li>
|
448 |
-
<li>
|
449 |
-
<input type="checkbox" id="rta_from_category_links"
|
450 |
-
name="rta_from_category_links" <?php if ( get_option( 'rta_from_category_links' ) == "on" ) {
|
451 |
-
echo 'checked="checked" ';
|
452 |
-
} ?>/> <label
|
453 |
-
for="rta_from_category_links"><?php _e( 'Category links', 'wp-accessibility' ); ?>
|
454 |
-
(<?php echo ( version_compare( get_bloginfo( 'version' ), '3.8', '>=' ) ) ? __( 'Obsolete since WordPress 3.8', 'wp-accessibility' ) : ''; ?>
|
455 |
-
)</label></li>
|
456 |
-
<li>
|
457 |
-
<input type="checkbox" id="rta_from_post_edit_links"
|
458 |
-
name="rta_from_post_edit_links" <?php if ( get_option( 'rta_from_post_edit_links' ) == "on" ) {
|
459 |
-
echo 'checked="checked" ';
|
460 |
-
} ?>/> <label
|
461 |
-
for="rta_from_post_edit_links"><?php _e( 'Post edit links', 'wp-accessibility' ); ?>
|
462 |
-
(<?php echo ( version_compare( get_bloginfo( 'version' ), '3.8', '>=' ) ) ? __( 'Obsolete since WordPress 3.8', 'wp-accessibility' ) : ''; ?>
|
463 |
-
)</label></li>
|
464 |
-
<li>
|
465 |
-
<input type="checkbox" id="rta_from_edit_comment_links"
|
466 |
-
name="rta_from_edit_comment_links" <?php if ( get_option( 'rta_from_edit_comment_links' ) == "on" ) {
|
467 |
-
echo 'checked="checked" ';
|
468 |
-
} ?>/> <label
|
469 |
-
for="rta_from_edit_comment_links"><?php _e( 'Edit comment links', 'wp-accessibility' ); ?>
|
470 |
-
(<?php echo ( version_compare( get_bloginfo( 'version' ), '3.8', '>=' ) ) ? __( 'Obsolete since WordPress 3.8', 'wp-accessibility' ) : ''; ?>
|
471 |
-
)</label></li>
|
472 |
-
<?php } ?>
|
473 |
-
<?php if ( version_compare( get_bloginfo( 'version' ), '4.0', '<' ) ) { ?>
|
474 |
-
<li><input type="checkbox" id="rta_from_category_lists"
|
475 |
-
name="rta_from_category_lists" <?php if ( get_option( 'rta_from_category_lists' ) == "on" ) {
|
476 |
-
echo 'checked="checked" ';
|
477 |
-
} ?>/> <label
|
478 |
-
for="rta_from_category_lists"><?php _e( 'Category lists', 'wp-accessibility' ); ?></label>
|
479 |
-
</li>
|
480 |
-
|
481 |
-
<?php } ?>
|
482 |
<li><input type="checkbox" id="rta_from_tag_clouds"
|
483 |
name="rta_from_tag_clouds" <?php if ( get_option( 'rta_from_tag_clouds' ) == "on" ) {
|
484 |
echo 'checked="checked" ';
|
485 |
} ?>/> <label
|
486 |
for="rta_from_tag_clouds"><?php _e( 'Tag clouds', 'wp-accessibility' ); ?></label>
|
487 |
-
</li>
|
488 |
-
<li><input type="checkbox" id="rta_from_archive_links"
|
489 |
-
name="rta_from_archive_links" <?php if ( get_option( 'rta_from_archive_links' ) == "on" ) {
|
490 |
-
echo 'checked="checked" ';
|
491 |
-
} ?>/> <label
|
492 |
-
for="rta_from_archive_links"><?php _e( 'Archive links', 'wp-accessibility' ); ?></label>
|
493 |
</li>
|
494 |
</ul>
|
495 |
</fieldset>
|
@@ -650,6 +577,7 @@ function wpa_admin_menu() {
|
|
650 |
|
651 |
<div class="inside">
|
652 |
<ul>
|
|
|
653 |
<li><a href="http://make.wordpress.org/accessibility/">Make WordPress: Accessibility</a></li>
|
654 |
<li><a href="https://make.wordpress.org/themes/handbook/review/accessibility/">WordPress Theme Accessibility Guidelines</a></li>
|
655 |
<li><a href="http://make.wordpress.org/support/user-manual/web-publishing/accessibility/">WordPress
|
13 |
die( "Security check failed" );
|
14 |
}
|
15 |
if ( isset( $_POST['action'] ) && $_POST['action'] == 'rta' ) {
|
|
|
|
|
|
|
|
|
16 |
$rta_from_tag_clouds = ( isset( $_POST['rta_from_tag_clouds'] ) ) ? 'on' : '';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
17 |
update_option( 'rta_from_tag_clouds', $rta_from_tag_clouds );
|
18 |
+
|
|
|
|
|
19 |
$message = __( "Remove Title Attributes Settings Updated", 'wp-accessibility' );
|
20 |
|
21 |
return "<div class='updated'><p>" . $message . "</p></div>";
|
406 |
<h2 class='hndle'><?php _e( 'Remove Title Attributes', 'wp-accessibility' ); ?></h2>
|
407 |
|
408 |
<div class="inside">
|
409 |
+
<?php wpa_accessible_theme(); ?>
|
|
|
|
|
|
|
410 |
<form method="post"
|
411 |
action="<?php echo admin_url( 'options-general.php?page=wp-accessibility/wp-accessibility.php' ); ?>">
|
412 |
<fieldset>
|
413 |
<legend><?php _e( 'Remove title attributes from:', 'wp-accessibility' ); ?></legend>
|
414 |
<ul>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
415 |
<li><input type="checkbox" id="rta_from_tag_clouds"
|
416 |
name="rta_from_tag_clouds" <?php if ( get_option( 'rta_from_tag_clouds' ) == "on" ) {
|
417 |
echo 'checked="checked" ';
|
418 |
} ?>/> <label
|
419 |
for="rta_from_tag_clouds"><?php _e( 'Tag clouds', 'wp-accessibility' ); ?></label>
|
|
|
|
|
|
|
|
|
|
|
|
|
420 |
</li>
|
421 |
</ul>
|
422 |
</fieldset>
|
577 |
|
578 |
<div class="inside">
|
579 |
<ul>
|
580 |
+
<li><a href="http://make.wordpress.org/accessibility/wp-accessibility-plugin/">Documentation</a></li>
|
581 |
<li><a href="http://make.wordpress.org/accessibility/">Make WordPress: Accessibility</a></li>
|
582 |
<li><a href="https://make.wordpress.org/themes/handbook/review/accessibility/">WordPress Theme Accessibility Guidelines</a></li>
|
583 |
<li><a href="http://make.wordpress.org/support/user-manual/web-publishing/accessibility/">WordPress
|
wp-accessibility-toolbar.php
ADDED
@@ -0,0 +1,76 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
add_shortcode( 'wpa_toolbar', 'wpa_toolbar_html' );
|
4 |
+
function wpa_toolbar_html() {
|
5 |
+
$contrast = __( 'Toggle High Contrast', 'wp-accessibility' );
|
6 |
+
$grayscale = __( 'Toggle Grayscale', 'wp-accessibility' );
|
7 |
+
$fontsize = __( 'Toggle Font size', 'wp-accessibility' );
|
8 |
+
$enable_grayscale = ( get_option( 'wpa_toolbar_gs' ) == 'on' ) ? true : false;
|
9 |
+
$enable_contrast = ( get_option( 'wpa_toolbar_ct' ) == 'off' ) ? false : true;
|
10 |
+
$enable_fontsize = ( get_option( 'wpa_toolbar_fs' ) == 'off' ) ? false : true;
|
11 |
+
$responsive = ( get_option( 'wpa_toolbar_mobile' ) == 'on' ) ? 'a11y-responsive ' : '';
|
12 |
+
$toolbar = '
|
13 |
+
<!-- a11y toolbar widget -->
|
14 |
+
<div class="' . $responsive . 'a11y-toolbar-widget">
|
15 |
+
<ul>';
|
16 |
+
if ( $enable_contrast ) {
|
17 |
+
$toolbar .= '<li><a href="#" class="a11y-toggle-contrast toggle-contrast" id="is_normal_contrast"><span class="offscreen">'.$contrast.'</span><span class="aticon aticon-adjust"></span></a></li>';
|
18 |
+
}
|
19 |
+
if ( $enable_grayscale ) {
|
20 |
+
$toolbar .= '<li><a href="#" class="a11y-toggle-grayscale toggle-grayscale" id="is_normal_color"><span class="offscreen">'.$grayscale.'</span><span class="aticon aticon-tint"></span></a></li>';
|
21 |
+
}
|
22 |
+
if ( $enable_fontsize ) {
|
23 |
+
$toolbar .= '<li><a href="#" class="a11y-toggle-fontsize toggle-fontsize" id="is_normal_fontsize"><span class="offscreen">'.$fontsize.'</span><span class="aticon aticon-font"></span></a></li>';
|
24 |
+
}
|
25 |
+
$toolbar .= '
|
26 |
+
</ul>
|
27 |
+
</div>
|
28 |
+
<!-- // a11y toolbar widget -->';
|
29 |
+
|
30 |
+
return $toolbar;
|
31 |
+
}
|
32 |
+
|
33 |
+
function wpa_toolbar_js() {
|
34 |
+
// Toolbar does not work on Edge. Disable unless I solve the issue.
|
35 |
+
$user_agent = ( isset( $_SERVER['HTTP_USER_AGENT'] ) ) ? $_SERVER['HTTP_USER_AGENT'] : '';
|
36 |
+
if ( preg_match( '/Edge/i', $user_agent ) ) {
|
37 |
+
return;
|
38 |
+
}
|
39 |
+
|
40 |
+
$contrast = __( 'Toggle High Contrast', 'wp-accessibility' );
|
41 |
+
$grayscale = __( 'Toggle Grayscale', 'wp-accessibility' );
|
42 |
+
$fontsize = __( 'Toggle Font size', 'wp-accessibility' );
|
43 |
+
$enable_grayscale = ( get_option( 'wpa_toolbar_gs' ) == 'on' ) ? true : false;
|
44 |
+
$enable_fontsize = ( get_option( 'wpa_toolbar_fs' ) == 'off' ) ? false : true;
|
45 |
+
$enable_contrast = ( get_option( 'wpa_toolbar_ct' ) == 'off' ) ? false : true;
|
46 |
+
$default = ( get_option( 'wpa_toolbar_default' ) != '' ) ? get_option( 'wpa_toolbar_default' ) : 'body';
|
47 |
+
$location = apply_filters( 'wpa_move_toolbar', $default );
|
48 |
+
$is_rtl = ( is_rtl() ) ? ' rtl' : ' ltr';
|
49 |
+
$is_right = ( get_option( 'wpa_toolbar_right' ) == 'on' ) ? ' right' : '';
|
50 |
+
$responsive = ( get_option( 'wpa_toolbar_mobile' ) == 'on' ) ? 'a11y-responsive' : '';
|
51 |
+
echo
|
52 |
+
"
|
53 |
+
<script type='text/javascript'>
|
54 |
+
//<![CDATA[
|
55 |
+
(function( $ ) { 'use strict';
|
56 |
+
var insert_a11y_toolbar = '<!-- a11y toolbar -->';
|
57 |
+
insert_a11y_toolbar += '<div class=\"$responsive a11y-toolbar$is_rtl$is_right\">';
|
58 |
+
insert_a11y_toolbar += '<ul class=\"a11y-toolbar-list\">';";
|
59 |
+
if ( get_option( 'wpa_toolbar' ) == 'on' && $enable_contrast ) {
|
60 |
+
echo "insert_a11y_toolbar += '<li class=\"a11y-toolbar-list-item\"><button type=\"button\" class=\"a11y-toggle-contrast toggle-contrast\" id=\"is_normal_contrast\" aria-pressed=\"false\"><span class=\"offscreen\">$contrast</span><span class=\"aticon aticon-adjust\" aria-hidden=\"true\"></span></button></li>';";
|
61 |
+
}
|
62 |
+
if ( get_option( 'wpa_toolbar' ) == 'on' && $enable_grayscale ) {
|
63 |
+
echo "insert_a11y_toolbar += '<li class=\"a11y-toolbar-list-item\"><button type=\"button\" class=\"a11y-toggle-grayscale toggle-grayscale\" id=\"is_normal_color\" aria-pressed=\"false\"><span class=\"offscreen\">$grayscale</span><span class=\"aticon aticon-tint\" aria-hidden=\"true\"></span></button></li>';";
|
64 |
+
}
|
65 |
+
if ( get_option( 'wpa_toolbar' ) == 'on' && $enable_fontsize ) {
|
66 |
+
echo "insert_a11y_toolbar += '<li class=\"a11y-toolbar-list-item\"><button type=\"button\" class=\"a11y-toggle-fontsize toggle-fontsize\" id=\"is_normal_fontsize\" aria-pressed=\"false\"><span class=\"offscreen\">$fontsize</span><span class=\"aticon aticon-font\" aria-hidden=\"true\"></span></button></li>';";
|
67 |
+
}
|
68 |
+
echo "
|
69 |
+
insert_a11y_toolbar += '</ul>';
|
70 |
+
insert_a11y_toolbar += '</div>';
|
71 |
+
insert_a11y_toolbar += '<!-- // a11y toolbar -->';
|
72 |
+
$( document ).find( '$location' ).prepend( insert_a11y_toolbar );
|
73 |
+
}(jQuery));
|
74 |
+
//]]>
|
75 |
+
</script>";
|
76 |
+
}
|
wp-accessibility-widget.php
ADDED
@@ -0,0 +1,35 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
add_action( 'widgets_init', create_function( '', 'return register_widget("wp_accessibility_toolbar");' ) );
|
4 |
+
class wp_accessibility_toolbar extends WP_Widget {
|
5 |
+
function __construct() {
|
6 |
+
parent::__construct( false, $name = __( 'Accessibility Toolbar', 'wp-accessibility' ), array( 'customize_selective_refresh' => true ) );
|
7 |
+
}
|
8 |
+
|
9 |
+
function widget( $args, $instance ) {
|
10 |
+
extract( $args );
|
11 |
+
|
12 |
+
$title = apply_filters( 'widget_title', ( empty( $instance['title'] ) ? false : $instance['title'] ), $instance, $args );
|
13 |
+
echo $before_widget;
|
14 |
+
echo ( $title ) ? $before_title . $title . $after_title : '';
|
15 |
+
echo wpa_toolbar_html();
|
16 |
+
echo $after_widget;
|
17 |
+
}
|
18 |
+
|
19 |
+
function form( $instance ) {
|
20 |
+
$title = ( isset( $instance['title'] ) ) ? esc_attr( $instance['title'] ) : '';
|
21 |
+
?>
|
22 |
+
<p>
|
23 |
+
<label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e( 'Title:', 'wp-accessibility' ); ?></label>
|
24 |
+
<input class="widefat" id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" type="text" value="<?php esc_attr_e( $title ); ?>"/>
|
25 |
+
</p>
|
26 |
+
<?php
|
27 |
+
}
|
28 |
+
|
29 |
+
function update( $new_instance, $old_instance ) {
|
30 |
+
$instance = $old_instance;
|
31 |
+
$instance['title'] = strip_tags( $new_instance['title'] );
|
32 |
+
|
33 |
+
return $instance;
|
34 |
+
}
|
35 |
+
}
|
wp-accessibility.php
CHANGED
@@ -3,13 +3,13 @@
|
|
3 |
Plugin Name: WP Accessibility
|
4 |
Plugin URI: http://www.joedolson.com/wp-accessibility/
|
5 |
Description: Helps improve accessibility in your WordPress site, like removing title attributes.
|
6 |
-
Version: 1.5.
|
7 |
Author: Joe Dolson
|
8 |
Text Domain: wp-accessibility
|
9 |
Domain Path: /lang
|
10 |
Author URI: http://www.joedolson.com/
|
11 |
|
12 |
-
Copyright 2012-
|
13 |
|
14 |
This program is free software; you can redistribute it and/or modify
|
15 |
it under the terms of the GNU General Public License as published by
|
@@ -27,6 +27,8 @@ Author URI: http://www.joedolson.com/
|
|
27 |
*/
|
28 |
|
29 |
include( dirname( __FILE__ ) . '/wp-accessibility-settings.php' );
|
|
|
|
|
30 |
register_activation_hook( __FILE__, 'wpa_install' );
|
31 |
|
32 |
// Enable internationalisation
|
@@ -42,9 +44,26 @@ function add_wpa_admin_menu() {
|
|
42 |
add_options_page( 'WP Accessibility', 'WP Accessibility', 'manage_options', __FILE__, 'wpa_admin_menu' );
|
43 |
}
|
44 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
45 |
// ACTIVATION
|
46 |
function wpa_install() {
|
47 |
-
$wpa_version = '1.5.
|
48 |
if ( get_option( 'wpa_installed' ) != 'true' ) {
|
49 |
add_option( 'rta_from_nav_menu', 'on' );
|
50 |
add_option( 'rta_from_page_lists', 'on' );
|
@@ -77,6 +96,7 @@ function wpa_check_version() {
|
|
77 |
}
|
78 |
}
|
79 |
|
|
|
80 |
function wpa_plugin_action( $links, $file ) {
|
81 |
if ( $file == plugin_basename( dirname( __FILE__ ) . '/wp-accessibility.php' ) ) {
|
82 |
$admin_url = admin_url( 'options-general.php?page=wp-accessibility/wp-accessibility.php' );
|
@@ -86,62 +106,19 @@ function wpa_plugin_action( $links, $file ) {
|
|
86 |
return $links;
|
87 |
}
|
88 |
|
89 |
-
//Add Plugin Actions to WordPress
|
90 |
-
add_filter( 'plugin_action_links', 'wpa_plugin_action', 10, 2 );
|
91 |
-
add_action( 'wp_enqueue_scripts', 'wpa_register_scripts' );
|
92 |
-
add_action( 'admin_menu', 'wpa_javascript' );
|
93 |
-
|
94 |
/**
|
95 |
* Enqueue color picker for contrast testing
|
96 |
**/
|
97 |
-
|
98 |
-
|
|
|
|
|
99 |
wp_enqueue_script( 'farbtastic' );
|
100 |
}
|
101 |
}
|
102 |
|
103 |
-
function wpa_admin_stylesheet() {
|
104 |
-
|
105 |
-
if ( file_exists( get_stylesheet_directory() . '/wp-admin.css' ) ) {
|
106 |
-
$file = get_stylesheet_directory_uri() . '/wp-admin.css';
|
107 |
-
wp_register_style( 'wp-a11y-css', $file );
|
108 |
-
wp_enqueue_style( 'wp-a11y-css' );
|
109 |
-
}
|
110 |
-
|
111 |
-
if ( get_option( 'wpa_row_actions' ) == 'on' ) {
|
112 |
-
if ( file_exists( get_stylesheet_directory() . '/wp-admin-row-actions.css' ) ) {
|
113 |
-
$file = get_stylesheet_directory_uri() . '/wp-admin-row-actions.css';
|
114 |
-
} else {
|
115 |
-
$file = plugins_url( 'css/wp-admin-row-actions.css', __FILE__ );
|
116 |
-
}
|
117 |
-
wp_register_style( 'wp-row-actions', $file );
|
118 |
-
wp_enqueue_style( 'wp-row-actions' );
|
119 |
-
}
|
120 |
-
}
|
121 |
-
|
122 |
-
function wpa_admin_js() {
|
123 |
-
return;
|
124 |
-
} // just a placeholder
|
125 |
-
|
126 |
-
add_action( 'admin_head', 'wpa_admin_stylesheet' );
|
127 |
-
add_action( 'admin_head', 'wpa_admin_js' );
|
128 |
-
|
129 |
-
function wpa_write_js() {
|
130 |
-
if ( isset( $_GET['page'] ) && $_GET['page'] == 'wp-accessibility/wp-accessibility.php' ) {
|
131 |
-
?>
|
132 |
-
<script>
|
133 |
-
//<![CDATA[
|
134 |
-
(function ($) {
|
135 |
-
'use strict';
|
136 |
-
$('#fore').farbtastic('#color1');
|
137 |
-
$('#back').farbtastic('#color2');
|
138 |
-
}(jQuery));
|
139 |
-
//]]>
|
140 |
-
</script>
|
141 |
-
<?php
|
142 |
-
}
|
143 |
-
}
|
144 |
|
|
|
145 |
function wpa_register_scripts() {
|
146 |
// register jQuery scripts;
|
147 |
wp_register_script( 'skiplinks.webkit', plugins_url( 'wp-accessibility/js/skiplinks.webkit.js' ) );
|
@@ -149,17 +126,9 @@ function wpa_register_scripts() {
|
|
149 |
wp_register_script( 'scrollTo', plugins_url( 'wp-accessibility/toolbar/js/jquery.scrollto.min.js' ), array( 'jquery' ), '1.4.5', true );
|
150 |
}
|
151 |
|
152 |
-
add_action( 'wp_footer', 'wpa_jquery_asl', 100 );
|
153 |
add_action( 'wp_enqueue_scripts', 'wpacc_enqueue_scripts' );
|
154 |
-
add_action( 'wp_head', 'wpa_css' );
|
155 |
-
add_action( 'wp_enqueue_scripts', 'wpa_core_scripts' );
|
156 |
-
add_action( 'wp_enqueue_scripts', 'wpa_stylesheet' );
|
157 |
-
|
158 |
-
function wpa_core_scripts() {
|
159 |
-
wp_enqueue_script( 'jquery' );
|
160 |
-
}
|
161 |
-
|
162 |
function wpacc_enqueue_scripts() {
|
|
|
163 |
if ( get_option( 'asl_enable' ) == 'on' ) {
|
164 |
wp_enqueue_script( 'skiplinks.webkit' );
|
165 |
}
|
@@ -203,109 +172,64 @@ function wpacc_enqueue_scripts() {
|
|
203 |
}
|
204 |
}
|
205 |
|
206 |
-
add_action( '
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
echo
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
function form( $instance ) {
|
223 |
-
$title = ( isset( $instance['title'] ) ) ? esc_attr( $instance['title'] ) : '';
|
224 |
-
?>
|
225 |
-
<p>
|
226 |
-
<label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e( 'Title:', 'wp-accessibility' ); ?></label>
|
227 |
-
<input class="widefat" id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" type="text" value="<?php esc_attr_e( $title ); ?>"/>
|
228 |
-
</p>
|
229 |
-
<?php
|
230 |
-
}
|
231 |
-
|
232 |
-
function update( $new_instance, $old_instance ) {
|
233 |
-
$instance = $old_instance;
|
234 |
-
$instance['title'] = strip_tags( $new_instance['title'] );
|
235 |
-
|
236 |
-
return $instance;
|
237 |
-
}
|
238 |
}
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
$grayscale = __( 'Toggle Grayscale', 'wp-accessibility' );
|
244 |
-
$fontsize = __( 'Toggle Font size', 'wp-accessibility' );
|
245 |
-
$enable_grayscale = ( get_option( 'wpa_toolbar_gs' ) == 'on' ) ? true : false;
|
246 |
-
$enable_contrast = ( get_option( 'wpa_toolbar_ct' ) == 'off' ) ? false : true;
|
247 |
-
$enable_fontsize = ( get_option( 'wpa_toolbar_fs' ) == 'off' ) ? false : true;
|
248 |
-
$responsive = ( get_option( 'wpa_toolbar_mobile' ) == 'on' ) ? 'a11y-responsive ' : '';
|
249 |
-
$toolbar = '
|
250 |
-
<!-- a11y toolbar widget -->
|
251 |
-
<div class="' . $responsive . 'a11y-toolbar-widget">
|
252 |
-
<ul>';
|
253 |
-
if ( $enable_contrast ) {
|
254 |
-
$toolbar .= '<li><a href="#" class="a11y-toggle-contrast toggle-contrast" id="is_normal_contrast"><span class="offscreen">'.$contrast.'</span><span class="aticon aticon-adjust"></span></a></li>';
|
255 |
}
|
256 |
-
if ( $
|
257 |
-
|
|
|
258 |
}
|
259 |
-
if (
|
260 |
-
|
|
|
|
|
|
|
261 |
}
|
262 |
-
$toolbar .= '
|
263 |
-
</ul>
|
264 |
-
</div>
|
265 |
-
<!-- // a11y toolbar widget -->';
|
266 |
-
|
267 |
-
return $toolbar;
|
268 |
}
|
269 |
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
$is_right = ( get_option( 'wpa_toolbar_right' ) == 'on' ) ? ' right' : '';
|
281 |
-
$responsive = ( get_option( 'wpa_toolbar_mobile' ) == 'on' ) ? 'a11y-responsive' : '';
|
282 |
-
echo
|
283 |
-
"
|
284 |
-
<script type='text/javascript'>
|
285 |
-
//<![CDATA[
|
286 |
-
(function( $ ) { 'use strict';
|
287 |
-
var insert_a11y_toolbar = '<!-- a11y toolbar -->';
|
288 |
-
insert_a11y_toolbar += '<div class=\"$responsive a11y-toolbar$is_rtl$is_right\">';
|
289 |
-
insert_a11y_toolbar += '<ul class=\"a11y-toolbar-list\">';";
|
290 |
-
if ( get_option( 'wpa_toolbar' ) == 'on' && $enable_contrast ) {
|
291 |
-
echo "insert_a11y_toolbar += '<li class=\"a11y-toolbar-list-item\"><button type=\"button\" class=\"a11y-toggle-contrast toggle-contrast\" id=\"is_normal_contrast\" aria-pressed=\"false\"><span class=\"offscreen\">$contrast</span><span class=\"aticon aticon-adjust\" aria-hidden=\"true\"></span></button></li>';";
|
292 |
-
}
|
293 |
-
if ( get_option( 'wpa_toolbar' ) == 'on' && $enable_grayscale ) {
|
294 |
-
echo "insert_a11y_toolbar += '<li class=\"a11y-toolbar-list-item\"><button type=\"button\" class=\"a11y-toggle-grayscale toggle-grayscale\" id=\"is_normal_color\" aria-pressed=\"false\"><span class=\"offscreen\">$grayscale</span><span class=\"aticon aticon-tint\" aria-hidden=\"true\"></span></button></li>';";
|
295 |
}
|
296 |
-
|
297 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
298 |
}
|
299 |
-
echo "
|
300 |
-
insert_a11y_toolbar += '</ul>';
|
301 |
-
insert_a11y_toolbar += '</div>';
|
302 |
-
insert_a11y_toolbar += '<!-- // a11y toolbar -->';
|
303 |
-
$( document ).find( '$location' ).prepend( insert_a11y_toolbar );
|
304 |
-
}(jQuery));
|
305 |
-
//]]>
|
306 |
-
</script>";
|
307 |
}
|
308 |
|
|
|
309 |
function wpa_css() {
|
310 |
$styles = '';
|
311 |
if ( get_option( 'asl_enable' ) == 'on' ) {
|
@@ -351,6 +275,7 @@ function wpa_is_url( $url ) {
|
|
351 |
return preg_match( '|^http(s)?://[a-z0-9-]+(.[a-z0-9-]+)*(:[0-9]+)?(/.*)?$|i', $url );
|
352 |
}
|
353 |
|
|
|
354 |
function wpa_jquery_asl() {
|
355 |
$skiplinks_js = $targets = $lang_js = $tabindex = $longdesc = false;
|
356 |
$visibility = ( get_option( 'asl_visible' ) == 'on' ) ? 'wpa-visible' : 'wpa-hide';
|
@@ -424,39 +349,6 @@ function wpa_logout_item( $admin_bar ) {
|
|
424 |
$admin_bar->add_node( $args );
|
425 |
}
|
426 |
|
427 |
-
function wpa_stylesheet() {
|
428 |
-
// Respects SSL, Style.css is relative to the current file
|
429 |
-
wp_register_style( 'wpa-style', plugins_url( 'css/wpa-style.css', __FILE__ ) );
|
430 |
-
wp_register_style( 'ui-font.css', plugins_url( 'toolbar/fonts/css/a11y-toolbar.css', __FILE__ ) );
|
431 |
-
$toolbar = apply_filters( 'wpa_toolbar_css', plugins_url( 'toolbar/css/a11y.css', __FILE__ ) );
|
432 |
-
wp_register_style( 'ui-a11y.css', $toolbar, array( 'ui-font.css' ) );
|
433 |
-
$fontsize_stylesheet = ( get_option( 'wpa_alternate_fontsize' ) == 'on' ) ? 'a11y-fontsize-alt' : 'a11y-fontsize';
|
434 |
-
$fontsize = apply_filters( 'wpa_fontsize_css', plugins_url( 'toolbar/css/'. $fontsize_stylesheet . '.css', __FILE__ ) );
|
435 |
-
wp_register_style( 'ui-fontsize.css', $fontsize );
|
436 |
-
// only enable styles when required by options
|
437 |
-
if ( get_option( 'wpa_toolbar_size' ) && get_option( 'wpa_toolbar' ) == 'on' ) {
|
438 |
-
echo "
|
439 |
-
<style type='text/css'>
|
440 |
-
.a11y-toolbar ul li button {
|
441 |
-
font-size: " . get_option( 'wpa_toolbar_size' ) . " !important;
|
442 |
-
}
|
443 |
-
</style>";
|
444 |
-
}
|
445 |
-
if ( get_option( 'wpa_longdesc' ) == 'link' || get_option( 'wpa_longdesc' ) == 'jquery' || get_option( 'asl_enable' ) == 'on' ) {
|
446 |
-
wp_enqueue_style( 'wpa-style' );
|
447 |
-
}
|
448 |
-
if ( get_option( 'wpa_toolbar' ) == 'on' || get_option( 'wpa_widget_toolbar' ) == 'on' && ( $toolbar && $fontsize ) ) {
|
449 |
-
wp_enqueue_style( 'ui-a11y.css' );
|
450 |
-
wp_enqueue_style( 'ui-fontsize.css' );
|
451 |
-
}
|
452 |
-
if ( current_user_can( 'edit_files' ) && get_option( 'wpa_diagnostics' ) == 'on' ) {
|
453 |
-
wp_register_style( 'diagnostic', plugins_url( 'css/diagnostic.css', __FILE__ ) );
|
454 |
-
wp_register_style( 'diagnostic-head', plugins_url( 'css/diagnostic-head.css', __FILE__ ) );
|
455 |
-
wp_enqueue_style( 'diagnostic' );
|
456 |
-
wp_enqueue_style( 'diagnostic-head' );
|
457 |
-
}
|
458 |
-
}
|
459 |
-
|
460 |
add_filter( 'mce_css', 'wp_diagnostic_css' );
|
461 |
function wp_diagnostic_css( $mce_css ) {
|
462 |
if ( get_option( 'wpa_diagnostics' ) == 'on' ) {
|
@@ -672,31 +564,9 @@ function wpa_admin_styles() {
|
|
672 |
}
|
673 |
}
|
674 |
|
675 |
-
// Obsolete with 3.8: (nav menus, page lists, edit post links, edit comment links, category links)
|
676 |
-
if ( get_option( 'rta_from_nav_menu' ) == 'on' && version_compare( get_bloginfo( 'version' ), '3.8.0', '<' ) ) {
|
677 |
-
add_filter( 'wp_nav_menu', 'wpa_remove_title_attributes' );
|
678 |
-
}
|
679 |
-
if ( get_option( 'rta_from_page_lists' ) == 'on' && version_compare( get_bloginfo( 'version' ), '3.8.0', '<' ) ) {
|
680 |
-
add_filter( 'wp_list_pages', 'wpa_remove_title_attributes' );
|
681 |
-
}
|
682 |
-
if ( get_option( 'rta_from_category_lists' ) == 'on' ) {
|
683 |
-
add_filter( 'wp_list_categories', 'wpa_remove_title_attributes' );
|
684 |
-
}
|
685 |
-
if ( get_option( 'rta_from_archive_links' ) == 'on' ) {
|
686 |
-
add_filter( 'get_archives_link', 'wpa_remove_title_attributes' );
|
687 |
-
}
|
688 |
if ( get_option( 'rta_from_tag_clouds' ) == 'on' ) {
|
689 |
add_filter( 'wp_tag_cloud', 'wpa_remove_title_attributes' );
|
690 |
}
|
691 |
-
if ( get_option( 'rta_from_category_links' && version_compare( get_bloginfo( 'version' ), '3.8.0', '<' ) ) == 'on' ) {
|
692 |
-
add_filter( 'the_category', 'wpa_remove_title_attributes' );
|
693 |
-
}
|
694 |
-
if ( get_option( 'rta_from_post_edit_links' && version_compare( get_bloginfo( 'version' ), '3.8.0', '<' ) ) == 'on' ) {
|
695 |
-
add_filter( 'edit_post_link', 'wpa_remove_title_attributes' );
|
696 |
-
}
|
697 |
-
if ( get_option( 'rta_from_edit_comment_links' && version_compare( get_bloginfo( 'version' ), '3.8.0', '<' ) ) == 'on' ) {
|
698 |
-
add_filter( 'edit_comment_link', 'wpa_remove_title_attributes' );
|
699 |
-
}
|
700 |
|
701 |
function wpa_remove_title_attributes( $output ) {
|
702 |
$output = preg_replace( '/\s*title\s*=\s*(["\']).*?\1/', '', $output );
|
@@ -1077,6 +947,7 @@ function wpa_save_alt_verification( $post, $attachment ) {
|
|
1077 |
} else {
|
1078 |
delete_post_meta( $post['ID'], '_no_alt' );
|
1079 |
}
|
|
|
1080 |
return $post;
|
1081 |
}
|
1082 |
|
3 |
Plugin Name: WP Accessibility
|
4 |
Plugin URI: http://www.joedolson.com/wp-accessibility/
|
5 |
Description: Helps improve accessibility in your WordPress site, like removing title attributes.
|
6 |
+
Version: 1.5.10
|
7 |
Author: Joe Dolson
|
8 |
Text Domain: wp-accessibility
|
9 |
Domain Path: /lang
|
10 |
Author URI: http://www.joedolson.com/
|
11 |
|
12 |
+
Copyright 2012-2017 Joe Dolson (joe@joedolson.com)
|
13 |
|
14 |
This program is free software; you can redistribute it and/or modify
|
15 |
it under the terms of the GNU General Public License as published by
|
27 |
*/
|
28 |
|
29 |
include( dirname( __FILE__ ) . '/wp-accessibility-settings.php' );
|
30 |
+
include( dirname( __FILE__ ) . '/wp-accessibility-widget.php' );
|
31 |
+
include( dirname( __FILE__ ) . '/wp-accessibility-toolbar.php' );
|
32 |
register_activation_hook( __FILE__, 'wpa_install' );
|
33 |
|
34 |
// Enable internationalisation
|
44 |
add_options_page( 'WP Accessibility', 'WP Accessibility', 'manage_options', __FILE__, 'wpa_admin_menu' );
|
45 |
}
|
46 |
|
47 |
+
function wpa_write_js() {
|
48 |
+
global $current_screen;
|
49 |
+
if ( $current_screen->base == 'settings_page_wp-accessibility/wp-accessibility' ) {
|
50 |
+
?>
|
51 |
+
<script>
|
52 |
+
//<![CDATA[
|
53 |
+
(function ($) {
|
54 |
+
'use strict';
|
55 |
+
$('#fore').farbtastic('#color1');
|
56 |
+
$('#back').farbtastic('#color2');
|
57 |
+
}(jQuery));
|
58 |
+
//]]>
|
59 |
+
</script>
|
60 |
+
<?php
|
61 |
+
}
|
62 |
+
}
|
63 |
+
|
64 |
// ACTIVATION
|
65 |
function wpa_install() {
|
66 |
+
$wpa_version = '1.5.10';
|
67 |
if ( get_option( 'wpa_installed' ) != 'true' ) {
|
68 |
add_option( 'rta_from_nav_menu', 'on' );
|
69 |
add_option( 'rta_from_page_lists', 'on' );
|
96 |
}
|
97 |
}
|
98 |
|
99 |
+
add_filter( 'plugin_action_links', 'wpa_plugin_action', 10, 2 );
|
100 |
function wpa_plugin_action( $links, $file ) {
|
101 |
if ( $file == plugin_basename( dirname( __FILE__ ) . '/wp-accessibility.php' ) ) {
|
102 |
$admin_url = admin_url( 'options-general.php?page=wp-accessibility/wp-accessibility.php' );
|
106 |
return $links;
|
107 |
}
|
108 |
|
|
|
|
|
|
|
|
|
|
|
109 |
/**
|
110 |
* Enqueue color picker for contrast testing
|
111 |
**/
|
112 |
+
add_action( 'admin_enqueue_scripts', 'wpa_admin_js' );
|
113 |
+
function wpa_admin_js() {
|
114 |
+
global $current_screen;
|
115 |
+
if ( $current_screen->base == 'settings_page_wp-accessibility/wp-accessibility' ) {
|
116 |
wp_enqueue_script( 'farbtastic' );
|
117 |
}
|
118 |
}
|
119 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
120 |
|
121 |
+
add_action( 'wp_enqueue_scripts', 'wpa_register_scripts' );
|
122 |
function wpa_register_scripts() {
|
123 |
// register jQuery scripts;
|
124 |
wp_register_script( 'skiplinks.webkit', plugins_url( 'wp-accessibility/js/skiplinks.webkit.js' ) );
|
126 |
wp_register_script( 'scrollTo', plugins_url( 'wp-accessibility/toolbar/js/jquery.scrollto.min.js' ), array( 'jquery' ), '1.4.5', true );
|
127 |
}
|
128 |
|
|
|
129 |
add_action( 'wp_enqueue_scripts', 'wpacc_enqueue_scripts' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
130 |
function wpacc_enqueue_scripts() {
|
131 |
+
wp_enqueue_script( 'jquery' );
|
132 |
if ( get_option( 'asl_enable' ) == 'on' ) {
|
133 |
wp_enqueue_script( 'skiplinks.webkit' );
|
134 |
}
|
172 |
}
|
173 |
}
|
174 |
|
175 |
+
add_action( 'wp_enqueue_scripts', 'wpa_stylesheet' );
|
176 |
+
function wpa_stylesheet() {
|
177 |
+
// Respects SSL, Style.css is relative to the current file
|
178 |
+
wp_register_style( 'wpa-style', plugins_url( 'css/wpa-style.css', __FILE__ ) );
|
179 |
+
wp_register_style( 'ui-font.css', plugins_url( 'toolbar/fonts/css/a11y-toolbar.css', __FILE__ ) );
|
180 |
+
$toolbar = apply_filters( 'wpa_toolbar_css', plugins_url( 'toolbar/css/a11y.css', __FILE__ ) );
|
181 |
+
wp_register_style( 'ui-a11y.css', $toolbar, array( 'ui-font.css' ) );
|
182 |
+
$fontsize_stylesheet = ( get_option( 'wpa_alternate_fontsize' ) == 'on' ) ? 'a11y-fontsize-alt' : 'a11y-fontsize';
|
183 |
+
$fontsize = apply_filters( 'wpa_fontsize_css', plugins_url( 'toolbar/css/'. $fontsize_stylesheet . '.css', __FILE__ ) );
|
184 |
+
wp_register_style( 'ui-fontsize.css', $fontsize );
|
185 |
+
// only enable styles when required by options
|
186 |
+
if ( get_option( 'wpa_toolbar_size' ) && get_option( 'wpa_toolbar' ) == 'on' ) {
|
187 |
+
echo "
|
188 |
+
<style type='text/css'>
|
189 |
+
.a11y-toolbar ul li button {
|
190 |
+
font-size: " . get_option( 'wpa_toolbar_size' ) . " !important;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
191 |
}
|
192 |
+
</style>";
|
193 |
+
}
|
194 |
+
if ( get_option( 'wpa_longdesc' ) == 'link' || get_option( 'wpa_longdesc' ) == 'jquery' || get_option( 'asl_enable' ) == 'on' ) {
|
195 |
+
wp_enqueue_style( 'wpa-style' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
196 |
}
|
197 |
+
if ( get_option( 'wpa_toolbar' ) == 'on' || get_option( 'wpa_widget_toolbar' ) == 'on' && ( $toolbar && $fontsize ) ) {
|
198 |
+
wp_enqueue_style( 'ui-a11y.css' );
|
199 |
+
wp_enqueue_style( 'ui-fontsize.css' );
|
200 |
}
|
201 |
+
if ( current_user_can( 'edit_files' ) && get_option( 'wpa_diagnostics' ) == 'on' ) {
|
202 |
+
wp_register_style( 'diagnostic', plugins_url( 'css/diagnostic.css', __FILE__ ) );
|
203 |
+
wp_register_style( 'diagnostic-head', plugins_url( 'css/diagnostic-head.css', __FILE__ ) );
|
204 |
+
wp_enqueue_style( 'diagnostic' );
|
205 |
+
wp_enqueue_style( 'diagnostic-head' );
|
206 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
207 |
}
|
208 |
|
209 |
+
/**
|
210 |
+
* Enqueue admin stylesheets if enabled
|
211 |
+
*/
|
212 |
+
add_action( 'admin_head', 'wpa_admin_stylesheet' );
|
213 |
+
function wpa_admin_stylesheet() {
|
214 |
+
// Used to provide an admin CSS from plug-in, now only enqueue if custom provided in theme.
|
215 |
+
if ( file_exists( get_stylesheet_directory() . '/wp-admin.css' ) ) {
|
216 |
+
$file = get_stylesheet_directory_uri() . '/wp-admin.css';
|
217 |
+
wp_register_style( 'wp-a11y-css', $file );
|
218 |
+
wp_enqueue_style( 'wp-a11y-css' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
219 |
}
|
220 |
+
|
221 |
+
if ( get_option( 'wpa_row_actions' ) == 'on' ) {
|
222 |
+
if ( file_exists( get_stylesheet_directory() . '/wp-admin-row-actions.css' ) ) {
|
223 |
+
$file = get_stylesheet_directory_uri() . '/wp-admin-row-actions.css';
|
224 |
+
} else {
|
225 |
+
$file = plugins_url( 'css/wp-admin-row-actions.css', __FILE__ );
|
226 |
+
}
|
227 |
+
wp_register_style( 'wp-row-actions', $file );
|
228 |
+
wp_enqueue_style( 'wp-row-actions' );
|
229 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
230 |
}
|
231 |
|
232 |
+
add_action( 'wp_head', 'wpa_css' );
|
233 |
function wpa_css() {
|
234 |
$styles = '';
|
235 |
if ( get_option( 'asl_enable' ) == 'on' ) {
|
275 |
return preg_match( '|^http(s)?://[a-z0-9-]+(.[a-z0-9-]+)*(:[0-9]+)?(/.*)?$|i', $url );
|
276 |
}
|
277 |
|
278 |
+
add_action( 'wp_footer', 'wpa_jquery_asl', 100 );
|
279 |
function wpa_jquery_asl() {
|
280 |
$skiplinks_js = $targets = $lang_js = $tabindex = $longdesc = false;
|
281 |
$visibility = ( get_option( 'asl_visible' ) == 'on' ) ? 'wpa-visible' : 'wpa-hide';
|
349 |
$admin_bar->add_node( $args );
|
350 |
}
|
351 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
352 |
add_filter( 'mce_css', 'wp_diagnostic_css' );
|
353 |
function wp_diagnostic_css( $mce_css ) {
|
354 |
if ( get_option( 'wpa_diagnostics' ) == 'on' ) {
|
564 |
}
|
565 |
}
|
566 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
567 |
if ( get_option( 'rta_from_tag_clouds' ) == 'on' ) {
|
568 |
add_filter( 'wp_tag_cloud', 'wpa_remove_title_attributes' );
|
569 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
570 |
|
571 |
function wpa_remove_title_attributes( $output ) {
|
572 |
$output = preg_replace( '/\s*title\s*=\s*(["\']).*?\1/', '', $output );
|
947 |
} else {
|
948 |
delete_post_meta( $post['ID'], '_no_alt' );
|
949 |
}
|
950 |
+
|
951 |
return $post;
|
952 |
}
|
953 |
|