
<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>repository | 79mplus</title>
	<atom:link href="https://www.79mplus.com/tag/repository/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.79mplus.com</link>
	<description>Top-Tier WordPress Development Company for Custom, Scalable Solutions</description>
	<lastBuildDate>Fri, 28 Sep 2018 04:59:16 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.7.1</generator>

<image>
	<url>https://www.79mplus.com/assets/cropped-favicon2-32x32.png</url>
	<title>repository | 79mplus</title>
	<link>https://www.79mplus.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Step by step guide to publish a Plugin to WordPress.org repository</title>
		<link>https://www.79mplus.com/step-by-step-guide-to-publish-a-plugin-to-wordpress-org-repository/</link>
		
		<dc:creator><![CDATA[Adnan Shameem]]></dc:creator>
		<pubDate>Mon, 30 Apr 2018 10:51:56 +0000</pubDate>
				<category><![CDATA[79mplus blog]]></category>
		<category><![CDATA[Plugins]]></category>
		<category><![CDATA[listing]]></category>
		<category><![CDATA[process]]></category>
		<category><![CDATA[repository]]></category>
		<category><![CDATA[submission]]></category>
		<category><![CDATA[WordPress]]></category>
		<guid isPermaLink="false">http://www.79mplus.com/?p=495696</guid>

					<description><![CDATA[<p><a rel="nofollow" href="https://www.79mplus.com">79mplus</a><br />
<img src="https://www.79mplus.com/assets/mplus-intercom-wordpress-org-blog-banner.jpg" style="display: block; margin: 1em auto"><br />
<a rel="nofollow" href="https://www.79mplus.com/step-by-step-guide-to-publish-a-plugin-to-wordpress-org-repository/">Step by step guide to publish a Plugin to WordPress.org repository</a></p>
<p>It is that time again. The cheerful day that we all have been waiting for. All of our hard work has seen the light. Well, if you are not sure what I mean, I was talking about the day we published our Intercom Subscription plugin to WordPress.org repo. For those who are curious, here are [&#8230;]</p>
<p>The post <a rel="nofollow" href="https://www.79mplus.com/step-by-step-guide-to-publish-a-plugin-to-wordpress-org-repository/">Step by step guide to publish a Plugin to WordPress.org repository</a> appeared first on <a rel="nofollow" href="https://www.79mplus.com">79mplus</a> and is written by <a rel="nofollow" href="https://www.79mplus.com/author/adnan360/">Adnan Shameem</a></p>
]]></description>
										<content:encoded><![CDATA[<p><a rel="nofollow" href="https://www.79mplus.com">79mplus</a><br />
<img src="https://www.79mplus.com/assets/mplus-intercom-wordpress-org-blog-banner.jpg" style="display: block; margin: 1em auto"><br />
<a rel="nofollow" href="https://www.79mplus.com/step-by-step-guide-to-publish-a-plugin-to-wordpress-org-repository/">Step by step guide to publish a Plugin to WordPress.org repository</a></p>
<p>It is that time again. The cheerful day that we all have been waiting for. All of our hard work has seen the light. Well, if you are not sure what I mean, I was talking about the day we published <a href="https://wordpress.org/plugins/mplus-intercom-subscription/" target="_blank" rel="noopener">our Intercom Subscription plugin to WordPress.org repo</a>.</p>
<p>For those who are curious, here are the steps we followed to publish our plugin on WordPress.org Plugin Repository:</p>
<h2>1. Check Guidelines</h2>
<p>Make sure your plugin follows all the guidelines for the submission. You can read details here:<br />
<a href="https://developer.wordpress.org/plugins/wordpress-org/detailed-plugin-guidelines/" target="_blank" rel="noopener">https://developer.wordpress.org/plugins/wordpress-org/detailed-plugin-guidelines/</a></p>
<p>These guidelines are pretty straightforward and any normal plugin should pass. We know ours did the first time!</p>
<p>You should also look into <a href="https://developer.wordpress.org/plugins/wordpress-org/how-your-readme-txt-works/" target="_blank" rel="noopener">how the readme.txt works in any WordPress.org plugin</a>. This is the file that holds all the content that shows up on the plugin page. If you want an example, you can check <a href="https://plugins.trac.wordpress.org/browser/woocommerce/trunk/readme.txt" target="_blank" rel="noopener">one for WooCommerce here</a>. You can hopefully figure out everything.</p>
<p>The thing that took me some time to understand is the Screenshots section. You will have to put screenshots as screenshot-1.jpg, screenshot-2.jpg etc. under the /assets directory of the repo. You&#8217;ll get a repo later and you&#8217;ll understand where to put it. But right now, in the readme, you will correspond to that number and write descriptions for the screenshot:</p>
<pre>== Screenshots ==

1. This is a screenshot showing a feature.
2. This is another screenshot showing another feature.</pre>
<h2>2. Time to Get Approval</h2>
<p>Now its time to Submit for approval. Register/Login to:<br />
<a href="https://login.wordpress.org/wp-login.php" target="_blank" rel="noopener">https://login.wordpress.org/wp-login.php</a></p>
<p>Your WordPress.org Account page will open up.<br />
Now navigate to <a href="https://wordpress.org/plugins/developers/add/" target="_blank" rel="noopener">https://wordpress.org/plugins/developers/add/</a> for options for submitting a new plugin. Just zip your plugin and submit. Please remember to give your folder and plugin file a good name before zipping. This will give you a slug for the plugin page URL which cannot be changed.</p>
<p><img decoding="async" class="wp-image-495715 size-medium aligncenter" src="http://www.79mplus.com/assets/01-submitting-to-wp-300x184.png" alt="" width="300" height="184" title="Step by step guide to publish a Plugin to WordPress.org repository" srcset="https://www.79mplus.com/assets/01-submitting-to-wp-300x184.png 300w, https://www.79mplus.com/assets/01-submitting-to-wp-768x471.png 768w, https://www.79mplus.com/assets/01-submitting-to-wp-510x313.png 510w, https://www.79mplus.com/assets/01-submitting-to-wp.png 976w" sizes="(max-width: 300px) 100vw, 300px" /></p>
<p>After you submit, a page similar to this will appear.</p>
<p><img decoding="async" class="aligncenter wp-image-495716 size-medium" src="http://www.79mplus.com/assets/02-after-submission-300x188.png" alt="" width="300" height="188" title="Step by step guide to publish a Plugin to WordPress.org repository" srcset="https://www.79mplus.com/assets/02-after-submission-300x188.png 300w, https://www.79mplus.com/assets/02-after-submission-768x482.png 768w, https://www.79mplus.com/assets/02-after-submission-400x250.png 400w, https://www.79mplus.com/assets/02-after-submission-510x320.png 510w, https://www.79mplus.com/assets/02-after-submission.png 967w" sizes="(max-width: 300px) 100vw, 300px" /></p>
<p>Now you will have to wait for the approval. It may take up to 10 days or 5 business days to get approved, depending on the queue of other submitted plugins. Ours got approved the next day.</p>
<h2>3. After Approval:</h2>
<p>When you receive the approval email, you will have to use an SVN client on your machine, such as <a href="http://sourceforge.net/projects/win32svn/" target="_blank" rel="noopener">SVN for Windows</a> to <a href="https://developer.wordpress.org/plugins/wordpress-org/how-to-use-subversion/" target="_blank" rel="noopener">checkout the plugin code</a>:</p>
<pre>svn co https://plugins.svn.wordpress.org/your-plugin-name your-local-dir</pre>
<p>Then go into the repo directory and keep your plugin content inside the <strong>trunk</strong> directory. Keep in mind you should not keep your plugin files in a directory. You should keep the files <strong>directly under trunk</strong> directory. Also, make sure you have <strong>trunk</strong> as the value to <strong>Stable tag:</strong> on your readme.txt. Now cd to the repo directory then add the files:</p>
<pre>cd /path/to/svn/repo
svn add trunk/*</pre>
<p>(On Windows, you use <code>cd /D /some/path</code> to switch to the drive. Sometimes some subdirectories may not get added. If this is the case you should see a question mark beside that file when running <code>svn status</code>. To fix this add <code>--force</code> with the add command: <code>svn add --force trunk/*</code>.)</p>
<p>Please note, keeping your release version under /trunk is ok when your project is simple. But as you grow <a href="https://developer.wordpress.org/plugins/wordpress-org/how-to-use-subversion/#svn-folders" target="_blank" rel="noopener">it is suggested</a> to put the release version under /tags directory under a specific tag and point to the release tag with readme.txt.</p>
<p>Now add the icons and banner images in assets directory. You can save the banner as <strong>banner-772&#215;250.jpg</strong>. The dimensions of the banner image should be 772px by 250px, as the name suggests. You can put the icons as <strong>icon-128&#215;128.jpg</strong> and <strong>icon-256&#215;256.jpg</strong> and use the dimensions as in the filename. Also add the screenshots as <strong>screenshot-1.jpg</strong>, <strong>screenshot-2.jpg</strong> etc.</p>
<p>You can also use png as the extension for icons, banners and screenshots, if you wish. If you have an svg version of the icon, you can include that too as <strong>icon.svg</strong>. For a hint, you can visit the <a href="https://wordpress.org/plugins/mplus-intercom-subscription/" target="_blank" rel="noopener">SVN repository of Hello Dolly plugin</a>.</p>
<p>After adding the icon, banner and screenshot images, run:</p>
<pre>svn add assets/*</pre>
<p><img decoding="async" class="aligncenter wp-image-495717 size-medium" src="http://www.79mplus.com/assets/03-adding-files-to-repo-300x150.png" alt="" width="300" height="150" title="Step by step guide to publish a Plugin to WordPress.org repository" srcset="https://www.79mplus.com/assets/03-adding-files-to-repo-300x150.png 300w, https://www.79mplus.com/assets/03-adding-files-to-repo-510x255.png 510w, https://www.79mplus.com/assets/03-adding-files-to-repo.png 676w" sizes="(max-width: 300px) 100vw, 300px" /></p>
<p>(Add <code>--force</code> if any file has not been added: <code>svn add --force assets/*</code>.)</p>
<p>Check and double check if everything is as it should be. If not, change the files and add the files again with the commands above.</p>
<p>Then when you are ready, run:</p>
<pre>svn ci -m 'Added first version of the plugin'</pre>
<p>If failed, try:</p>
<pre>svn ci -m 'Added first version of the plugin' --username wporgusername --password wporgpassword</pre>
<p>We had some special characters in our passwords, so we had to add quotation marks around our password. Something like this:</p>
<pre>svn ci -m 'Added first version of the plugin' --username wporgusername --password "wporgpassword"</pre>
<p>Eventually, you should see the checkin/commit to be finished:</p>
<p><img decoding="async" class="aligncenter wp-image-495718 size-medium" src="http://www.79mplus.com/assets/04-after-svn-checkin-300x79.png" alt="" width="300" height="79" title="Step by step guide to publish a Plugin to WordPress.org repository" srcset="https://www.79mplus.com/assets/04-after-svn-checkin-300x79.png 300w, https://www.79mplus.com/assets/04-after-svn-checkin-768x201.png 768w, https://www.79mplus.com/assets/04-after-svn-checkin-510x134.png 510w, https://www.79mplus.com/assets/04-after-svn-checkin.png 809w" sizes="(max-width: 300px) 100vw, 300px" /></p>
<p>Now there you have it. We got our plugin published with these simple steps. If you are curious, <a href="https://wordpress.org/plugins/mplus-intercom-subscription/" target="_blank" rel="noopener">visit our plugin page here</a>. You can also install it by searching for &#8220;mplus intercom&#8221; from WP Admin &#8211; Plugins &#8211; Add New of any WordPress installation.</p>
<p>Next time you have some changes, use svn add and then svn ci to commit the changes. Don&#8217;t forget to update the version number on readme and plugin file header. This will automatically generate your plugin zip file and push updates to user.</p>
<p>Remember, once your plugin gets published, you should apply changes to the repo moderately because they have an automated process that generates the plugin zip file automatically. It may create stress on their end if you <a href="https://developer.wordpress.org/plugins/wordpress-org/detailed-plugin-guidelines/#14-frequent-commits-to-a-plugin-should-be-avoided" target="_blank" rel="noopener">frequently commit</a>. Also, users will be annoyed if you push updates frequently.</p>
<hr /><p><em>Remember, once your plugin gets published, you should apply changes to the repo moderately because they have an automated process...</em><br /><a href="https://twitter.com/intent/tweet?url=https%3A%2F%2Fwww.79mplus.com%2F%3Fp%3D495696&#038;text=Remember%2C%20once%20your%20plugin%20gets%20published%2C%20you%20should%20apply%20changes%20to%20the%20repo%20moderately%20because%20they%20have%20an%20automated%20process...&#038;via=79mplus&#038;related=79mplus" target="_blank" rel="noopener noreferrer">Share on X</a><br /><hr />
<p>Well, that&#8217;s about it. This is a glorious time for all of our teammates. We are eager to contribute more plugins to the WordPress plugin repository in future.</p>
<p>Till then, cheers! Have a good life!</p>
<p>The post <a rel="nofollow" href="https://www.79mplus.com/step-by-step-guide-to-publish-a-plugin-to-wordpress-org-repository/">Step by step guide to publish a Plugin to WordPress.org repository</a> appeared first on <a rel="nofollow" href="https://www.79mplus.com">79mplus</a> and is written by <a rel="nofollow" href="https://www.79mplus.com/author/adnan360/">Adnan Shameem</a></p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
