what is the responsibility of plugin developers?
TRANSCRIPT
![Page 1: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/1.jpg)
What is the Responsibility
of Plugin Developers?
Takayuki Miyoshi
![Page 2: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/2.jpg)
https://profiles.wordpress.org/takayukister/
![Page 3: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/3.jpg)
I am Takayuki Miyoshi, WordPress plugin developer.
![Page 4: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/4.jpg)
I have been involved in the WordPress community in a lot of roles.
![Page 5: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/5.jpg)
Translation Contributor
Support Team Support Contributor
Core Contributor
WordPress.tv Contributor
WordCamp Speaker
Community Team
Translation Editor
Plugin Developer
![Page 6: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/6.jpg)
![Page 7: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/7.jpg)
I'm from Fukuoka, Japan
![Page 8: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/8.jpg)
I'm from Fukuoka, Japan
Me, too!
![Page 9: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/9.jpg)
The original Wapuu was created by a Fukuoka-based illustrator
and introduced at WordCamp Fukuoka 2011.
![Page 10: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/10.jpg)
https://wapuu.jp/
![Page 11: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/11.jpg)
https://wapuu.jp/
![Page 12: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/12.jpg)
Wapuutopia
Fukuoka
=
![Page 13: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/13.jpg)
I have 10 years experience in plugin development. Contact Form 7 and Bogo are my most favorite plugins.
![Page 14: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/14.jpg)
Contact Form 7 manages contact forms.
![Page 15: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/15.jpg)
Bogo makes your sites multilingual.
![Page 16: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/16.jpg)
https://wptavern.com/contact-form-7-passes-40-million-downloads
![Page 17: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/17.jpg)
Last month Contact Form 7 passed 40,000,000 downloads. WP Tavern wrote an article about it.
![Page 18: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/18.jpg)
What is the Responsibility
of Plugin Developers?
![Page 19: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/19.jpg)
WordPress allows plugins to do everything.
Plugins can make WordPress better
or worse.
![Page 20: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/20.jpg)
WordPress gives us great opportunities.
What should we do for WordPress?
![Page 21: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/21.jpg)
What is the Responsibility
of Plugin Developers?
![Page 22: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/22.jpg)
The Responsibility of Plugin Developers Is to Keep WordPress
Accessible for Everyone.
![Page 23: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/23.jpg)
WordPress Core is Designed to Be
Accessible for Everyone.
Plugins Should Follow It.
![Page 24: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/24.jpg)
Let's Look at Two Aspects.
Accessibility Localization
&
![Page 25: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/25.jpg)
Is Your Plugin Accessible?
![Page 26: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/26.jpg)
Can you read this?
Ensure Enough Contrast.
Low-contrast text is hard to read.
![Page 27: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/27.jpg)
<form action="http://example.c
om/donut" method="post">
<p> <input type="
radio" name="flavor" id="choc"
value="chocolate" />
<label for="choc">Chocolat
e</label><br/>
<input type="radio" name="fl
avor" id="cream" value="cream"
/>
<label for="cream">Cream F
illed</label><br/>
<input type="radio" name="fl
avor" id="honey" value="honey"
/>
<label for="honey">Honey G
lazed</label><br/>
<input type="submit" value="
Purchase Donuts"/>
</p> </form> Label Correctly.
![Page 28: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/28.jpg)
<form action="http://example.c
om/donut" method="post">
<p> <input type="
radio" name="flavor" id="choc"
value="chocolate" />
<label for="choc">Chocolat
e</label><br/>
<input type="radio" name="fl
avor" id="cream" value="cream"
/>
<label for="cream">Cream F
illed</label><br/>
<input type="radio" name="fl
avor" id="honey" value="honey"
/>
<label for="honey">Honey G
lazed</label><br/>
<input type="submit" value="
Purchase Donuts"/>
</p> </form>
If your form isn't correctly labeled, screen reader users have no idea what to input into the fields.
![Page 29: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/29.jpg)
https://make.wordpress.org/accessibility/2016/03/21/wordpress-goes-wcag/
![Page 30: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/30.jpg)
The WordPress Accessibility Team announced that all new or updated code released into WordPress core must conform with the WCAG 2.0 guidelines.
![Page 31: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/31.jpg)
WordPress core code ensures a specific level of accessibility.
Plugins should follow it.
![Page 33: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/33.jpg)
WordPress Accessibility Handbook provides essential information for plugin developers.
![Page 34: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/34.jpg)
Is Your Plugin Multilingual-Ready?
![Page 35: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/35.jpg)
Translation
![Page 36: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/36.jpg)
https://translate.wordpress.org/projects/wp-plugins/contact-form-7/stable/ja/default
![Page 37: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/37.jpg)
translate.wordpress.org makes collaborative translation possible.
![Page 38: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/38.jpg)
__( "You are not allowed to
upload files of this type.",
'contact-form-7' )
Make Text Translatable with __() Function.
![Page 39: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/39.jpg)
__( $text, $domain ) _e( $text, $domain ) _x( $text, $context, $domain ) _ex( $text, $context, $domain ) _n( $single, $plural, $number, $domain ) _nx( $single, $plural, $number, $context, $domain )
You can also use variant functions.
![Page 40: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/40.jpg)
Text Direction
![Page 42: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/42.jpg)
In some languages, text is written Right-to-Left.
![Page 43: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/43.jpg)
Add New Post page in English
![Page 44: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/44.jpg)
Add New Post page in Arabic
![Page 45: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/45.jpg)
Add New Post page in Chinese
![Page 46: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/46.jpg)
Add New Post page in Hebrew
![Page 47: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/47.jpg)
Add New Post page in Japanese
![Page 48: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/48.jpg)
Add New Post page in Persian
![Page 49: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/49.jpg)
In some languages, text is written Right-to-Left (RTL)
and pages may have a different layout.
![Page 50: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/50.jpg)
Do your plugins work correctly in RTL languages?
Many plugins add blocks into the admin screen.
![Page 51: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/51.jpg)
If you set these properties in your plugin's stylesheet, you may need to change
the 'left' to 'right' in RTL languages:
• text-align: left • margin-left: • padding-left: • border-left: • left:
![Page 52: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/52.jpg)
If you set these properties in your plugin's stylesheet, you may need to change
the 'left' to 'right' in RTL languages:
• text-align: right • margin-right: • padding-right: • border-right: • right:
![Page 53: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/53.jpg)
WordPress function is_rtl() tells if the site language is RTL.
if ( is_rtl() ) { wp_enqueue_style( 'style-rtl',
'/css/style-rtl.css' ); }
Make an additional stylesheet for RTL and load it when the site language is RTL.
![Page 54: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/54.jpg)
We looked at two aspects today
but of course these are not the only things we need to learn.
Accessibility Localization
&
![Page 55: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/55.jpg)
These are not about cool programming techniques, but it doesn't mean it's not
important for developers.
ACTUALLY, IT’S REALLY IMPORTANT!
![Page 56: What is the Responsibility of Plugin Developers?](https://reader031.vdocuments.site/reader031/viewer/2022030316/5872baac1a28ab523c8b77b5/html5/thumbnails/56.jpg)
The Responsibility of Plugin Developers Is to Keep WordPress
Accessible for Everyone.
This is what I keep in mind when creating a plugin.