<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Slava Abakumov</title>
    <description>The latest articles on Forem by Slava Abakumov (@slaffik).</description>
    <link>https://forem.com/slaffik</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F294%2Ff8fcf610-9484-459c-bac3-a33e88d33ac6.jpg</url>
      <title>Forem: Slava Abakumov</title>
      <link>https://forem.com/slaffik</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/slaffik"/>
    <language>en</language>
    <item>
      <title>Working on CommentsWP</title>
      <dc:creator>Slava Abakumov</dc:creator>
      <pubDate>Fri, 29 Jul 2022 09:03:24 +0000</pubDate>
      <link>https://forem.com/slaffik/working-on-commentswp-36g0</link>
      <guid>https://forem.com/slaffik/working-on-commentswp-36g0</guid>
      <description>&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--rjoauZEQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7sbeviiw1ilujeu7u3tl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--rjoauZEQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7sbeviiw1ilujeu7u3tl.png" alt="CommentsWP Logo on a black background" width="800" height="389"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;WordPress comments haven't changed a lot - same interface, same functionality - for years. At some point, I decided to improve this important component and started working on the CommentsWP plugin.&lt;/p&gt;

&lt;p&gt;This post is a brief history of the CommentsWP plugin creation: how and when I came up with the idea, my general process, and the final outcome.&lt;/p&gt;

&lt;p&gt;The post &lt;a href="https://ovirium.com/blog/working-on-commentswp/"&gt;Working on CommentsWP&lt;/a&gt; appeared first on &lt;a href="https://ovirium.com"&gt;Slava Abakumov&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>plugins</category>
      <category>commentswp</category>
      <category>wordpress</category>
      <category>wordpressorg</category>
    </item>
    <item>
      <title>Using Expose by BeyondCode for WordPress development</title>
      <dc:creator>Slava Abakumov</dc:creator>
      <pubDate>Mon, 01 Feb 2021 11:45:14 +0000</pubDate>
      <link>https://forem.com/slaffik/using-expose-by-beyondcode-for-wordpress-development-3252</link>
      <guid>https://forem.com/slaffik/using-expose-by-beyondcode-for-wordpress-development-3252</guid>
      <description>&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--4ax20-Er--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/jheyml9wssw541lyj4xy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--4ax20-Er--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/jheyml9wssw541lyj4xy.png" alt="Alt Text" width="800" height="456"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Developing using a local server and domain is the fastest way until you need to share your work with someone outside your local machine without uploading your code anywhere.&lt;/p&gt;

&lt;p&gt;Imagine you need to develop a plugin, that will communicate with a 3rd-party API. That service should be able to ping your local site using a webhook to provide you some information based on the activity on your site. For example, that might be a PayPal IPN sending you the status of the WooCommerce payment.&lt;/p&gt;

&lt;p&gt;But as you are working on a local site – remote servers can’t access it by default. There are several ways to fix this issue:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;use PhpStorm “upload to a remote server on file save” feature&lt;/li&gt;
&lt;li&gt;use ngrok (npm package)&lt;/li&gt;
&lt;li&gt;use Expose (composer package)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I got in-depth about each of them in a blog post on my site: &lt;a href="https://ovirium.com/blog/using-expose-by-beyondcode-for-wordpress-development/"&gt;Using Expose by BeyondCode for WordPress development&lt;/a&gt;, especially focusing on the Expose tool.&lt;/p&gt;

&lt;p&gt;I've also shared a GitHub gist with a bunch of filters that you need to apply to be able to trick WordPress and make it work correctly with all its generated URLs.&lt;/p&gt;

</description>
      <category>wordpress</category>
      <category>code</category>
      <category>development</category>
      <category>php</category>
    </item>
    <item>
      <title>How to make MySQL work in your GitHub Actions</title>
      <dc:creator>Slava Abakumov</dc:creator>
      <pubDate>Mon, 11 Jan 2021 10:02:43 +0000</pubDate>
      <link>https://forem.com/slaffik/how-to-make-mysql-work-in-your-github-actions-3h95</link>
      <guid>https://forem.com/slaffik/how-to-make-mysql-work-in-your-github-actions-3h95</guid>
      <description>&lt;p&gt;There are a ton of tutorials out there on how to make MySQL service work inside your Ubuntu environment in GitHub Actions. But all of them returned the "Failed to initialize, mysql service is unhealthy." error for me. Let's fix that.&lt;/p&gt;

&lt;p&gt;The post &lt;a href="https://ovirium.com/blog/how-to-make-mysql-work-in-your-github-actions/"&gt;How to make MySQL work in your GitHub Actions&lt;/a&gt; appeared first on &lt;a href="https://ovirium.com"&gt;my blog&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>ci</category>
      <category>cd</category>
      <category>github</category>
      <category>mysql</category>
    </item>
    <item>
      <title>How to organize custom code for plugins &amp; themes</title>
      <dc:creator>Slava Abakumov</dc:creator>
      <pubDate>Wed, 18 Mar 2020 22:15:23 +0000</pubDate>
      <link>https://forem.com/slaffik/how-to-organize-custom-code-for-plugins-themes-4l2e</link>
      <guid>https://forem.com/slaffik/how-to-organize-custom-code-for-plugins-themes-4l2e</guid>
      <description>&lt;p&gt;You have lots of plugins and even a theme. You are brave and adventurous - and you write (or copy-paste) lots of snippets to modify their default behavior. Now you have a custom code all over the place and even in your theme functions.php.&lt;br&gt;&lt;br&gt;
 Is there a better way to fix that mess?&lt;/p&gt;

&lt;p&gt;The post &lt;a href="https://ovirium.com/blog/how-to-organize-custom-code-for-plugins-themes/"&gt;How to organize custom code for plugins &amp;amp; themes&lt;/a&gt; appeared first on &lt;a href="https://ovirium.com"&gt;my blog&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>plugins</category>
      <category>code</category>
      <category>wordpress</category>
    </item>
  </channel>
</rss>
