<?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>archGFX &#187; tutorial</title>
	<atom:link href="http://archgfx.net/tag/tutorial/feed" rel="self" type="application/rss+xml" />
	<link>http://archgfx.net</link>
	<description>Austin web designer - Adam Freetly</description>
	<lastBuildDate>Wed, 28 Sep 2011 13:50:27 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>SF.net PT 2: Setting up a demo site</title>
		<link>http://archgfx.net/blog/2007/geek/blogging/sfnet-pt-2-setting-up-a-demo-site</link>
		<comments>http://archgfx.net/blog/2007/geek/blogging/sfnet-pt-2-setting-up-a-demo-site#comments</comments>
		<pubDate>Mon, 05 Mar 2007 03:17:01 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[blogging]]></category>
		<category><![CDATA[hosting]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[sourceforge]]></category>
		<category><![CDATA[SSH]]></category>
		<category><![CDATA[themes]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://archgfx.net/blog/2007/asides/sfnet-pt-2-setting-up-a-demo-site</guid>
		<description><![CDATA[Part 1 was easy. it's all GUI stuff, that you can figure out by poking around. Part 2 is the reason I started writing this down. The only way to maintain your sourceforge.net website, is via SSH (and by extension, sFTP). Programs you will need: Putty (download) PuttyGen (same as above) WinSCP (download) Putty and [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://sunburntkamel.archgfx.net/2007/03/02/hosting-a-theme-on-sourceforge-pt-1/">Part 1 was easy</a>.  it's all GUI stuff, that you can figure out by poking around.  Part 2 is the reason I started writing this down.  The only way to maintain your sourceforge.net website, is via <acronym title='Secure SHell'><span class='caps'>SSH</span></acronym> (and by extension, sFTP).  Programs you will need:</p>
<ul>
<li>Putty (<a href="http://www.putty.nl/download.html">download</a>)</li>
<li>PuttyGen (same as above)</li>
<li>WinSCP (<a href="http://winscp.net/eng/download.php">download</a>)</li>
</ul>
<p><span id="more-1016"></span></p>
<p>Putty and PuttyGen are just executable programs, they don't install.  After you've installed winSCP and rebooted, go to your SF.net Admin Menu and choose <strong>Shell/DB/web</strong>.  On this page, they list the location of your web files. The important one is <em>Path to htdocs directory:</em> (<code>/home/groups/P/PR/PROJECTNAME/htdocs</code>).  That's just reference right now.</p>
<h3>PHPMyAdmin</h3>
<p>First set up our MySQL database.  Halfway down the page, there's a link to "Manage Project Databases", which takes you to a page where you will set your passwords.  I use the same password for all 3.  not the most secure, theoretically, but i can't think why i would be sharing any of the passwords with anyone.  After you set your password, use the link on that page to log into PHPMyAdmin with your admin account.  first thing you'll do is create a database:</p>
<p><img src="http://sunburntkamel.files.wordpress.com/2007/03/phpmyadmin.jpg" alt="create!" /></p>
<p>i just put wp or wordpress on the end of it, but you should leave the project number as a prefix.</p>
<h3>PuttyGen</h3>
<p>To log in to your site, you need to set up an <acronym title='Secure SHell'><span class='caps'>SSH</span></acronym> key pair. Open up PuttyGen.exe.  we're going to follow <a href="http://sourceforge.net/docs/F02/en/#keygen_putty">these instructions</a>.  When you click 'generate key', you'll see this:</p>
<p><img src="http://sunburntkamel.files.wordpress.com/2007/03/randomness.jpg" alt="do like the man says, move your mouse around." /></p>
<p>so be ready to shake your <strike>tail feathers</strike> pointer finger, it only takes a few seconds.  Once it's generated (i didn't bother entering a passphrase, but you might want to) edit the 'Key comment' field like so (the key automatically updates):</p>
<p><img src="/files/2007/03/sshkey.jpg" alt="<acronym title='Secure SHell'><span class='caps'>SSH</span></acronym> key generated" /></p>
<p>Copy everything in the Public Key field, and click over to your <a href="https://sourceforge.net/account/">Account maintenance page</a>.  Near the bottom, click the [Edit <acronym title='Secure SHell'><span class='caps'>SSH</span></acronym> Keys for Shell/CVS] link.  Paste your key into that field.  Make sure you click the "Save Private Key" button, and then close PuttyGen.</p>
<h3>WinSCP</h3>
<p>Open winSCP.  on the configuration screen, click New:</p>
<p><img src="http://sunburntkamel.files.wordpress.com/2007/03/winscp.jpg" alt="new account" /></p>
<p>the private key file is the one you saved from PuttyGen a minute ago.  You'll also want to go to the directory page, and set the remote directory to your htdocs directory.  Save your settings, and click Login.  winSCP will warn you about the accepting the key fingerprint, click yes.</p>
<p>You can either unzip wordpress locally, and upload the whole thing, which takes a while, or you can just upload the *.tar.gz file and unzip it on the server.  <a href="http://techtites.com/2007/03/03/upgrading-wordpress-via-shell/">Techtite</a> just posted an explanation of this, although there are a few differences I'll explain in a minute.</p>
<h3>Putty</h3>
<p>When you open Putty.exe, you'll need to configure it much the same way you did winSCP:<br />
<img src="http://sunburntkamel.files.wordpress.com/2007/03/puttyhost.jpg" alt="host info" /></p>
<p><img src="http://sunburntkamel.files.wordpress.com/2007/03/puttykey2.jpg" alt="key location" /></p>
<p>Save your settings, and login.  You'll be prompted for your username, and then you'll want to type <code>cd /home/groups/P/PR/PROJECTNAME/htdocs</code>.  Following Ajay's instructions, the wget command doesn't work, because your shell account doesn't have access to anything that's not on SF.net. so here are the commands i used:<br />
<code><br />
tar xzvf wordpress-2.1.2.tar.gz<br />
cp -rf wordpress/* ./<br />
cp wp-config-sample.php wp-config.php<br />
vi wp-config.php<br />
</code><br />
vi is a text editor.  Once it opens, the first thing you should do, is type 'i'.  That puts you into insert mode (the default is view).  enter the information from the "Manage Project Databases" page, like so:<br />
<img src="http://sunburntkamel.files.wordpress.com/2007/03/wp-config2.jpg" alt="editing in vi" /></p>
<p>You can paste into Putty by placing the cursor where you want, and right-clicking on the window. And yes, we're changing that '99% chance you won't need to change this' line.  You'll need to use the admin username and password.  after you're done editting, press '<code>ESC</code>' to switch back to view mode, and then '<code>:wq</code>' to write the file and quit.</p>
<p>now you're ready to run install.php! while you're setting up all your favorite options, you'll note that</p>
<ul>
<li>you can't set up akismet.  not sure what to do about that just yet.</li>
<li>you can't upload files.  or add custom headers.  not sure what to do about that either.</li>
<li>when you edit your permalink structure, it won't save.  you'll have to fire up vi to do that as well.</li>
</ul>
<h3>Adding your Theme</h3>
<p>you can keep an up to date copy of your theme installed via SVN. Just:<br />
<code><br />
cd wp-content/themes/<br />
svn co http://PROJECTNAME.svn.sourceforge.net/svnroot/PROJECTNAME/trunk/ PROJECTNAME<br />
</code><br />
don't forget the /trunk.  since you're doing this via command line, you'll need to make sure your capitalization matches.  and that last PROJECTNAME is whatever you want to call your theme folder.</p>
<p>The last thing you'll need to do is add your sourceforge code.  The code is on that Shell/DB/web page, about halfway down.</p>
]]></content:encoded>
			<wfw:commentRss>http://archgfx.net/blog/2007/geek/blogging/sfnet-pt-2-setting-up-a-demo-site/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Hosting a theme on Sourceforge, PT. 1</title>
		<link>http://archgfx.net/blog/2007/geek/blogging/hosting-a-theme-on-sourceforge-pt-1</link>
		<comments>http://archgfx.net/blog/2007/geek/blogging/hosting-a-theme-on-sourceforge-pt-1#comments</comments>
		<pubDate>Fri, 02 Mar 2007 18:41:30 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[blogging]]></category>
		<category><![CDATA[hosting]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[sourceforge]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[SVN]]></category>
		<category><![CDATA[themes]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://archgfx.net/blog/2007/asides/hosting-a-theme-on-sourceforge-pt-1</guid>
		<description><![CDATA[The advantages of sourceforge hosting are all things that all themes should have: demo blog, screenshots, download stats, nationwide download mirrors, SVN repository, bug tracker, forums. All things you could provide from your own web host, but not only would it cost a fair chunk, having bugs and support show up as comments on your [...]]]></description>
			<content:encoded><![CDATA[<p>The advantages of sourceforge hosting are all <a href="http://weblogtoolscollection.com/archives/2007/02/28/for-theme-authors/">things that all themes should have</a>:  demo blog, screenshots, download stats, nationwide download mirrors, SVN repository, bug tracker, forums. All things you <em>could</em> provide from your own web host, but not only would it cost a fair chunk, having bugs and support show up as comments on your blog can get to be a bit unweildy.  For any <acronym title='GNU General Public License'><span class='caps'>GPL</span></acronym> theme, sourceforge hosting is Free as in beer.  unfortunately, getting set up on sourceforge isn't a cakewalk.  so i'm going to attempt to index their documentation in a more straightforward manner.  <a href="http://sunburntkamel.archgfx.net/2007/03/04/sfnet-pt-2-setting-up-a-demo-site/">Part 2</a> will explain how to install wordpress on your project's website, to give you a fully featured demo site.</p>
<p><span id="more-1008"></span></p>
<ol>
<li>Regiser for the site.  (create account, in the top right of any page).  the name you choose is going to be the name of the lead developer.  it doesn't have to be a real name if you don't want it to.</li>
<li><a href="https://sourceforge.net/register/">Register your project</a>.  i know, that's an absurd number of options.  you have to save each option (trove) before moving on to the next one. your UNIX name should probably start with '<code>wp-</code>' for clarity and findability.  The descriptive name should start with 'WP Theme -' for the same reason. The Basics:
<ul>
<li>Intended Audience :: End users/Desktop</li>
<li>Topic :: Internet :: WWW/HTTP :: Dynamic Content</li>
<li>OS Independent (Written in an interpreted language)</li>
<li>User Interface :: Web Based</li>
</ul>
<p>Your description is probably not the one that shows up in the dashboard.  it should start by explaining that this is a wordpress theme.  It should explain what sets you apart from other themes, whether that's aesthetics, options, or plugin support.  This would be a good place to describe your layout, and basic colors.<br />
from this point on, everything will be done through the admin menu. on the top right of your project page:<a href="http://sunburntkamel.files.wordpress.com/2007/03/sfadmin.png" title="Sourceforge Admin"><img src="/files/2007/03/sfadmin.thumbnail.png" alt="Sourceforge Admin" align="right" /></a></li>
<li>Upload a screenshot.  You can upload more once after you're set up.</li>
<li>fire up your ftp client.  connect to upload.sourceforge.net, and upload your zip file</li>
<li>now go to Admin &gt; File Releases.  select the file from the list at the bottom of the page . Don't worry about your first changelog/notes entry.  'initial public release' is good enough.</li>
</ol>
<h3>Setting up SVN:</h3>
<p>Nobody wants to use CVS anymore. go to Admin &gt; Subversion, and tick the checkbox.  From here on out, I'm assuming you're using <a href="http://tortoisesvn.tigris.org/">tortoise SVN</a>, because it's easy, and i can take screenshots <img src='http://archgfx.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>right click in any folder on your computer, and choose the repo-browser:</p>
<p><img src="http://sunburntkamel.files.wordpress.com/2007/03/repo-browser.jpg" alt="repo browser" /></p>
<p>You'll be prompted for a repository to browse.  the address is on that SVN page you just ticked the box on: <code>https://wp-unixname.svn.sourceforge.net/svnroot/wp-unixname</code>.  You'll want to create 3 folders:  Trunk, Tags, and Branches.  Right click on the main folder.  When you choose create folder, and name it, you'll be promted for your sourceforge username and password.</p>
<p>Trunk is where your project lives, Tags are snapshots every time you release a new version.  Branches are like tags, only they both make progress.  You might use this if you were making a version 2 of your theme, while continuing to support version 1.</p>
<p>To start your SVN repository, right click on the folder that has the release version of your file, and choose "Import" from the tortoise submenu.  It will prompt you for the address of your repository, make sure you add the <code>/trunk</code> to the end of the url!  This puts your  files on sourceforge.  Users can now browse your code online.</p>
<p>Now your code is set up on the server, but you still don't have a local copy that you can easily update. Now you want to make a new folder for your theme in your local /wp-content/themes/ folder. right click on it, and choose "SVN Checkout". Again, make sure to put /trunk on the end of the url.</p>
<p>I'm assuming that this is a new theme that you're already ready to release.  If that's true, the first thing you should do, is right click on the folder you just checked out, and choose "Branch/Tag".  That brings up this window:</p>
<p><img src="http://sunburntkamel.files.wordpress.com/2007/03/branchtag.jpg" alt="branchtag.jpg" /></p>
<p>Change the <acronym title='Uniform Resource Locator'><span class='caps'>URL</span></acronym> to <code>/tags/1.0</code>.  and leave everything else.  You can use the specific version if you release a version and forget to tag it.  You probably only want to switch your working copy to a branch, not a tag.</p>
<h3>New Versions</h3>
<p>Now when you fix a bug, or tweak your <acronym title='Cascading Style Sheets'><span class='caps'>CSS</span></acronym>, after you save, you can just right click on the file, and choose "SVN Commit". you'll be prompted to enter a description of the change, and possibly your password the first time.  when you want to release a new version, right click on your folder, and choose "Export".  you'll be prompted for a folder to save to, you probably just want to make a folder on your desktop.  This just copies all the files except the <code>.svn</code> folders, so you can zip it up and upload it to sourceforge via FTP.  then just tag the new version, and you're all set.  You'll probably also want to post about it on your development blog, which I'll explain how to set up in <a href="http://sunburntkamel.archgfx.net/2007/03/04/sfnet-pt-2-setting-up-a-demo-site/">part 2</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://archgfx.net/blog/2007/geek/blogging/hosting-a-theme-on-sourceforge-pt-1/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>The Thin Line: From Skin To Theme</title>
		<link>http://archgfx.net/blog/2006/geek/blogging/the-thin-line-from-skin-to-theme</link>
		<comments>http://archgfx.net/blog/2006/geek/blogging/the-thin-line-from-skin-to-theme#comments</comments>
		<pubDate>Sun, 19 Nov 2006 01:57:51 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[blogging]]></category>
		<category><![CDATA[2.0]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[Sandbox]]></category>
		<category><![CDATA[skins]]></category>
		<category><![CDATA[templates]]></category>
		<category><![CDATA[the-thin-line]]></category>
		<category><![CDATA[themes]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://archgfx.net/blog/2006/asides/the-thin-line-from-skin-to-theme</guid>
		<description><![CDATA[You may have noticed that i really like The Sandbox. Andy suggested a possible path for it to become the default theme, which I think would be an excellent idea. Mainly because writing PHP is not my strong suit. CSS is closer to my skill set. WordPress versions 1.2 and below used a templating system [...]]]></description>
			<content:encoded><![CDATA[<p>You may have noticed that <a href="http://sunburntkamel.wordpress.com/2006/09/11/i-heart-sandbox/" title="i [heart] sandbox">i really like</a> <a href="http://plaintxt.org/themes/sandbox" title="sandbox theme">The Sandbox</a>.  <a href="http://comox.textdrive.com/pipermail/wp-hackers/2006-September/008703.html" title="andy moves on defaultification">Andy suggested</a> a <a href="http://trac.wordpress.org/browser/branches/sandbox" title="the sandbox branch in trac.">possible path</a> for it to become the default theme, which I think would be an excellent idea. Mainly because writing <acronym title='PHP Hypertext Processor'><span class='caps'>PHP</span></acronym> is not my strong suit. <acronym title='Cascading Style Sheets'><span class='caps'>CSS</span></acronym> is closer to my skill set.</p>
<p>WordPress versions 1.2 and below used a templating system like the one andy proposed. The problem was, the classic theme had limitations. if you wanted to remove the sidebar on post pages, as kubrick does, you were out of luck. The Sandbox would <a href="http://andy.wordpress.com/2006/07/20/generated-semantic-classes-2/#more-88" title="how semantic classes help">fix that</a>. The other development that helps make templating viable again was introduced in wordpress 2.0. Since 2.0 was introduced, wordpress loads functions.php of the current theme, if it exists. this means that a theme could use only <code>style.css</code> and <code>functions.php</code>, and have an enormous level of control.</p>
<h3>Changes to The Sandbox</h3>
<p>it's been a while since andy added the sandbox branch, but it doesn't seem to be making progress. so, while i can't implement status: hidden, i can make a workable version of The Sandbox to test The Thin Line on.</p>
<p>It's been stripped of it's skins panel (as well as the skins subfolder), had the default skin set to <em>none</em>, and had status: hidden added to the theme information.  I also moved <code>wp_footer();</code> inside the <code>#footer</code> div, <strike>for even greater semantic justice</strike> so that information added to the footer can be styled more easily (scroll to the end).</p>
<h3>Changes to The Thin Line</h3>
<p>when i said that Themes could be built on <code>style.css</code> and <code>functions.php</code>, that's only partly true. you could build a theme that way that only inserted a footer credit, and applied javascript to the head of the theme. to add an options panel, you'll probably want to use theundersigned's <a href="http://theundersigned.net/2006/06/wordpress-how-to-theme-options/" title="wordpress theme options howto">tutorial</a>, or ozh's <a href="http://frenchfragfactory.net/ozh/my-projects/wordpress-theme-toolkit-admin-menu/" title="the original">theme toolkit</a>. I'm using theundersigned's tutorial, mainly because the <acronym title='PHP Hypertext Processor'><span class='caps'>PHP</span></acronym> is simple enough for me to get the gist of what's going on. Ozh's toolkit does more, but requires me to take more on faith, and has previously caused problems on the theme viewer and wordpress.com.</p>
<p>The first step to gluing The Thin Line to The Sandbox is this:</p>
<pre>/*

<code>

Theme Name: The Thin Line

Theme URI: http://archgfx.net.net/blog/index.php/themes/the-thin-line

Version: 0.7

Description: Hand on mouth, the game goes on

Author: Sunburntkamel

Author URI: http://archgfx.net/blog/index.php/about/

Template: Sandbox

</code>

*/</pre>
<p>That's my entire <code>style.css</code>. it doesn't need to have anything else. I'll be using style.php for all the style information. The important part is the last line, which tells wordpress to use the template files (<code>index.php</code>, <code>single.php</code>, etc) from 'sandbox' to handle the content.  <code>Style.php</code> will be loaded on top of the existing sandbox <acronym title='Cascading Style Sheets'><span class='caps'>CSS</span></acronym>, which is why we set the sandbox skin to 'none'.</p>
<h3>Layouts</h3>
<p>I was going to re-use the sandbox' "skins" submenu at first, but that would require digging into the function, and renaming all the variables to use theundersigned's <code>$shortname</code> converntion, and including it in the thin line, rather than the sandbox. That requires redistributing more code, which isn't my goal. so i used theundersigned's tutorial to make a dropdown list.</p>
<p>corrosponding to the dropdown list is this section of style.php, which performs roughly the same task as the skins page:</p>
<pre>&lt;<code>?php if ($thethinline_layout_style = "3c-b") { ?&gt;

@import url('skins/3c-b.css');

&lt;?php } else if ($thethinline_layout_style = "3c-l") { ?&gt;

@import url('skins/3c-l.css');

&lt;?php } else if ($thethinline_layout_style = "3c-r") { ?&gt;

@import url('skins/3c-r.css');

&lt;?php } else if ($thethinline_layout_style = "2c-l") { ?&gt;

@import url('skins/2c-l.css');

&lt;?php } else if ($thethinline_layout_style = "2c-r") { ?&gt;

@import url('skins/2c-r.css');

&lt;?php } else { /* 1c-r */ ?&gt;

@import url('skins/1c-b.css');

&lt;?php } ?</code>&gt;</pre>
<p>after that, style.php is just the remainder of the original thethinline.css. The advantage of styling in a <acronym title='PHP Hypertext Processor'><span class='caps'>PHP</span></acronym> fileis that you can use variables, wordpress conditionals, and other assorted tricks.</p>
<h3>Functions.<acronym title='PHP Hypertext Processor'><span class='caps'>PHP</span></acronym></h3>
<p>Adding functionality to The Thin Line via functions.php is a little more like writing a plugin than like writing a theme. I'm using add_action(); hooks to add to both the header and footer of the theme. I could also add and remove widgets, although i don't need to mess with the basic widget formatting, because that's handled by functions.php in The Sandbox. Theundersigned's tutorial needs a minor correction first, though. at the end of functions.php, I changed <code>&lt;?php bloginfo('template_directory'); ?&gt;</code> to <code>&lt;?php bloginfo('stylesheet_directory'); ?&gt;</code>. For most themes, those hooks point to the same file.  This is the first time the difference matters to a theme.</p>
<p><a href="https://sunburntkamel.wordpress.com/files/2006/11/footer.jpg" title="Updated Footer"><img src="https://sunburntkamel.wordpress.com/files/2006/11/footer.jpg" alt="Updated Footer" /></a></p>
<p>This is the new footer for The Thin Line.  I added an image and link to The Thin Line homepage, as well as a section for users to add their own copyright notice/pithy slogan/whathaveyou (another trick i stole from scott).  This is purely <acronym title='PHP Hypertext Processor'><span class='caps'>PHP</span></acronym>, but it's not scary.  Just make the end of theundersigned's <code>functions.php</code> look like this:</p>
<pre>
f<code>unction mytheme_wp_footer() {/* Places credit link in the footer */ ?&gt;

&lt;span id="skin-link"&gt;

&lt;a href="http://archgfx.net/blog/index.php/themes/the-thin-line" title="Theme by SunBurntKamel"&gt;

&lt;img src="&lt;?php bloginfo('stylesheet_directory'); ?&gt;/thethinline/ttlogo.jpg" alt="The Thin Line" title="The Thin Line" /&gt;&lt;/a&gt;&lt;/span&gt; &lt;br /&gt;

&lt;p class="annotation"&gt;&lt;small&gt;&lt;?php echo $thethinline_footer_text ?&gt;&lt;/small&gt;&lt;/p&gt;&lt;?php }

add_action('wp_head', 'mytheme_wp_head');

add_action('admin_menu', 'mytheme_add_admin');

add_action('wp_footer', 'mytheme_wp_footer');

?</code>&gt;</pre>
<p>That's actually probably easier than creditting yourself in footer.php  I could (and may possibly) also use this function to add, say, <a href="http://www.mikeindustries.com/blog/archive/2004/12/sifr-2.0-release-candidate-3" title="Scalable Inline Flash Replacement">siFR</a> to the theme as well.  Someone who didn't ph34r javascript the way i do might add <a href="http://binarybonsai.com/archives/2004/09/25/livesearch/" title="kubrick's livesearch">livesearch</a> to a sandbox based theme.</p>
<h3>The End</h3>
<p>My point in writing all of this is to show that the idea of writing a new theme every time is <a href="http://sunburntkamel.archgfx.net/2006/09/21/themes-vs-skins/" title="themes vs. skins">overkill</a>. Template files themselves don't vary a lot. Most of the functionality and variation happens in javascript and <acronym title='Cascading Style Sheets'><span class='caps'>CSS</span></acronym>. those can both be handled by only a couple of files. If theme authors could depend on the sandbox being in every wordpress distribution, It would make it easier for them, as well as for casual users who just want to change something small about a theme. It's a lot easier to find the thing to change when there are only 3 files in the Theme Editor panel of the dashboard.</p>
<p><img src="https://sunburntkamel.wordpress.com/files/2006/11/folder.jpg" alt="theme contents" /></p>
<p>I was going to include The Thin Line with this, but i'm having a little difficulty making everything style the way it was before, and some of the variables i've created with theundersigned's tutorial aren't properly sticking, despite showing up correctly in my database.</p>
<h3>Bookmark This:</h3>
<p><a href="http://del.icio.us/post?url=http://sunburntkamel.archgfx.net/2006/11/18/the-thin-line-from-skin-to-theme/;title=From+Skin+to+Theme"><img src="http://sunburntkamel.wordpress.com/files/2006/11/delicious.gif" alt="add to del.icio.us" /></a> :: <a href="http://digg.com/submit?phase=2&amp;url=http://sunburntkamel.archgfx.net/2006/11/18/the-thin-line-from-skin-to-theme/"><img src="http://sunburntkamel.wordpress.com/files/2006/11/digg.gif" alt="Digg it" /></a> :: <a href="http://ma.gnolia.com/bookmarklet/add?url=http://sunburntkamel.archgfx.net/2006/11/18/the-thin-line-from-skin-to-theme/;title=From+Skin+to+Theme"><img src="http://sunburntkamel.wordpress.com/files/2006/11/magnolia.gif" alt="add to ma.gnolia" /></a> :: <a href="http://www.stumbleupon.com/submit?url=http://sunburntkamel.archgfx.net/2006/11/18/the-thin-line-from-skin-to-theme/;title=From+Skin+to+Theme"><img src="http://sunburntkamel.wordpress.com/files/2006/11/stumbleit.gif" alt="Stumble It!" /></a> :: <a href="http://www.newsvine.com/_tools/seed&amp;save?url=http://sunburntkamel.archgfx.net/2006/11/18/the-thin-line-from-skin-to-theme/;title=From+Skin+to+Theme"><img src="http://sunburntkamel.wordpress.com/files/2006/11/newsvine.gif" alt="seed the vine" /></a> :: <a href="http://tailrank.com/share/?text=&amp;link_href=http://sunburntkamel.archgfx.net/2006/11/18/the-thin-line-from-skin-to-theme/&amp;title=From+Skin+to+Theme" title="TailRank"><img src="http://sunburntkamel.wordpress.com/files/2006/11/tailrank.gif" alt="TailRank"/></a></p>
]]></content:encoded>
			<wfw:commentRss>http://archgfx.net/blog/2006/geek/blogging/the-thin-line-from-skin-to-theme/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Custom CSS on wordpress.com</title>
		<link>http://archgfx.net/blog/2006/geek/blogging/custom-css-on-wordpresscom</link>
		<comments>http://archgfx.net/blog/2006/geek/blogging/custom-css-on-wordpresscom#comments</comments>
		<pubDate>Fri, 04 Aug 2006 18:48:31 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[blogging]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[mass customization]]></category>
		<category><![CDATA[testing]]></category>
		<category><![CDATA[themes]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[wordpress.com]]></category>

		<guid isPermaLink="false">http://archgfx.net/blog/2006/asides/custom-css-on-wordpresscom</guid>
		<description><![CDATA[UPDATE: it seems that this trick doesn't actually work all that well.  however, the pinklillies style has been painstakingly converted to a sandbox skin.  The instructions below will help you use skins that were not intended for wordpress.com, though. Customizing CSS is a new trick on wordpress.com, but hosted wordpress users have been doing it [...]]]></description>
			<content:encoded><![CDATA[<p class="post"><b>UPDATE</b>: it seems that this trick doesn't actually work all that well.  however, the pinklillies style has been painstakingly <a href="http://ntuat.wordpress.com/2006/08/23/pink-lilies/" title="n-(t)-u port of pink lillies">converted to a sandbox skin</a>.  The instructions below will help you use skins that were not intended for wordpress.com, though.</p>
<p class="post">Customizing <acronym title='Cascading Style Sheets'><span class='caps'>CSS</span></acronym> is a new trick on wordpress.com, but hosted wordpress users have been doing it for a while.</p>
<p><strike><a href="http://www.alexking.org/index.php?content=software/wordpress/styles.php" rel="nofollow">Alex King</a> has hosted a competition or two based on styling the 'classic' theme.</strike></p>
<p><strike>Here's how to use those great old styles:</strike></p>
<p>1.  download and unzip the style of your choice.<br />
2.  Go to your wordpress dashboard, and under Presentation, choose the WordPress Classic theme, by Dave Shea.<br />
3.  Start Writing a new post.  Using the uploader, upload all of the images from the style you downloaded.<br />
3a. for each image, click on it, and make sure the popup says 'using original' at the top. click on 'using thumbnail' if it doesn't. once it says 'using original', click 'close'<br />
4.  Open TextEdit on your computer<br />
5.  drag style.css from the downloaded style onto textedit<br />
6.  click Go &gt; Find (or press cmd+F)<br />
7.  search for the name of the first image in the style folder (ex.  top.gif)<br />
8.  in your new post (on wordpress.com), in the uploader, control+click on the same image, and click "copy image address"<br />
9.  switch back to textedit, and paste that address into the 'replace' field.</p>
<p><img src="http://sunburntkamel.wordpress.com/files/2006/08/textedit.jpg" alt="textedit" /><br />
10.  click 'replace and find'.  this will highlight the name of the image.<br />
11.  click 'replace' and the highlighted text will be replaced with the address of the image you've uploaded.<br />
12.  repeat steps 6-11 for all the images in the style.<br />
13.  click File &gt; Save<br />
14.  click Edit &gt; Select All, then Edit &gt; Copy<br />
15.  go to the Custom <acronym title='Cascading Style Sheets'><span class='caps'>CSS</span></acronym> page in your wordpress dashboard, and paste.<br />
16.  click preview to see it in action, and click 'save stylesheet' if it looks good!</p>
<p><strike><b>FULL DISCLOSURE</b>:  i don't have a paid account.  i can't test this out.</strike></p>
<p><strike><b>UPDATE:</b>  <a href="http://wordpress.com/forums/topic.php?id=3243&amp;replies=8#post-20971" title="wank's comment on the <acronym title='Cascading Style Sheets'><span class='caps'>CSS</span></acronym> thread">wank points out</a> that this won't work perfectly, since classic styles are meant to replace classic, not overwrite it.  <a href="http://wank.wordpress.com/files/2006/08/pinklilies.png" title="from a sandbox install, not wordpress.com">example</a></strike></p>
]]></content:encoded>
			<wfw:commentRss>http://archgfx.net/blog/2006/geek/blogging/custom-css-on-wordpresscom/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

