Introduction to WordPress SlotFill
In 2019, I was lucky enough to speak at the fantastic JavaScript for WordPress conference. It was my first virtual conference and I had a really great time. It's a…
In 2019, I was lucky enough to speak at the fantastic JavaScript for WordPress conference. It was my first virtual conference and I had a really great time. It's a…
A couple of years ago, I created a Twitter bot that tweets out WordPress core trac tickets marked as GoodFirstBugs to help new contributors find a good starting place. It…
Now that the PluginDocumentSettingPanel
is in WordPress core, we can add our own panels to the Document Settings panel using the registerPlugin
function.
const { registerPlugin } = wp.plugins;
const { PluginDocumentSettingPanel } = wp.editPost;
const MyCustomSideBarPanel = () => (
<PluginDocumentSettingPanel
name="my-custom-panel"
title="My Custom Panel"
>
Hello, World!
</PluginDocumentSettingPanel>
);
registerPlugin( 'my-custom-panel', {render: MyCustomSideBarPanel } );
The above code will insert a new Panel in the Document Sidebar with the title of “My Custom Panel ” and will display “Hello, World!” as it’s content. If we want this panel to appear on every post type registered, then we’re done but what if we want to restrict this panel to just a single post type?
(more…)
I think the hardest thing about getting into contributing to WordPress Core is knowing where to start. Once you have your development environment setup ready to go – then what? You need something to work on, you need a ticket.
(more…)A little while ago, I created a plugin called Suspend Transients. It is a helpful tool that allows developers to bypass get_transient() calls on any page by clicking a button…
Wordpress 4.7 was just released and it marks the sixth release in a row that I have been lucky enough to contribute to. Contributing to WordPress core has always been a…
When unit testing your code, there are times when you need to test the same method or function with a variety of different parameters. For example, we have a function to check to see if a passed email is both valid and not already in the list of known emails:
(more…)Recently while working on a project in WordPress, I found myself adding and remove code to bypass cached transients. Needless to say, this was not a great solution. It caused…
A while ago I was working on a patch to refresh the code for the default widgets that are included with WordPress Core. One of the changes made was to replace the i18n methods currently in-place with their counterparts that escape and translate the output. This is a pretty common practice as translation files can be a potential attack vector for hackers. WordPress.com VIP will usually request that this is added to any strings being translated and it is part of the 10up best practices. (more…)
Recently I was running into issues with VVV running some units tests for AJAX. I was not able to remedy the issue so I decided to create a testing environment…