Are you happy with your logging solution? Would you help us out by taking a 30-second survey? Click here


The o2 plugin for WordPress β€” blogging at the speed of thought

Subscribe to updates I use o2

Statistics on o2

Number of watchers on Github 267
Number of open issues 44
Average time to close an issue 10 days
Main language JavaScript
Average time to merge a PR 7 days
Open pull requests 8+
Closed pull requests 4+
Last commit almost 2 years ago
Repo Created about 5 years ago
Repo Last Updated over 1 year ago
Size 582 KB
Organization / Authorautomattic
Page Updated
Do you use o2? Leave a review!
View open issues (44)
View o2 activity
View on github
Fresh, new opensource launches πŸš€πŸš€πŸš€
Trendy new open source projects in your inbox! View examples

Subscribe to our mailing list

Evaluating o2 for your project? Score Explanation
Commits Score (?)
Issues & PR Score (?)


The o2 Plugin for WordPress - blogging at the speed of thought

Build Status


This plugin requires WordPress 4.2 or higher, and PHP 5.3.6 or higher (due to a specific XML-parsing feature in use).

This plugin works with the p2-breathe theme, available at

This plugin uses Genericons. If you're using Jetpack, then you should already have them available. If you're not using Jetpack, you should install and activate the Genericon'd plugin, available at

This plugin's editor can insert code shortcodes. To get those to render as code blocks, you should install and activate the SyntaxHighlighter Evolved plugin, available at


Upgrade to at least WordPress 4.2

Install the p2-breathe theme into wp-content/themes/p2-breathe

Activate the theme.

Install and activate the Genericon'd plugin.

Install and activate the SyntaxHighlighter Evolved plugin

Install this plugin into wp-content/plugins/o2

Activate this plugin


Multisite self-hosted installs have not yet been tested and may not work.

o2 open issues Ask a question     (View All Issues)
  • about 3 years Infinite scroll does not work for sorting content by anything other than chronologically
  • about 3 years a11y: Use `<button>` instead of `<a>` for several non-links
  • about 3 years Events: applyFilters() supports only callbacks for all arguments
  • about 3 years Resolved-unresolved state accessibility
  • about 3 years l18n plurailization issue
  • about 3 years Editor: Check if current user can upload files
  • over 3 years WP MU - P2-breathe with o2 - comment image drag and dropp by non super-admin users not showing
  • over 3 years o2 Issues
  • over 3 years Upload a image from mobile.
  • over 3 years Time zone formatting not respected on the front-end
  • over 3 years Support Additional Media Through a Media Library Button
  • almost 4 years Allow for unresolved states to be a graph rather than a flow.
  • about 4 years β€œFollow Comments” option absent
  • about 4 years Add support for local avatars (using core `get_avatar`) rather than hard-coding Gravatars
  • over 4 years No multibyte language support in the_content()
  • over 4 years JavaScript error while posting
  • over 4 years Enable @mentions in posts and comments
o2 open pull requests (View All Pulls)
  • This PR fixes the net::ERR_CONNECTION_CLOSED issue seen in browsers that support HTTP2.
  • Adds local avatar support
  • Fix-live-widget-#26
  • Changed modelClass to use hash instead of userLogin.
  • Fixing o2.Utilities.phpToMoment to support escaping
  • Add Alt+Shift+a as link keybinding
  • Add link context in avatar alt
  • Fix process_tags overwriting existing tags
o2 questions on Stackoverflow (View All Questions)
  • what is the meaning of gcc/g++ - O2, O3 compiled code
  • How come this both loop runs equally fast when compiled with -O3, but not when compiled with -O2?
  • Cygwin64 gcc C/assembler crash when using -O2 vs -O1
  • Qt program crashes with -O2 optimization
  • Why does GCC -O2 and -O3 optimization break this program?
  • Visual Studio error D8016: '/ZI' and '/O2' command-line options are incompatible
  • g++ compiler -O2 cause program weird
  • Translating O2 optimized for-loop from assembly to C
  • How to change qmake release flags for gcc? (Change -O2 to -Os)
  • Why summing native lists is slower than summing church-encoded lists with `GHC -O2`?
  • Function optimized to infinite loop at 'gcc -O2'
  • Visual Studio 2013 optimization flags (/O2 vs /Ox)
  • bcc64 optimizations -O1 vs -O2 still slower than bcc32 by 40% and more
  • Should implementations of o1, T o2) be thread safe?
  • g++ -O2 incorrectly optimize out SIMD variable assignment
  • How did using gcc -O2 optimization resolved issue: pointer pointing nothing and having integer value as -23 in it, is gone?
  • How to find Co2 and O2 level using MQ135 with Arduino
  • When comparing Java with C++ for speed should I compile the C++ code with -O3 or -O2?
  • Are compilers allowed to remove infinite loops like Intel C++ Compiler with -O2 does?
  • What's the difference between -O3 and (-O2 + flags that man gcc says -O3 adds to -O2)?
  • Exception not caught on -O2
  • Templated linkage does not work on -O2, but does on -O0
  • When compiled with -O2, program skips assignment
  • gcc links to wrong GLIBCXX version when O2 flag is specified
  • Regular express to match `command--o1--o2--o3`
  • How to optimize Less code using the -O2 option
  • Which compilation flag should I use -> Os or O2?
  • gcc tail call optimization with -O2 but not -O3
  • Pocket C++ and O2 flag
  • Why -O1 is faster than -O2 for 10000 times?
o2 list of languages used
Other projects in JavaScript