<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Inchoo</title>
	
	<link>http://inchoo.net</link>
	<description>Inchoo - E-Commerce &amp; Magento discussion</description>
	<lastBuildDate>Fri, 03 Jul 2009 14:41:28 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/Inchoo" type="application/rss+xml" /><feedburner:emailServiceId>Inchoo</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item>
		<title>Zend framework notification system</title>
		<link>http://feedproxy.google.com/~r/Inchoo/~3/Hca0QgeGdjw/</link>
		<comments>http://inchoo.net/zend/zend-framework-notification-system/#comments</comments>
		<pubDate>Fri, 03 Jul 2009 13:03:00 +0000</pubDate>
		<dc:creator>Vedran Subotic</dc:creator>
				<category><![CDATA[Zend]]></category>

		<guid isPermaLink="false">http://inchoo.net/?p=2552</guid>
		<description><![CDATA[I was playing around with admin interface for one custom project and I wanted general notification system for updating, adding, deleting records in database or any other action I could imagine. Zend framework has built in notification system where you can easily call the following helper (it&#8217;s an controller action helper). I hope this code [...]]]></description>
			<content:encoded><![CDATA[<p>I was playing around with admin interface for one custom project and I wanted general notification system for updating, adding, deleting records in database or any other action I could imagine. Zend framework has built in notification system where you can easily call the following helper (it&#8217;s an controller action helper). I hope this code will help somebody.</p>
<p><span id="more-2552"></span></p>
<pre class="brush: php">
$this-&gt;_helper-&gt;flashMessenger();
</pre>
<p>First you need to register your view variable in init() method if you want to have notifications in all view files of your controller.</p>
<pre class="brush: php">
public function init()
{

/* Initialize action controller here*/
$this-&gt;view-&gt;messages = $this-&gt;_helper-&gt;flashMessenger-&gt;getMessages();

}
</pre>
<p>Then you simply add messages in your action methods like this:</p>
<pre class="brush: php">
$this-&gt;_helper-&gt;flashMessenger-&gt;addMessage(array(&quot;ok_message&quot; =&gt; &#039;record deleted&#039;));
or
$this-&gt;_helper-&gt;flashMessenger-&gt;addMessage(array(&quot;err_message&quot; =&gt; &#039;unable to comply&#039;));
</pre>
<p>Why wasting you code when you got all in one place, right?</p>
<p>Once you register the message notification all you need is to choose where message should appear.That&#8217;s the easy part, just need to style your div ids and classes in view files.</p>
<pre class="brush: php">
&lt; ?php if(isset($this-&gt;messages)):?&gt;
&lt;div class=&quot;grid_12&quot;&gt;
&lt; ?php foreach($this-&gt;messages as $message):?&gt;
&lt;div id=&quot;site_info&quot;&gt;
&lt;div class=&quot;box&quot;&gt;
&lt; ?php if(isset($message[&quot;error&quot;])):?&gt;
&lt;p&gt;&lt; ?php echo $message[&quot;error&quot;]?&gt;&lt;/p&gt;
&lt; ?php elseif(isset($message[&quot;ok&quot;])):?&gt;
&lt;p&gt;&lt; ?php echo $message[&quot;ok&quot;]?&gt;&lt;/p&gt;
&lt; ?php endif?&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt; ?php endforeach?&gt;
&lt;/div&gt;
&lt; ?php endif?&gt;
</pre>
<p>One trick, if you want to show them on all view pages, edit your layout file and paste the code above at header,footer or wherever you want them to be shown<br />
(there is no need to put them in you view files, unless you want to show same notifications twice <img src='http://inchoo.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ).</p>
<p>The easiest way to have notifications in other modules is to register it like session variable  and unset them manually.</p>
<p>Check class Zend_Controller_Action_Helper_FlashMessenger for additional purposes.<br />
Enjoy coding.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Inchoo?a=Hca0QgeGdjw:muEUBoqWxPg:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=Hca0QgeGdjw:muEUBoqWxPg:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=Hca0QgeGdjw:muEUBoqWxPg:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=Hca0QgeGdjw:muEUBoqWxPg:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=Hca0QgeGdjw:muEUBoqWxPg:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=Hca0QgeGdjw:muEUBoqWxPg:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=Hca0QgeGdjw:muEUBoqWxPg:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=Hca0QgeGdjw:muEUBoqWxPg:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Inchoo/~4/Hca0QgeGdjw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://inchoo.net/zend/zend-framework-notification-system/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://inchoo.net/zend/zend-framework-notification-system/</feedburner:origLink></item>
		<item>
		<title>Google Analytics in Magento</title>
		<link>http://feedproxy.google.com/~r/Inchoo/~3/eb6cQTniKx0/</link>
		<comments>http://inchoo.net/ecommerce/magento/google-analytics-in-magento/#comments</comments>
		<pubDate>Thu, 02 Jul 2009 09:31:07 +0000</pubDate>
		<dc:creator>Tomislav Bilic</dc:creator>
				<category><![CDATA[Magento]]></category>
		<category><![CDATA[Analytics]]></category>
		<category><![CDATA[Google]]></category>

		<guid isPermaLink="false">http://inchoo.net/?p=2547</guid>
		<description><![CDATA[Some of you who work with Magento for a long time might think that this topic is so clear that it doesn&#8217;t need to have an article. We get many inquiries to finalize the work somebody already started. One of the things we notice is that some developers tend to embed the Google Analytics code [...]]]></description>
			<content:encoded><![CDATA[<p>Some of you who work with Magento for a long time might think that this topic is so clear that it doesn&#8217;t need to have an article. We get many inquiries to finalize the work somebody already started. One of the things we notice is that some developers tend to embed the Google Analytics code directly in the Magento theme files. Yes, it works and you will see the standard traffic data in the Google Analytics interface, but it is not a way to go.</p>
<p><span id="more-2547"></span> In most of the cases, those developers edit footer.phtml in app/design/frontend/default/[your_theme]/template/page/html folder. As I said, the Google Analytics will track visitors data properly, but the main issue is that the eCommerce data will not be collected. To enable eCommerce data to be visible, first step is that you let Google Analytics to know that the profile is actually an E-Commerce site.</p>
<p>You will get to this interface by</p>
<ol>
<li>Logging to Google Analytics</li>
<li>Select an account for this site</li>
<li>On the list of Account profiles, do not go to the reports, click on <strong>Edit</strong> instead</li>
<li>On the first box &#8220;<span>Main Website Profile Information&#8221;, there is another <strong>Edit</strong> link to the right. Click on it.</span></li>
<li><span>One there, you will see the interface similar to the one on this image. Let Google Analytics know this is an eCommerce website<br />
</span></li>
</ol>
<p><img class="alignnone size-full wp-image-2548" title="Edit Profile in Google Analytics" src="http://inchoo.net/wp-content/uploads/2009/07/edit_profile.png" alt="Edit Profile in Google Analytics" width="620" height="576" /></p>
<p>Although Google Analytics will tell you to embed the javascript code on your website, you don&#8217;t have to do that. You just need to see what is the <a title="Google Analytics Web Property ID" href="https://www.google.com/analytics/settings/check_status_profile_handler?id=7376920" target="_blank">Web Property ID</a> of the profile. One you know it, go to the Magento administration to the interface: System&gt; Configuration&gt; Google API&gt; Google Analytics. Enable it and insert that Web Property ID. Viola.</p>
<p><img class="alignnone size-full wp-image-2549" title="Google Analytics Magento Admin" src="http://inchoo.net/wp-content/uploads/2009/07/google_analytics_magento_admin.png" alt="Google Analytics Magento Admin" width="620" height="217" /></p>
<p>Forums say that older versions of Magento before 1.2 <strong>do not properly track</strong> eCommerce data. In case you have older version of Magento and have this issue, do not install some special plugins. Upgrade Magento instead.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Inchoo?a=eb6cQTniKx0:hQyh0NVKKxI:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=eb6cQTniKx0:hQyh0NVKKxI:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=eb6cQTniKx0:hQyh0NVKKxI:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=eb6cQTniKx0:hQyh0NVKKxI:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=eb6cQTniKx0:hQyh0NVKKxI:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=eb6cQTniKx0:hQyh0NVKKxI:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=eb6cQTniKx0:hQyh0NVKKxI:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=eb6cQTniKx0:hQyh0NVKKxI:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Inchoo/~4/eb6cQTniKx0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://inchoo.net/ecommerce/magento/google-analytics-in-magento/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://inchoo.net/ecommerce/magento/google-analytics-in-magento/</feedburner:origLink></item>
		<item>
		<title>Magento CMS syntax – part1</title>
		<link>http://feedproxy.google.com/~r/Inchoo/~3/-eWw63M_UF0/</link>
		<comments>http://inchoo.net/ecommerce/magento/magento-cms-syntax-part1/#comments</comments>
		<pubDate>Tue, 30 Jun 2009 22:59:59 +0000</pubDate>
		<dc:creator>Ivan Weiler</dc:creator>
				<category><![CDATA[Magento]]></category>
		<category><![CDATA[cms]]></category>

		<guid isPermaLink="false">http://inchoo.net/?p=2505</guid>
		<description><![CDATA[Every Magento user noticed that there is special {{magentocode}} syntax available in cms pages and blocks. We traced a bit to find out which params are available and what exactly they do.

As strange as this may sound, processor class that gets called is Mage_Core_Model_Email_Template_Filter located at app/code/core/Mage/Core/Model/Email/Template/Filter.php .
There are also some interesting directives in superclass [...]]]></description>
			<content:encoded><![CDATA[<p>Every Magento user noticed that there is special {{magentocode}} syntax available in cms pages and blocks. We traced a bit to find out which params are available and what exactly they do.</p>
<p><span id="more-2505"></span></p>
<p>As strange as this may sound, processor class that gets called is Mage_Core_Model_Email_Template_Filter located at app/code/core/Mage/Core/Model/Email/Template/Filter.php .</p>
<p>There are also some interesting directives in superclass Varien_Filter_Template, but if i&#8217;m not mistaken, none of them can be used.</p>
<p>There are six replacement codes  that can be used and each triggers its equivalent Directive function:</p>
<p>skinDirective<br />
mediaDirective<br />
htmlescapeDirective<br />
storeDirective<br />
blockDirective<br />
layoutDirective</p>
<p>I&#8217;ll start with easier and most commonly used and continue with advanced ones in part two of this article.</p>
<p><strong>1. skinDirective</strong></p>
<p>Description: Used to retrieve path of skin folder and its files, theme fallback respected<br />
Example: {{skin url=&#8217;images/image.jpg&#8217; _theme=&#8217;blank&#8217;}}<br />
Synonym: Mage::getDesign()-&gt;getSkinUrl($params['url'], $params)<br />
Params:<br />
url = empty or relative file path<br />
_theme = alternative theme, fallbacks if file not exist<br />
_package = alternative package<br />
_area = alternative area(frontend,adminhtml)<br />
_type, _default etc. = nothing useful, somebody please correct me if i&#8217;m wrong <img src='http://inchoo.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><strong>2. mediaDirective</strong></p>
<p>Description: Used to retrieve path of root/media folder and its files<br />
Example: {{media url=&#8217;image.jpg&#8217;}}<br />
Synonym: Mage::getBaseUrl(&#8217;media&#8217;) . $params['url']<br />
Params:<br />
url = empty or relative file path</p>
<p><strong>3. htmlescapeDirective</strong></p>
<p>Description: Used to escape special html chars<br />
Example: {{htmlescape var=&#8217;&lt;a href=&#8221;www.inchoo.net&#8221;&gt;inchoo&lt;/a&gt;&lt;b&gt;inchoo&lt;/b&gt;&lt;i&gt;inchoo&lt;/i&gt;&#8217; allowed_tags=&#8217;b'}}<br />
Synonym: Mage::helper(&#8217;core&#8217;)-&gt;htmlEscape($params['var'], $params['allowed_tags'])<br />
Params:<br />
var = string to escape<br />
allowed_tags = comma-separated list of allowed tags</p>
<p><strong>4. storeDirective</strong></p>
<p>Description: Used to build magento routes and custom urls<br />
Example: {{store url=&#8217;customer/account&#8217; _query_a=&#8217;8&#8242;}}<br />
Synonym: Mage::getUrl($params['url'], $params);<br />
Params:<br />
url = magento routers url<br />
direct_url = normal url, appended to baseurl<br />
_query_PARAMNAME = adds query param, for example _query_a=&#8217;8&#8242; adds a=8 to url<br />
_fragment = adds fragment, for example #comments<br />
_escape = escapes &#8220;,&#8217;,&lt;,&gt;<br />
custom = if using magento route url param, every custom param added will be appended like /a/8/b/10</p>
<p>I probably missed something in this last one, but it&#8217;s very late and i&#8217;m tired of poking through Magento <img src='http://inchoo.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>To be continued ..</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Inchoo?a=-eWw63M_UF0:2uZ7CPU_MRc:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=-eWw63M_UF0:2uZ7CPU_MRc:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=-eWw63M_UF0:2uZ7CPU_MRc:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=-eWw63M_UF0:2uZ7CPU_MRc:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=-eWw63M_UF0:2uZ7CPU_MRc:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=-eWw63M_UF0:2uZ7CPU_MRc:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=-eWw63M_UF0:2uZ7CPU_MRc:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=-eWw63M_UF0:2uZ7CPU_MRc:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Inchoo/~4/-eWw63M_UF0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://inchoo.net/ecommerce/magento/magento-cms-syntax-part1/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://inchoo.net/ecommerce/magento/magento-cms-syntax-part1/</feedburner:origLink></item>
		<item>
		<title>Magento FLIR</title>
		<link>http://feedproxy.google.com/~r/Inchoo/~3/qHzWCbFuYQg/</link>
		<comments>http://inchoo.net/ecommerce/magento/magento-flir/#comments</comments>
		<pubDate>Tue, 30 Jun 2009 20:22:02 +0000</pubDate>
		<dc:creator>Ivan Weiler</dc:creator>
				<category><![CDATA[Magento]]></category>
		<category><![CDATA[cms]]></category>
		<category><![CDATA[design]]></category>

		<guid isPermaLink="false">http://inchoo.net/?p=2481</guid>
		<description><![CDATA[Facelift Image Replacement (or FLIR, pronounced fleer) is an image replacement script that dynamically generates image representations of text on your web page in fonts that otherwise might not be visible to your visitors. Let&#8217;s see how it behaves in Magento.

1. Download FLIR from FLIR homepage. I was using latest 1.2 stable for this article [...]]]></description>
			<content:encoded><![CDATA[<p>Facelift Image Replacement (or FLIR, pronounced fleer) is an image replacement script that dynamically generates image representations of text on your web page in fonts that otherwise might not be visible to your visitors. Let&#8217;s see how it behaves in Magento.</p>
<p><span id="more-2481"></span></p>
<p>1. Download FLIR from <a href="http://facelift.mawhorter.net/" target="_blank">FLIR homepage</a>. I was using latest 1.2 stable for this article because of simplicity, but if you try you&#8217;ll find out that 2.0 beta also works great but requires little more configuration.</p>
<p>2. Unpack FLIR content (cache,fonts,etc.) inside skin/frontend/default/default/facelift<br />
I think it makes perfect sense to put it into skin folder.</p>
<p>3. Open app/design/frontend/yourpackage/yourtheme/template/page/html/head.phtml and append</p>
<p>&lt;script language=&#8221;javascript&#8221; src=&#8221;&lt;?php echo $this-&gt;getSkinUrl(&#8217;facelift/flir.js&#8217;) ?&gt;&#8221;&gt;&lt;/script&gt;</p>
<p>&lt;script type=&#8221;text/javascript&#8221;&gt;<br />
document.observe(&#8221;dom:loaded&#8221;, function() {<br />
FLIR.init({ path: &#8216;&lt;?php echo $this-&gt;getSkinUrl(&#8217;facelift/&#8217;) ?&gt;&#8217; }, new FLIRStyle({ mode: &#8216;wrap&#8217; }) );<br />
FLIR.auto();<br />
});<br />
&lt;/script&gt;</p>
<p>If your php error reporting isn&#8217;t disabled add error_reporting(0); somewhere on top of config-flir.php. This is main config file from which you can define options and custom fonts, so examine it.</p>
<p>Refresh your Magento store and you <a href="http://inchoo.net/wp-content/uploads/2009/06/magento-flir-screenshot.jpg" target="_blank">should see the result</a>.</p>
<p>flir.js can also be alternatively included from layout files inside head block<br />
&lt;reference name=&#8221;head&#8221;&gt;<br />
&lt;action method=&#8221;addItem&#8221;&gt;&lt;type&gt;skin_js&lt;/type&gt;&lt;name&gt;facelift/flir.js&lt;/name&gt;&lt;/action&gt;<br />
&lt;/reference&gt;</p>
<p>There is nice <a href="http://facelift.mawhorter.net/quick-start/" target="_blank">Quick Start Guide</a> and <a href="http://docs.facelift.mawhorter.net/" target="_blank">Documentation</a> available from <a href="http://facelift.mawhorter.net/" target="_blank">FLIR homepage</a>, so i won&#8217;t go in details on some advanced FLIR settings, but here are few examples:</p>
<p>//pass selectors as comma separated list<br />
FLIR.auto(&#8217;h5,h4&#8242;);<br />
//pass an array of selectors<br />
FLIR.auto( [ 'h4', 'h5' ] );<br />
//replace manually with custom options<br />
FLIR.replace( &#8216;div.box h4&#8242; , new FLIRStyle({ mode: &#8216;wrap&#8217; , css: {&#8217;font-family&#8217;:'arial&#8217;} }) );<br />
//prototype way<br />
$$(&#8217;div.box h4&#8242;).each( function(el) { FLIR.replace(el);  } );</p>
<p>Cya.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Inchoo?a=qHzWCbFuYQg:IkQZ-jkf0_Y:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=qHzWCbFuYQg:IkQZ-jkf0_Y:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=qHzWCbFuYQg:IkQZ-jkf0_Y:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=qHzWCbFuYQg:IkQZ-jkf0_Y:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=qHzWCbFuYQg:IkQZ-jkf0_Y:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=qHzWCbFuYQg:IkQZ-jkf0_Y:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=qHzWCbFuYQg:IkQZ-jkf0_Y:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=qHzWCbFuYQg:IkQZ-jkf0_Y:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Inchoo/~4/qHzWCbFuYQg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://inchoo.net/ecommerce/magento/magento-flir/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://inchoo.net/ecommerce/magento/magento-flir/</feedburner:origLink></item>
		<item>
		<title>How to save UIImage into iPhone’s saved photos album?</title>
		<link>http://feedproxy.google.com/~r/Inchoo/~3/iSnJJX8dNcI/</link>
		<comments>http://inchoo.net/iphone-development/how-to-save-uiimage-into-iphones-saved-photos-album/#comments</comments>
		<pubDate>Tue, 30 Jun 2009 11:41:25 +0000</pubDate>
		<dc:creator>Ivan Kalaica</dc:creator>
				<category><![CDATA[iPhone development]]></category>
		<category><![CDATA[image]]></category>
		<category><![CDATA[iphone]]></category>

		<guid isPermaLink="false">http://inchoo.net/?p=2456</guid>
		<description><![CDATA[This is quite simple, infact it is one row code like everything else in iPhone development. Well, not everything is &#8220;quite&#8221; simple as this but most of stuff is &#8220;quite&#8221; easy to implement. Enough with &#8220;quite&#8221; ! Here is really simple code;
UIImage *myImage = [UIImage imageNamed:@&#34;me.png&#34;];

UIImageWriteToSavedPhotosAlbum(myImage, self, @selector(image:didFinishSavingWithError:contextInfo:), nil);

// And if you wish add this [...]]]></description>
			<content:encoded><![CDATA[<p>This is quite simple, infact it is one row code like everything else in iPhone development. Well, not everything is &#8220;quite&#8221; simple as this but most of stuff is &#8220;quite&#8221; easy to implement. Enough with &#8220;quite&#8221; ! Here is really simple code;<span id="more-2456"></span></p>
<pre class="brush: c">UIImage *myImage = [UIImage imageNamed:@&quot;me.png&quot;];

UIImageWriteToSavedPhotosAlbum(myImage, self, @selector(image:didFinishSavingWithError:contextInfo:), nil);

// And if you wish add this selector method in code;

- (void) image:(UIImage*)image didFinishSavingWithError:(NSError *)error contextInfo:(NSDictionary*)info;</pre>
<p>That&#8217;s all you have to add! Quite simple, is it? <img src='http://inchoo.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Inchoo?a=iSnJJX8dNcI:zfqY4N9FKeE:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=iSnJJX8dNcI:zfqY4N9FKeE:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=iSnJJX8dNcI:zfqY4N9FKeE:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=iSnJJX8dNcI:zfqY4N9FKeE:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=iSnJJX8dNcI:zfqY4N9FKeE:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=iSnJJX8dNcI:zfqY4N9FKeE:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=iSnJJX8dNcI:zfqY4N9FKeE:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=iSnJJX8dNcI:zfqY4N9FKeE:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Inchoo/~4/iSnJJX8dNcI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://inchoo.net/iphone-development/how-to-save-uiimage-into-iphones-saved-photos-album/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://inchoo.net/iphone-development/how-to-save-uiimage-into-iphones-saved-photos-album/</feedburner:origLink></item>
		<item>
		<title>Firefox 3.5 – Improvements breakdown</title>
		<link>http://feedproxy.google.com/~r/Inchoo/~3/V4eVSSkg0Fg/</link>
		<comments>http://inchoo.net/tools/firefox-3-5-improvements-breakdown/#comments</comments>
		<pubDate>Tue, 30 Jun 2009 10:23:35 +0000</pubDate>
		<dc:creator>Željko Prša</dc:creator>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[firefox]]></category>

		<guid isPermaLink="false">http://inchoo.net/?p=2439</guid>
		<description><![CDATA[Firefox 3.5 is about to be released today so it&#8217;s nice to know what it will bring to the market as a &#8220;Browser for the next Web&#8221;. There are some actual screenshots and attempts in humoresque writing in this unbelievably great written article  . It&#8217;s informative too&#8230;

Performance:
As expected this is the fastest, most powerful [...]]]></description>
			<content:encoded><![CDATA[<p>Firefox 3.5 is about to be released today so it&#8217;s nice to know what it will bring to the market as a &#8220;Browser for the next Web&#8221;. There are some actual screenshots and attempts in humoresque writing in this unbelievably great written article <img src='http://inchoo.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . It&#8217;s informative too&#8230;</p>
<p><span id="more-2439"></span></p>
<h3>Performance:</h3>
<p>As expected this is the fastest, most powerful and secure Firefox ever&#8230; For the next version of the web.</p>
<ol>
<li><strong>Faster rendering</strong>:
<p>Both static and dynamic pages are loaded noticeably faster. Javascript performance has also been improved thanks to <a title="TraceMonkey Wikipedia" href="https://wiki.mozilla.org/JavaScript:TraceMonkey">TraceMonkey</a> and Gecko layout engine (including speculative parsing for faster content rendering) .</p>
</li>
<li><strong>JSON and Web worker threads:</strong></li>
<p>Native JSON support enhances security, speed and by default demands less code to write;)<br />
<a href="http://blog.mozilla.com/webdev/2009/02/12/native-json-in-firefox-31/">Check the it here.</a></p>
<li><strong>Support for new technologies:</strong></li>
<p>Ahhh the HTML 5. Firefox has it&#8217;s paws on the HTML 5 already with the &lt;<a href="http://www.w3schools.com/tags/html5_video.asp">video</a>&gt; and &lt;<a href="http://www.w3schools.com/tags/html5_audio.asp">audio</a>&gt; elements; Downloadable fonts and more new CSS properties, JS query selectors. Improvement in <a href="https://developer.mozilla.org/en/HTTP_access_control">networking</a> with cross-site access controls for HTTP requests; Improvements in <a href="https://developer.mozilla.org/en/New_in_JavaScript_1.8.1">JavaScript 1.8.1</a>;</p>
<li><strong>Add-ons:</strong>One thing that&#8217;s often neglected when talking about the Firefox performance have also been improved and gained a speed boost. Now it&#8217;s up to the add-on developers to prepare their updates. Firebug is already updating thru the steady stream of betas <img src='http://inchoo.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </li>
<li><strong>Private browsing mode</strong>:A feature most wanted when you don&#8217;t want to leave traces of the sites and pages you&#8217;ve been visiting.<img style="border: 0px initial initial;" src="http://inchoo.net/wp-content/uploads/2009/06/ff3-5-private-browsing.png" border="0" alt="ff3-5-private-browsing.png" width="485" height="421" /></li>
<li><strong>Location-aware browsing</strong>:Setting up your browser by your current Geo location allows you to <a href="http://www.mozilla.com/en-US/firefox/geolocation/">get</a> more &#8220;local&#8221; related results. Thankfully this feature is totally optional. <a href="http://www.mozilla.com/en-US/firefox/geolocation/%23geo-demo">Try it</a> at their site.
<p><img src="http://inchoo.net/wp-content/uploads/2009/06/location-aware-browsing-confirm.png" border="0" alt="location-aware-browsing-confirm.png" width="374" height="33" /></p>
<p><img style="border: 0px initial initial;" src="http://inchoo.net/wp-content/uploads/2009/06/location-aware-browsing.png" border="0" alt="location-aware-browsing.png" width="465" height="359" /><img style="border: 0px initial initial;" src="http://inchoo.net/wp-content/uploads/2009/06/location-aware-browsing-located.png" border="0" alt="location-aware-browsing-located.png" width="454" height="368" /></li>
<li><strong>Video downloading</strong>:
<p>This should be great for everyone that now use one of many add-ons for video download if the likes of YouTube provide support for that feature.</p>
</li>
<li><strong>Reopening recently closed windows and tabs</strong>:
<p>Although this feature is way familiar to the Safari users (like many new features in the new FF 3.5) it will be of great help for everyone closing that tab by accident. Found in the &#8220;History&#8221; menu.</p>
</li>
<li><strong>Customizable skins</strong>:
<p>Now, this feature is definitely a not-must-have but a great asset to the marketing potential for the browser if only there was one theme usable enough <img src='http://inchoo.net/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> . If you would like to skin your Fox do it here: <a href="http://www.getpersonas.com/">Get personas</a>.</p>
</li>
</ol>
<h3>Visual:</h3>
<p>Firefox icon has also changed, the fox is more furry and the globe is noticeable shinier:</p>
<p><strong>Firefox 3.0</strong>:</p>
<p><img src="http://inchoo.net/wp-content/uploads/2009/06/firefox.jpg" border="0" alt="firefox.jpg" width="128" height="128" /></p>
<p><strong>Firefox 3.5</strong></p>
<p><img src="http://inchoo.net/wp-content/uploads/2009/06/firefox3-5.jpg" border="0" alt="firefox3-5.jpg" width="128" height="128" /></p>
<p><em>Note:</em></p>
<p>Since at the time of writing this article Firefox 3.5 hasn&#8217;t been released yet the furrier Fox could mean that it&#8217;s not been combed yet, also <img src='http://inchoo.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>For the actual browser&#8217;s look and feel everything is pretty much the same although I could swear that they made the toolbars a bit more &#8220;tighter&#8221; looking and the new tab button is here just calling you to click on it and have another tab open:)</p>
<p>Those were the features I&#8217;ve considered to be most valuable for this release.</p>
<p>To summarize, Firefox 3.5 is now almost twice as fast, prepared for the HTML 5, has better networking, native JSON and Web worker threads, has private browsing mode and can locate you in a pretty much small radius <img src='http://inchoo.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> . Oh, yeah, actual screenshots based on the Mac version of the &#8216;Fox.</p>
<p>If you haven&#8217;t already <a href="http://www.mozilla.com/en-US/firefox/all-beta.html">get it while it&#8217;s hot</a>.</p>
<p>Thanks for reading.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Inchoo?a=V4eVSSkg0Fg:IAXVDxcYhec:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=V4eVSSkg0Fg:IAXVDxcYhec:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=V4eVSSkg0Fg:IAXVDxcYhec:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=V4eVSSkg0Fg:IAXVDxcYhec:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=V4eVSSkg0Fg:IAXVDxcYhec:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=V4eVSSkg0Fg:IAXVDxcYhec:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=V4eVSSkg0Fg:IAXVDxcYhec:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=V4eVSSkg0Fg:IAXVDxcYhec:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Inchoo/~4/V4eVSSkg0Fg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://inchoo.net/tools/firefox-3-5-improvements-breakdown/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://inchoo.net/tools/firefox-3-5-improvements-breakdown/</feedburner:origLink></item>
		<item>
		<title>What’s up with web developers and coffee?</title>
		<link>http://feedproxy.google.com/~r/Inchoo/~3/3Vdyci-mGIo/</link>
		<comments>http://inchoo.net/fun-zone/whats-up-with-web-developers-and-coffee/#comments</comments>
		<pubDate>Mon, 29 Jun 2009 10:29:13 +0000</pubDate>
		<dc:creator>Toni Anicic</dc:creator>
				<category><![CDATA[Fun]]></category>
		<category><![CDATA[development]]></category>

		<guid isPermaLink="false">http://inchoo.net/?p=2428</guid>
		<description><![CDATA[If you are a web developer or have had an honor to work with one of these creatures, you probably noticed their strange addiction to coffee. Developers surrounding me start their day by drinking the morning coffee before the working hours start, then, at the beginning of their working day they make one in the [...]]]></description>
			<content:encoded><![CDATA[<p>If you are a web developer or have had an honor to work with one of these creatures, you probably noticed their strange addiction to coffee. Developers surrounding me start their day by drinking the morning coffee before the working hours start, then, at the beginning of their working day they make one in the office. They drink numerous cups of coffee during the working day, and when they go out for a break they order&#8230; guess what&#8230; coffee.<span id="more-2428"></span></p>
<p><img class="aligncenter size-full wp-image-2429" title="Web Developer Drinking Coffee" src="http://inchoo.net/wp-content/uploads/2009/06/zeljko-prsa-drinking-coffee.jpg" alt="Web Developer Drinking Coffee" width="600" height="450" /></p>
<p>Where does this urge for coffee originate from? What lies behind the infinite lines of Magento code that makes our developers overdose themselves with this dark liquid?</p>
<p>The need for coffee probably predates their employment in this company. It probably originates from the time they use to be freelancers, often having to pull-the-all-nighters. In such a environment, coffee is not an option, it&#8217;s a requirement, a tool that makes the job possible. Over time, developers probably developed some sort of addiction to coffee.</p>
<p>I once saw a great line, so I&#8217;ll quote it:</p>
<blockquote><p>A web developer is an organism that turns coffee into lines of code.</p></blockquote>
<p><strong>Why do you drink so much coffee? What kind of coffee do you prefer?</strong></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Inchoo?a=3Vdyci-mGIo:hObGnLTuDYg:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=3Vdyci-mGIo:hObGnLTuDYg:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=3Vdyci-mGIo:hObGnLTuDYg:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=3Vdyci-mGIo:hObGnLTuDYg:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=3Vdyci-mGIo:hObGnLTuDYg:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=3Vdyci-mGIo:hObGnLTuDYg:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=3Vdyci-mGIo:hObGnLTuDYg:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=3Vdyci-mGIo:hObGnLTuDYg:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Inchoo/~4/3Vdyci-mGIo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://inchoo.net/fun-zone/whats-up-with-web-developers-and-coffee/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		<feedburner:origLink>http://inchoo.net/fun-zone/whats-up-with-web-developers-and-coffee/</feedburner:origLink></item>
		<item>
		<title>Manage your contacts effectively – where have all my post-its gone?</title>
		<link>http://feedproxy.google.com/~r/Inchoo/~3/XoOpUvaR1ug/</link>
		<comments>http://inchoo.net/tools/manage-your-contacts-effectively-highrise/#comments</comments>
		<pubDate>Mon, 29 Jun 2009 06:52:20 +0000</pubDate>
		<dc:creator>Aron Stanic</dc:creator>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[administration]]></category>
		<category><![CDATA[crm]]></category>
		<category><![CDATA[management]]></category>

		<guid isPermaLink="false">http://inchoo.net/?p=2414</guid>
		<description><![CDATA[Anyone who&#8217;s ever worked on any kind of Customer Relationship Management (CRM) task – and, to be honest, that pretty much describes everyone reading this – knows it can be quite a hassle managing all the contacts, deals, callbacks, quotes and whatnots of client communication.
How many times have you scribbled some important note on the [...]]]></description>
			<content:encoded><![CDATA[<p>Anyone who&#8217;s ever worked on any kind of Customer Relationship Management (CRM) task – and, to be honest, that pretty much describes everyone reading this – knows it can be quite a hassle managing all the contacts, deals, callbacks, quotes and whatnots of client communication.</p>
<p>How many times have you scribbled some important note on the closest post-it you could find only to lose sight of it the very next day (or minute, for that matter)? Please raise your hand if you&#8217;ve at least once missed out on that follow-up email to a prospect weeks after sending your quote? It looks like we&#8217;re voting on something, right? Well, not any more.</p>
<p><span id="more-2414"></span>Since I joined the team, I&#8217;ve had the privilege to use <a href="http://highrisehq.com/">Highrise</a> – a great contact management tool from <a href="http://www.37signals.com/">37signals</a> which helps me keep track of the entire client communication process with ease. Let&#8217;s say I&#8217;ve just received an email inquiry from a new prospect. When sending a response, I can instantly Bcc the email to my Highrise dropbox making the communication transparent and easily trackable for myself and, most importantly, for the rest of the team as well.</p>
<p>I&#8217;m able to upload and/or import basic contact information about the new client together with her/his picture (sometimes being good with the names simply doesn&#8217;t cut it), corporate information, other notes and – yes – even feed the profile with their <a href="http://twitter.com/inchoo">Twitter updates</a> so I can see what the client is up to in real time.</p>
<p><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="437" height="391" id="viddler"><param name="movie" value="http://www.viddler.com/simple_on_site/ac3324ab" /><param name="allowScriptAccess" value="always" /><param name="allowFullScreen" value="true" /><embed src="http://www.viddler.com/simple_on_site/ac3324ab" width="437" height="391" type="application/x-shockwave-flash" allowScriptAccess="always" allowFullScreen="true" name="viddler" ></embed></object></p>
<p>While some of these features can strike you as purely cosmetic, there are others that really stand out. I can create task lists for each contact (making sure I don&#8217;t forget sending that quote or a follow-up email), add pending and any previous deals to them and tag them accordingly.</p>
<p>It happened a couple of times that I&#8217;d make a follow-up on a prospect who needed some small Magento tweak a month ago and decided to go with another developer. He had experienced some problems and was very much relieved to hear back from us and ask for our help with a larger deal that we would then land. Who knows if I&#8217;d have remembered to make that follow-up had I not created a task two months ago.</p>
<p>Highrise will send out reminders to your email address with daily tasklist and it will let you know without hesitation once some of your tasks are overdue. There&#8217;s also a whole bunch of <a href="http://highrisehq.com/extras">extras and add-ons</a> available so you can really tailor it to your needs.</p>
<p>Of course, there&#8217;s no tool in the world that would do everything for you (well, not yet, unfortunately), I still need to set my own tasks, make the callbacks and send out those quotes. However, now it&#8217;s all safely in one place and for everyone in my team to see and, if need be, jump in and follow up easily if I&#8217;m unavailable.</p>
<p>Plus, it&#8217;s environmentally friendly, no more post-its for me so I&#8217;ve saved a couple of trees in the process. <img src='http://inchoo.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Inchoo?a=XoOpUvaR1ug:IoGCV1O9T-k:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=XoOpUvaR1ug:IoGCV1O9T-k:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=XoOpUvaR1ug:IoGCV1O9T-k:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=XoOpUvaR1ug:IoGCV1O9T-k:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=XoOpUvaR1ug:IoGCV1O9T-k:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=XoOpUvaR1ug:IoGCV1O9T-k:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=XoOpUvaR1ug:IoGCV1O9T-k:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=XoOpUvaR1ug:IoGCV1O9T-k:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Inchoo/~4/XoOpUvaR1ug" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://inchoo.net/tools/manage-your-contacts-effectively-highrise/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://inchoo.net/tools/manage-your-contacts-effectively-highrise/</feedburner:origLink></item>
		<item>
		<title>Playing Real Time Strategy vs. Running an Online Store</title>
		<link>http://feedproxy.google.com/~r/Inchoo/~3/i1FSL_nAlV8/</link>
		<comments>http://inchoo.net/ecommerce/playing-real-time-strategy-vs-running-an-online-store/#comments</comments>
		<pubDate>Fri, 26 Jun 2009 21:01:22 +0000</pubDate>
		<dc:creator>Tomislav Bilic</dc:creator>
				<category><![CDATA[E-Commerce]]></category>
		<category><![CDATA[Fun]]></category>
		<category><![CDATA[Online Marketing]]></category>
		<category><![CDATA[store]]></category>

		<guid isPermaLink="false">http://inchoo.net/?p=2386</guid>
		<description><![CDATA[You know those games when you start with something small and then you conquer the world? You begin with some small HQ and a harvester. Collecting resources and constructing some production buildings become first objective. Suddenly, while you watch your harvester how slowly gathers spice, an enemy shows up. The game gets a new dimension. [...]]]></description>
			<content:encoded><![CDATA[<p>You know those games when you start with something small and then you conquer the world? You begin with some small HQ and a harvester. Collecting resources and constructing some production buildings become first objective. Suddenly, while you watch your harvester how slowly gathers spice, an enemy shows up. The game gets a new dimension. You have to fight with a competition.<br />
<span id="more-2386"></span><br />
In those games every mission is harder than previous. You face more difficult challenges, start with less resources while the competition starts with more. Before the major attacks, you save a game and reload in case you loose. At the end, after you conquer everybody, you feel proud of yourself. Of course, it doesn&#8217;t matter how many battles you lost and how many times you reloaded the game. At the end, you win.</p>
<p>There is a similarity between entrepreneur online store owner and strategy game player, but with some differences.</p>
<p><strong>Online Store Owner:</strong></p>
<ul>
<li>has no Save/Load option</li>
<li>takes much greater risk</li>
<li>will not conquer the world</li>
</ul>
<p>The rest is similar. You have to know how to use your resources, how to expand and how to fight. Experienced games will tell that most of the games are won at the start. With a good start, later battles turn to be much easier.</p>
<p>There was one client I worked with in the past in <a title="CRE Loaded" href="http://www.creloaded.com/">CRE Loaded</a> days. He was starting his eCommerce enterprise, had a good products and was searching for development team. First meeting was great when he presented his business idea. After development started, it was obvious that the client did not want to listen no one but himself. He wanted totally non-standard navigation because &#8220;it was very important for his business&#8221;, unique shopping basket interface because &#8220;it was very important for his business&#8221;, unique checkout process because &#8220;it was very important for his business&#8221;.</p>
<p>After few months of agony and constand suggestions from our side not to rape things that shouldn&#8217;t be raped, the store was launced.</p>
<p>He was shocked how little visitors he attracted and struggled to get 1-2 weekly purchases. The ambition was much higher. This store owner did not put his energy to think about his products and visitors. He put all his energy to think of the ways how to make his online store behave differently.</p>
<p>Online store owners, start with something simple. Online store functionality will not boost your income of other components of marketing mix are not good.</p>
<p>As Branko said in one post, &#8220;<a title="Tips for Online Store Owners" href="/ecommerce/magento/magento-site-owners-get-serious-focus-on-what-matters-the-most/">Get serious, focus on what matters the most</a>&#8220;.</p>
<p><object width="500" height="405"><param name="movie" value="http://www.youtube.com/v/RR9Q4Nfe1Vo&#038;hl=en&#038;fs=1&#038;rel=0&#038;color1=0x234900&#038;color2=0x4e9e00&#038;border=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/RR9Q4Nfe1Vo&#038;hl=en&#038;fs=1&#038;rel=0&#038;color1=0x234900&#038;color2=0x4e9e00&#038;border=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="500" height="405"></embed></object></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Inchoo?a=i1FSL_nAlV8:TR60QJ1DQf8:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=i1FSL_nAlV8:TR60QJ1DQf8:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=i1FSL_nAlV8:TR60QJ1DQf8:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=i1FSL_nAlV8:TR60QJ1DQf8:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=i1FSL_nAlV8:TR60QJ1DQf8:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=i1FSL_nAlV8:TR60QJ1DQf8:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=i1FSL_nAlV8:TR60QJ1DQf8:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=i1FSL_nAlV8:TR60QJ1DQf8:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Inchoo/~4/i1FSL_nAlV8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://inchoo.net/ecommerce/playing-real-time-strategy-vs-running-an-online-store/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://inchoo.net/ecommerce/playing-real-time-strategy-vs-running-an-online-store/</feedburner:origLink></item>
		<item>
		<title>Magento product image switcher</title>
		<link>http://feedproxy.google.com/~r/Inchoo/~3/xuKlGfhGh9s/</link>
		<comments>http://inchoo.net/ecommerce/magento/magento-product-images-switcher/#comments</comments>
		<pubDate>Tue, 16 Jun 2009 22:40:01 +0000</pubDate>
		<dc:creator>Ivan Weiler</dc:creator>
				<category><![CDATA[Magento]]></category>
		<category><![CDATA[image]]></category>
		<category><![CDATA[product]]></category>

		<guid isPermaLink="false">http://inchoo.net/?p=2329</guid>
		<description><![CDATA[I just wrote small javascript animation example for product images and thought someone may find it useful. It&#8217;s a fast way to replace default zoom functionality for the ones that don&#8217;t like it.
I&#8217;m actually trying to merge something like this with default zoom, but i&#8217;m not finished yet. Anyway, i left all javascript and styling [...]]]></description>
			<content:encoded><![CDATA[<p>I just wrote small javascript animation example for product images and thought someone may find it useful. It&#8217;s a fast way to replace default zoom functionality for the ones that don&#8217;t like it.</p>
<p><span id="more-2329"></span>I&#8217;m actually trying to merge something like this with default zoom, but i&#8217;m not finished yet. Anyway, i left all javascript and styling in media.phtml file, so just download the file</p>
<p><a href="http://inchoo.net/wp-content/uploads/2009/06/media_phtml.rar" target="blank">media.phtml.rar</a></p>
<p>and replace it with your own at<br />
app/design/frontend/default/yourtheme/template/catalog/product/view/media.phtml</p>
<p><img src="http://inchoo.net/wp-content/uploads/2009/06/magento-slideshow2.jpg" alt="" /></p>
<p>It was made with default Magento theme. Enjoy.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Inchoo?a=xuKlGfhGh9s:0SvrFO_xjHY:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=xuKlGfhGh9s:0SvrFO_xjHY:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=xuKlGfhGh9s:0SvrFO_xjHY:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=xuKlGfhGh9s:0SvrFO_xjHY:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=xuKlGfhGh9s:0SvrFO_xjHY:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=xuKlGfhGh9s:0SvrFO_xjHY:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=xuKlGfhGh9s:0SvrFO_xjHY:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=xuKlGfhGh9s:0SvrFO_xjHY:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Inchoo/~4/xuKlGfhGh9s" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://inchoo.net/ecommerce/magento/magento-product-images-switcher/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		<feedburner:origLink>http://inchoo.net/ecommerce/magento/magento-product-images-switcher/</feedburner:origLink></item>
		<item>
		<title>How to override UIWebView links request action with your own custom method</title>
		<link>http://feedproxy.google.com/~r/Inchoo/~3/LmRGlgz0lL0/</link>
		<comments>http://inchoo.net/iphone-development/how-to-override-uiwebview-links-request-action-with-your-own-custom-method/#comments</comments>
		<pubDate>Mon, 15 Jun 2009 11:55:54 +0000</pubDate>
		<dc:creator>Ivan Kalaica</dc:creator>
				<category><![CDATA[iPhone development]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[method]]></category>

		<guid isPermaLink="false">http://inchoo.net/?p=2302</guid>
		<description><![CDATA[If you did not understand from the post title what I am trying to say, here is another explanation. If you have an instance of UIWebView class implemented in your view and you want to call one of your custom method when user clicks on link in that UIWebView instance, first thing you must do [...]]]></description>
			<content:encoded><![CDATA[<p>If you did not understand from the post title what I am trying to say, here is another explanation. If you have an instance of UIWebView class implemented in your view and you want to call one of your custom method when user clicks on link in that <span id="more-2302"></span>UIWebView instance, first thing you must do to achieve that is set the delegate of that UIWebView class instance on you instance of UIViewController class. This is almost in same time last thing. Now just copy&amp;paste this code into your class that implements UIWebView instance and add call to your method.</p>
<pre class="brush: c">- (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType {

if(navigationType == UIWebViewNavigationTypeLinkClicked) {

if (overrideLinksSwitch.on == TRUE) {

[self myMethodAction];

[myWebView stopLoading];

return YES;
}

else {
return YES;
}
}

return YES;
}</pre>
<p>You can download example app <a href="http://inchoo.net/wp-content/uploads/2009/06/WebViewLink.zip">here</a>.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Inchoo?a=LmRGlgz0lL0:YisRPdni2GU:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=LmRGlgz0lL0:YisRPdni2GU:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=LmRGlgz0lL0:YisRPdni2GU:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=LmRGlgz0lL0:YisRPdni2GU:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=LmRGlgz0lL0:YisRPdni2GU:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=LmRGlgz0lL0:YisRPdni2GU:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=LmRGlgz0lL0:YisRPdni2GU:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=LmRGlgz0lL0:YisRPdni2GU:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Inchoo/~4/LmRGlgz0lL0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://inchoo.net/iphone-development/how-to-override-uiwebview-links-request-action-with-your-own-custom-method/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://inchoo.net/iphone-development/how-to-override-uiwebview-links-request-action-with-your-own-custom-method/</feedburner:origLink></item>
		<item>
		<title>amfPoint – Make your Products Rock</title>
		<link>http://feedproxy.google.com/~r/Inchoo/~3/uLuF6OB0hkw/</link>
		<comments>http://inchoo.net/ecommerce/magento/amfpoint-make-your-products-rock/#comments</comments>
		<pubDate>Fri, 12 Jun 2009 13:08:54 +0000</pubDate>
		<dc:creator>Tomislav Bilic</dc:creator>
				<category><![CDATA[Magento]]></category>
		<category><![CDATA[AMF]]></category>

		<guid isPermaLink="false">http://inchoo.net/?p=2286</guid>
		<description><![CDATA[Something is happening. People from small town in Croatia called Osijek are concerned about Branko Ajzele. They say that he is spending too much time in front of the computer writing some code. We tried to call him many times from the office but got no reply. After a discussion we drew straws to decide [...]]]></description>
			<content:encoded><![CDATA[<p>Something is happening. People from small town in Croatia called <a title="Osijek, Croatia" rel="nofollow" href="http://en.wikipedia.org/wiki/Osijek">Osijek</a> are concerned about Branko Ajzele. They say that he is spending too much time in front of the computer writing some code. We tried to call him many times from the office but got no reply. After a discussion we drew straws to decide who will go to his place to check his condition. When I came to his place and knocked, at first there was an absolute silence. I knocked again&#8230;</p>
<p><span id="more-2286"></span><img class="size-full wp-image-2288 alignright" title="Branko Opened the Door" src="http://inchoo.net/wp-content/uploads/2009/06/branko.jpg" alt="Branko Opened the Door" width="200" height="234" />After two attempts, Branko opened the door. First thing I noticed was a Magento circle on his forehead and a red eyes.  Branko didn&#8217;t sleep for a very long time.</p>
<p>&#8220;<em>Branko, are you ok?</em>&#8220;, I asked.</p>
<p>&#8220;<em>Yes, Why? What&#8217;s going on? What date it is?</em>&#8221;</p>
<p>You could feel the smell of burning plastic in the air. It was obvious that computer was turned on for a long time.  I glanced in the room and I could see the monitor with Magento colored light and some animations on it.</p>
<p>&#8220;What are you working on man?&#8221;</p>
<p>He just stared for a couple of seconds which seemed like an eternity and than he finally spoke&#8230;</p>
<p><strong><em>&#8230; To be Continued &#8230;</em></strong></p>
<p><a title="amfPoint" href="http://amfpoint.com" target="_blank">http://amfpoint.com</a></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Inchoo?a=uLuF6OB0hkw:CSMeB1EvAgY:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=uLuF6OB0hkw:CSMeB1EvAgY:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=uLuF6OB0hkw:CSMeB1EvAgY:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=uLuF6OB0hkw:CSMeB1EvAgY:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=uLuF6OB0hkw:CSMeB1EvAgY:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=uLuF6OB0hkw:CSMeB1EvAgY:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=uLuF6OB0hkw:CSMeB1EvAgY:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=uLuF6OB0hkw:CSMeB1EvAgY:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Inchoo/~4/uLuF6OB0hkw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://inchoo.net/ecommerce/magento/amfpoint-make-your-products-rock/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		<feedburner:origLink>http://inchoo.net/ecommerce/magento/amfpoint-make-your-products-rock/</feedburner:origLink></item>
		<item>
		<title>Programatically create Magento blocks and inject them into layout</title>
		<link>http://feedproxy.google.com/~r/Inchoo/~3/xpm3NjY3om4/</link>
		<comments>http://inchoo.net/ecommerce/magento/programatically-create-magento-blocks-and-inject-them-into-layout/#comments</comments>
		<pubDate>Fri, 12 Jun 2009 13:00:36 +0000</pubDate>
		<dc:creator>Branko Ajzele</dc:creator>
				<category><![CDATA[Magento]]></category>
		<category><![CDATA[block]]></category>
		<category><![CDATA[layout]]></category>

		<guid isPermaLink="false">http://inchoo.net/?p=2292</guid>
		<description><![CDATA[Imagine a scenario where you wish to simply create a view file like custom-note.phtml and show this view file on some new url inside the Magento store. One way to do this is to create a CMS page and call that block from within CMS page. But what if you wish to create and append [...]]]></description>
			<content:encoded><![CDATA[<p>Imagine a scenario where you wish to simply create a view file like custom-note.phtml and show this view file on some new url inside the Magento store. One way to do this is to create a CMS page and call that block from within CMS page. But what if you wish to create and append this block to other areas of Magento layout that are inaccessible from CMS page interface form admin? What if I want to add new div element under the breadcrumbs and append new block under it?<span id="more-2292"></span></p>
<p>magento philosophy is to create block class under the /Block folder of your module, to create xml layout file under the theme /layouts folder (or to modify existing layout file) and so on. Anyway you turn it around you either need to have Block file or add/modify at least the entry to the layout files.</p>
<p>All this is OK if you are working on your own store so you have full control over the code. However, what if you are developing a module that will be used on different Magento stores. My prime concern when building a module is to keep the number of necessary module files to a minimum.</p>
<p>In code below, you will see how easy it is to call your Core/Template block to show on any area of Magento layout.</p>
<p>Extracted from app/code/local/ActiveCodeline/CustomOutputs/controllers/IndexController.php file.</p>
<pre class="brush: php">
public function indexAction()
{
//Get current layout state
$this-&gt;loadLayout();

$block = $this-&gt;getLayout()-&gt;createBlock(
&#039;Mage_Core_Block_Template&#039;,
&#039;my_block_name_here&#039;,
array(&#039;template&#039; =&gt; &#039;activecodeline/developer.phtml&#039;)
);

$this-&gt;getLayout()-&gt;getBlock(&#039;content&#039;)-&gt;append($block);

//Release layout stream... lol... sounds fancy
$this-&gt;renderLayout();
}
</pre>
<p>Most IMPORTANT thing to keep in mind here is the &#8220;error handling&#8221;. If you assign a &#8220;invalid&#8221; block to -&gt;append(), you will not (most likely) see an error but &#8220;nothing happend&#8221; situation.</p>
<p>Anyhow&#8230; hope the attached module (extension) will save you some headaches. I know it took me few hours of tracing and testing to get the grip of it.</p>
<p>Download <a href="http://inchoo.net/wp-content/uploads/2009/06/ActiveCodeline_CustomOutputs.zip">ActiveCodeline_CustomOutputs</a> extension.</p>
<p>Cheers.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Inchoo?a=xpm3NjY3om4:agdqSZPyDUM:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=xpm3NjY3om4:agdqSZPyDUM:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=xpm3NjY3om4:agdqSZPyDUM:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=xpm3NjY3om4:agdqSZPyDUM:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=xpm3NjY3om4:agdqSZPyDUM:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=xpm3NjY3om4:agdqSZPyDUM:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=xpm3NjY3om4:agdqSZPyDUM:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=xpm3NjY3om4:agdqSZPyDUM:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Inchoo/~4/xpm3NjY3om4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://inchoo.net/ecommerce/magento/programatically-create-magento-blocks-and-inject-them-into-layout/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://inchoo.net/ecommerce/magento/programatically-create-magento-blocks-and-inject-them-into-layout/</feedburner:origLink></item>
		<item>
		<title>SEO for Bing</title>
		<link>http://feedproxy.google.com/~r/Inchoo/~3/7uoRymDYHWQ/</link>
		<comments>http://inchoo.net/online-marketing/seo-for-bing/#comments</comments>
		<pubDate>Fri, 12 Jun 2009 09:00:30 +0000</pubDate>
		<dc:creator>Toni Anicic</dc:creator>
				<category><![CDATA[Online Marketing]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[seo]]></category>

		<guid isPermaLink="false">http://inchoo.net/?p=2279</guid>
		<description><![CDATA[As the new search engine rolled out, went through the initial hype period and survived it taking a significant amount of search industry share, questions about bing SEO started to rise.
About bing:

As a major search engine, bing respects most of the rules we&#8217;re already used to following when optimizing for other major search engines (Google [...]]]></description>
			<content:encoded><![CDATA[<p>As the new search engine rolled out, went through the initial hype period and survived it taking a significant amount of search industry share, questions about bing SEO started to rise.<span id="more-2279"></span></p>
<h2>About bing:</h2>
<p><object width="620" height="365"><param name="movie" value="http://www.youtube.com/v/TnPR5jmyV0k&#038;hl=en&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/TnPR5jmyV0k&#038;hl=en&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="620" height="365"></embed></object><br />
As a major search engine, <a title="Bing" href="http://bing.com">bing</a> respects most of the rules we&#8217;re already used to following when optimizing for other major search engines (Google &amp; Yahoo!). However, there are significant differences in search results and it&#8217;s plain easy to see that algorithms of <a title="Google" href="http://google.com">Google</a> and bing differ a lot.</p>
<p>I have took new <a title="Microsoft" href="http://microsoft.com">Microsoft</a>&#8217;s search engine on a intensive test run and have it set-up as my homepage for some time now. I really like bing&#8217;s localization and how it actually targeted the international market pretty well. Results localized by country are pretty good (it&#8217;s not Google, but hey, give them some time <img src='http://inchoo.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ) and relevant. <a title="Yahoo!" href="http://yahoo.com">Yahoo</a> for example is as useful in localized search as yesterday&#8217;s newspapers when searching for fresh news. This is why Google is a major leader in international search engine market and now, bing has got a chance to change this.</p>
<p>We&#8217;ve also seen a nice income of traffic from bing while <a title="Google Analytics" href="http://analytics.google.com">Google Analytics</a> still doesn&#8217;t recognize bing as a search engine at all. Our search engine rankings positions are in most cases much higher on Google, but that&#8217;s mostly because of difference in bing&#8217;s and Google&#8217;s algorithms and the fact we&#8217;ve been optimizing ourselves for Google since the time our site first came out.</p>
<h2>About bing SEO:</h2>
<p>According to the recent studies you probably can&#8217;t really optimize your website for Bing specifically. You can optimize it for major search engines and Bing will be just fine with it.</p>
<p><strong>Most of the studies that were taken in this small amount of time show that:</strong></p>
<ul>
<li>There is no difference in on-site optimization between Google and Bing. There might be some differences in how much importance these search engines give to various on-site ranking factors (title, h1, h2, h3, alt tags, meta data etc.).</li>
<li>It appears that Bing gives more importance to the title tag then other major search engines.</li>
<li>Bing seems to value the domain age factor a lot.</li>
<li>Bing seems to like backlinks even more then Google does.</li>
</ul>
<p><strong>Bing vs Google:</strong></p>
<p><object width="620" height="365"><param name="movie" value="http://www.youtube.com/v/iLL-TSuDWxI&#038;hl=en&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/iLL-TSuDWxI&#038;hl=en&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="620" height="365"></embed></object></p>
<p>Some additional information about search engine optimizing bing can be found <a title="Aditional information" href="http://www.allseobing.com">here</a>.  Also some good ideas can be seen in <a title="Some more aditional information about bing SEO" href="http://codesucker.blogspot.com/2009/06/bing-seo-part-2-some-answers-more.html">this post</a>.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Inchoo?a=7uoRymDYHWQ:nqPQuyIjLX8:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=7uoRymDYHWQ:nqPQuyIjLX8:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=7uoRymDYHWQ:nqPQuyIjLX8:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=7uoRymDYHWQ:nqPQuyIjLX8:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=7uoRymDYHWQ:nqPQuyIjLX8:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=7uoRymDYHWQ:nqPQuyIjLX8:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=7uoRymDYHWQ:nqPQuyIjLX8:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=7uoRymDYHWQ:nqPQuyIjLX8:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Inchoo/~4/7uoRymDYHWQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://inchoo.net/online-marketing/seo-for-bing/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://inchoo.net/online-marketing/seo-for-bing/</feedburner:origLink></item>
		<item>
		<title>Escape from EAV the Magento way</title>
		<link>http://feedproxy.google.com/~r/Inchoo/~3/GW_WCMoa-HQ/</link>
		<comments>http://inchoo.net/ecommerce/magento/escape-from-eav-the-magento-way/#comments</comments>
		<pubDate>Thu, 11 Jun 2009 23:01:04 +0000</pubDate>
		<dc:creator>Branko Ajzele</dc:creator>
				<category><![CDATA[Magento]]></category>
		<category><![CDATA[eav]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://inchoo.net/?p=2182</guid>
		<description><![CDATA[One of the differences between Magento eCommerce platform and lets say WordPress, when looked from developer point of view, is &#8220;avoid raw queries&#8221; approach. For a web application, Magento is massive system. His database, although not so massive but surely breathtaking with around 220 tables forces you to use &#8220;eye candy&#8221; EAV model to do [...]]]></description>
			<content:encoded><![CDATA[<p>One of the differences between Magento eCommerce platform and lets say WordPress, when looked from developer point of view, is &#8220;avoid raw queries&#8221; approach. For a web application, Magento is massive system. His database, although not so massive but surely breathtaking with around 220 tables forces you to use &#8220;eye candy&#8221; EAV model to do even simple things.<span id="more-2182"></span></p>
<p>For instance, if I were to tell you that I want you to retrieve 5 simple products from database that have price in the range of 200-600USD you would most likely spent 1-4 hours trying to work out the query. In the end you would be lucky if you even get the query that wont break on next Magento upgrade. Let me just remind you on some of the things you need to be careful in example above.</p>
<p>Your query would have to take in consideration the at least the following states: is my product visibility such that it can be seen in Catalog and search result, is my product enabled or disabled, is is out of stock, which website and store view has it been assigned, is it assigned to only one category and that category is disabled by some chance, does it have special price assigned, does it have promotion rules assigned, does it have content (descriptions) for multilingual site assigned.</p>
<p>All of those and more are questions that one has to take into consideration when doing raw database queries. It makes no sense to create query that fetches product and all its appropriate info (price, quantity, description&#8230;) if that product is disabled or assigned to category that is disabled. For instance, if you need &#8220;featured&#8221; product functionality and you manually create raw query that extracts one &#8220;featured&#8221; product to lets say home page. There you create nice block holding all the necessary info of the product with a link for lets say &#8220;Add to cart&#8221; or &#8220;View product&#8221;. Clicking one of those two link would give you most likely 404 if the product is disable or any other condition that enables the product to be shown is disabled.</p>
<p>So basically, raw SQL queries in Magento are a &#8220;no no&#8221; for most of the time. Too much work and you never know what they will change in future upgrades. Which brings me to this new trend of theirs which I like to call &#8220;Escape from EAV&#8221;.</p>
<p><a title="The Soul is trying to escape from Hell // The Gates of Hell" href="http://en.wikipedia.org/wiki/The_Gates_of_Hell" target="_blank"><img class="size-full wp-image-2282 alignright" title="Gates of Hell" src="http://inchoo.net/wp-content/uploads/2009/06/gates_of_hell.jpg" alt="Gates of Hell" width="310" height="324" /></a>EAV, also know as Entity Attribute Value was suppose to bee (or is) the next big thing in OOP. Anyhow, Magento and his way of EAV have two huge downfalls called LACK OF DOCUMENTATION and WHAT WILL THEY CHANGE IN NEXT UPGRADE. The other day I was working on a Magento  shop that had 22 000 products. Almost all of them were simple products, just about 600 were grouped. The store was initially installed on Magento 1.2 version. Site was pretty much 95% complete from both graphic and development perspective. Anyhow, Magento version 1.3.1 was released and on client demand we decide to to upgrade. Important thing to keep in mind is that in version 1.3 Magento introduce &#8220;change in philosophy&#8221; concerning the EAV model.</p>
<p>Altough EAV sounds great (and really is great for most of the time), it can really slow things down with all those JOINS executed on database. So the Magento team decided to do a little flat tabling. Basically we now have massive data duplication in MySQL where data is taken from various tables and copied int one, the flat table. Flat tables were introduced for both Products and categories, in regards to various website and store views.</p>
<p>Basically Magento has the power to &#8220;on the fly&#8221; create tables and do the &#8220;magical&#8221; copying of data from various tables to the flat tables. I assume they were looking for a faster way to &#8220;assemble&#8221; Product objects in Magento which in turn should boost the speed of collection object i grew so found about. I can live with duplicated data in database, I mean I am not the one writing them down. But let me get back to real world scenario.</p>
<p>As I mentioned, store I have been working on had more than 20 000 products. Due to limitations of both MySQL and PHP failed to do Rebuilt that you can find in System &gt; Configuration &gt; Cache management. This failure caused corrupted data in database. This manifested with &#8220;empty&#8221; attributes (attributes not showing up in Layered navigation). I resolved the issue by &#8220;re saving&#8221; all of the 20 000 product with custom script I wrote. After that i noticed the data in flat tables got rebuild as well. This of course took several hours. Magento EAV model seems OK on paper, but with store that hold&#8217;s large number of products it simply does not work, at least not in way in which their collection objects are built. Changes introduced in form of flat tables in versions 1.3  should, to some extent, improve work with stores that have large numbers of products. However this improvement seems to come in form of &#8220;copy all data from scattered tables to single flat table&#8221;.</p>
<p>Solutions like these are nightmare when it comes to upgrading the store that already has large number of products in. System is expected to handle part of the job transparently but it failed, leaving the client with corrupted database.</p>
<p>So, a word of advice for upgrading an existing Magento store: NEVER do it on live site. Let professional developer transfer live site and database to his dev machine, or make a copy on some sub folder on live site. Magento&#8217;s extreme out of the box feature rich capabilities, open source philosophy and good marketing have made it extremely popular but be careful, free is such a a loose term.</p>
<p>I am really anxious to see the future path of EAV vs Flat model in Magento.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Inchoo?a=GW_WCMoa-HQ:rXM5dxRfg1k:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=GW_WCMoa-HQ:rXM5dxRfg1k:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=GW_WCMoa-HQ:rXM5dxRfg1k:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=GW_WCMoa-HQ:rXM5dxRfg1k:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=GW_WCMoa-HQ:rXM5dxRfg1k:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=GW_WCMoa-HQ:rXM5dxRfg1k:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=GW_WCMoa-HQ:rXM5dxRfg1k:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=GW_WCMoa-HQ:rXM5dxRfg1k:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Inchoo/~4/GW_WCMoa-HQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://inchoo.net/ecommerce/magento/escape-from-eav-the-magento-way/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		<feedburner:origLink>http://inchoo.net/ecommerce/magento/escape-from-eav-the-magento-way/</feedburner:origLink></item>
		<item>
		<title>Updating options of configurable product that is already in the cart</title>
		<link>http://feedproxy.google.com/~r/Inchoo/~3/lEFnIYgo6sU/</link>
		<comments>http://inchoo.net/ecommerce/magento/updating-options-of-configurable-product-that-is-already-in-the-cart/#comments</comments>
		<pubDate>Tue, 09 Jun 2009 09:44:47 +0000</pubDate>
		<dc:creator>Tomas Novoselic</dc:creator>
				<category><![CDATA[Magento]]></category>
		<category><![CDATA[configurable product]]></category>
		<category><![CDATA[shopping cart]]></category>
		<category><![CDATA[updating options list options]]></category>

		<guid isPermaLink="false">http://inchoo.net/?p=2215</guid>
		<description><![CDATA[Let&#8217;s say we have configurable Magento product in shopping cart and we want to update its
options without deleting product from cart and adding it again.
That&#8217;s quite easy to achieve with following steps, however I can&#8217;t write complete tutorial here so
you should be a little more familiar with Magento in order to make it work.
First open [...]]]></description>
			<content:encoded><![CDATA[<p>Let&#8217;s say we have configurable Magento product in shopping cart and we want to update its<br />
options without deleting product from cart and adding it again.</p>
<p>That&#8217;s quite easy to achieve with following steps, however I can&#8217;t write complete tutorial here so<br />
you should be a little more familiar with Magento in order to make it work.<span id="more-2215"></span></p>
<p>First open file app/design/frontend/YOUR_INTERFACE/YOUR_THEME/template/checkout/cart/item/default.phtml<br />
Find line with this code:</p>
<pre class="brush: php">
&lt; ?php if ($_options = $this-&gt;getOptionList()):?&gt;
</pre>
<p>[*]<br />
Bellow that line put this code:</p>
<pre class="brush: php">
&lt; ?php
if($this-&gt;getProduct()-&gt;isConfigurable()){
$_product = Mage::getModel(&#039;catalog/product&#039;)-&gt;load($this-&gt;getProduct()-&gt;getId());
Mage::getBlockSingleton(&#039;catalog/product_view_type_configurable&#039;)-&gt;unsetData();
$_configurable = Mage::getBlockSingleton(&#039;catalog/product_view_type_configurable&#039;)-&gt;setData(&#039;product&#039;, $_product);
$_cdata = json_decode($_configurable-&gt;getJsonConfig());
$_current = array();
foreach((array)$this-&gt;getOptionList() as $_option) {
$_current[$_option[&#039;label&#039;]]=$_option[&#039;value&#039;];
}
foreach($_cdata-&gt;attributes as $attribute) {
?&gt;
&lt;strong&gt;&lt; ?php echo $attribute-&gt;label; ?&gt;&lt;/strong&gt;
&lt;select style=&quot;width:150px;&quot; name=&quot;cart[&lt;?php echo $_item-&gt;getId() ?&gt;][option][&lt; ?php echo $attribute-&gt;id ?&gt;]&quot;&gt;
&lt; ?php
foreach($attribute-&gt;options as $option) {
?&gt;
&lt;option &lt;?php echo ($_current[$attribute-&gt;label]==$option-&gt;label) ? &#039; selected&#039; : &#039;&#039; ?&gt; value=&quot;&lt; ?php echo $option-&gt;id ?&gt;&quot;&gt;&lt; ?php echo $option-&gt;label ?&gt; &lt; ?php echo $this-&gt;helper(&#039;checkout&#039;)-&gt;formatPrice($option-&gt;price+$_item-&gt;getProduct()-&gt;getPrice()) ?&gt;&lt;/option&gt;
&lt; ?php
}
?&gt;
&lt;/select&gt;
&lt; ?php
}
} else {
// THIS IS PLACE WHERE EXISTING CODE from [*] goes
}
?&gt;
</pre>
<p>Now you are done with template and you can style it as you wish as soon as you do few additional steps. <img src='http://inchoo.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Next thing you should do is:</p>
<p>Inside app/code/local/ create directory YOUR_FIRM/MODULE_NAME/ and there you make directories &#8220;Model&#8221; and &#8220;etc&#8221;.</p>
<p>Create these files there:<br />
config.xml inside &#8220;etc&#8221; that contains following:</p>
<pre class="brush: php">
&lt; ?xml version=&quot;1.0&quot;?&gt;
&lt;config&gt;
&lt;frontend&gt;
&lt;events&gt;
&lt;checkout_cart_update_items_before&gt;
&lt;observers&gt;
&lt;your_firm_module_name_event&gt;
&lt;type&gt;singleton&lt;/type&gt;
&lt;class&gt;YOUR_FIRM_MODULE_NAME_Model_Card&lt;/class&gt;
&lt;method&gt;update&lt;/method&gt;
&lt;/your_firm_module_name_event&gt;
&lt;/observers&gt;
&lt;/checkout_cart_update_items_before&gt;
&lt;/events&gt;
&lt;/frontend&gt;
&lt;/config&gt;
</pre>
<p>and</p>
<p>Card.php inside &#8220;Model&#8221; that contains following:</p>
<pre class="brush: php">
&lt; ?php

class YOUR_FIRM_MODULE_NAME_Model_Card
{
public function update($e)
{
$_this = $e-&gt;cart;
$data = $e-&gt;info;

foreach ($data as $itemId =&gt; $itemInfo) {
$item = $_this-&gt;getQuote()-&gt;getItemById($itemId);

if (!$item) continue;
if (!isset($itemInfo[&#039;option&#039;]) or empty($itemInfo[&#039;option&#039;])) continue;

foreach ($item-&gt;getOptions() as $option){

if($option-&gt;getCode()==&#039;info_buyRequest&#039;){

$unserialized = unserialize($option-&gt;getValue());
$unserialized[&#039;super_attribute&#039;] = $itemInfo[&#039;option&#039;];
$option-&gt;setValue(serialize($itemInfo[&#039;option&#039;]));

}elseif ($option-&gt;getCode()==&#039;attributes&#039;){
$option-&gt;setValue(serialize($itemInfo[&#039;option&#039;]));
}

}
$item-&gt;save();
}
}

}
?&gt;
</pre>
<p>Ok, now just create file YOUR_FIRM_MODULE_NAME.xml inside app/etc/<br />
and put this inside:</p>
<pre class="brush: php">
&lt; ?xml version=&quot;1.0&quot;?&gt;
&lt;config&gt;
&lt;modules&gt;
&lt;your_firm_module_name&gt;
&lt;codepool&gt;local&lt;/codepool&gt;
&lt;active&gt;true&lt;/active&gt;
&lt;/your_firm_module_name&gt;
&lt;/modules&gt;
&lt;/config&gt;
</pre>
<p>That&#8217;s about it <img src='http://inchoo.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Enjoy!</p>
<p>P.S. Yes, I know&#8230; before clicking on update cart, we should have some JavaScript price changer, but this is all I have at this moment since I needed this on card that is autosubmited on dropdown change. <img src='http://inchoo.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Inchoo?a=lEFnIYgo6sU:XiMu3lCpyvA:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=lEFnIYgo6sU:XiMu3lCpyvA:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=lEFnIYgo6sU:XiMu3lCpyvA:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=lEFnIYgo6sU:XiMu3lCpyvA:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=lEFnIYgo6sU:XiMu3lCpyvA:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=lEFnIYgo6sU:XiMu3lCpyvA:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=lEFnIYgo6sU:XiMu3lCpyvA:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=lEFnIYgo6sU:XiMu3lCpyvA:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Inchoo/~4/lEFnIYgo6sU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://inchoo.net/ecommerce/magento/updating-options-of-configurable-product-that-is-already-in-the-cart/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		<feedburner:origLink>http://inchoo.net/ecommerce/magento/updating-options-of-configurable-product-that-is-already-in-the-cart/</feedburner:origLink></item>
		<item>
		<title>How to get targeted followers on Twitter</title>
		<link>http://feedproxy.google.com/~r/Inchoo/~3/HinCo_MO8Po/</link>
		<comments>http://inchoo.net/online-marketing/how-to-get-targeted-followers-on-twitter/#comments</comments>
		<pubDate>Tue, 09 Jun 2009 07:57:02 +0000</pubDate>
		<dc:creator>Toni Anicic</dc:creator>
				<category><![CDATA[Online Marketing]]></category>
		<category><![CDATA[marketing]]></category>

		<guid isPermaLink="false">http://inchoo.net/?p=2210</guid>
		<description><![CDATA[I often see articles on topic of how to get massive amounts of followers on twitter. They mostly describe the techniques that are on a thin line between fair use of social media in marketing purposes and unethical spamming. 
Twitter is a social network before all and there are lots of different people on it [...]]]></description>
			<content:encoded><![CDATA[<p>I often see articles on topic of how to get massive amounts of followers on twitter. They mostly describe the techniques that are on a thin line between fair use of social media in marketing purposes and unethical spamming. <span id="more-2210"></span></p>
<p><a title="Twitter" href="http://twitter.com">Twitter</a> is a social network before all and there are lots of different people on it with different interests. It&#8217;s not really important how many followers you have, it&#8217;s all about who your followers are.</p>
<p>Let&#8217;s say you sell products to interior designers, like our client <a title="Custom Fabric Furniture - Interior Design" href="http://pebblehilldesigns.com/">Pebble Hill Designs</a> does. It would be more important for you to have hundreds of interior designers as your twitter followers then thousands of random folks.</p>
<p><img class="alignnone size-full wp-image-2211" title="get relevant twitter followers" src="http://inchoo.net/wp-content/uploads/2009/06/twitter-followers.jpg" alt="get relevant twitter followers" width="620" height="256" /></p>
<p>It&#8217;s pretty simple math, if your followers are people that are really interested into your services / products, you are more likely to convert them into customers and they are also more likely to retweet your messages and engage you into discussions.</p>
<p>Getting targeted followers on twitter basically starts as any other marketing activity:</p>
<p><strong>1. Define your targeted audience and do some research on them.</strong> Find out who are the most influential twitter users among your targeted audience, have a look on what they tweet about and why do people follow them.</p>
<p><strong>2. Use twitter search to find conversations about your niche, services or products.</strong> Don&#8217;t just search one hashtag and think you&#8217;re done. Be creative, try to find any natural order of words that would be used in discussions about your services, products or your general niche.</p>
<p><strong>3. Engage your targeted audience into conversations.</strong> This is what social media is all about, conversations. If you manage to give quality info and answer questions about services or products that you also offer, your reputation will grow with time and so will your follower base.</p>
<p><img class="alignnone size-full wp-image-2212" title="targeted twitter followers" src="http://inchoo.net/wp-content/uploads/2009/06/targeted-twitter-followers.jpg" alt="targeted twitter followers" width="620" height="411" /></p>
<p><strong>4. Don&#8217;t spamm, mass follow, and don&#8217;t try to sell your products / services all the time.</strong> People don&#8217;t like to be sold to. If someone is asking to be recommended a service provider, offer your services, however, don&#8217;t just send out spamm to anyone that fits the profile of your targeted audience.</p>
<p><strong>5. Follow the most influential twitter users in your targeted niche and pay extra attention to them.</strong> Try to engage them into communication as much as possible. If they communicate with you a lot, you will eventually get lots of followers from them.</p>
<p><strong>6. Use the hashtags in your tweets.</strong> It will make your tweets more visible in twitter search and you might get some nice quality targeted followers this way. Once again, don&#8217;t abuse these tags, only use them when it&#8217;s obvious they fit the context of your tweet.</p>
<p><strong>7. Be active in twitter&#8217;s social events such as #FollowFriday.</strong> You have to give in order to receive. Hashtag users you find interesting or influential with #FollowFriday tag every Friday and you might be lucky to receive some reciprocal Friday love. This is one of the best ways to get quality and relevant followers on your Twitter account.</p>
<p><strong>8. Join in twitter directories under appropriate category (hashtag).</strong> One of the best known twitter directories is <a title="We Follow" href="http://wefollow.com">WeFollow</a>.</p>
<p><em>If you liked this article, you can <a title="Inchoo @ Twitter" href="http://twitter.com/inchoo">follow Inchoo via twitter</a>. Thanks!</em></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Inchoo?a=HinCo_MO8Po:IF_bNkSBHTM:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=HinCo_MO8Po:IF_bNkSBHTM:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=HinCo_MO8Po:IF_bNkSBHTM:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=HinCo_MO8Po:IF_bNkSBHTM:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=HinCo_MO8Po:IF_bNkSBHTM:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=HinCo_MO8Po:IF_bNkSBHTM:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=HinCo_MO8Po:IF_bNkSBHTM:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=HinCo_MO8Po:IF_bNkSBHTM:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Inchoo/~4/HinCo_MO8Po" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://inchoo.net/online-marketing/how-to-get-targeted-followers-on-twitter/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://inchoo.net/online-marketing/how-to-get-targeted-followers-on-twitter/</feedburner:origLink></item>
		<item>
		<title>Magento custom emails</title>
		<link>http://feedproxy.google.com/~r/Inchoo/~3/T7BjDtInMnw/</link>
		<comments>http://inchoo.net/ecommerce/magento/magento-custom-emails/#comments</comments>
		<pubDate>Mon, 08 Jun 2009 22:12:09 +0000</pubDate>
		<dc:creator>Branko Ajzele</dc:creator>
				<category><![CDATA[Magento]]></category>
		<category><![CDATA[eMail]]></category>

		<guid isPermaLink="false">http://inchoo.net/?p=2204</guid>
		<description><![CDATA[Ever wanted to &#8220;just send the email&#8221; using the built in email features in Magento? Ever hit the wall trying to do something with Magento? OK, I know the answer to the other one, just had to ask  . Anyhow, sending the emails with Magento turned out to be a process of &#8220;just&#8221; a [...]]]></description>
			<content:encoded><![CDATA[<p>Ever wanted to &#8220;just send the email&#8221; using the built in email features in Magento? Ever hit the wall trying to do something with Magento? OK, I know the answer to the other one, just had to ask <img src='http://inchoo.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . Anyhow, sending the emails with Magento turned out to be a process of &#8220;just&#8221; a few hours of tracing Magento code.<span id="more-2204"></span></p>
<p>I cant wait for smart comments like, &#8220;few hours, huh its so easy&#8230;&#8221;. Yea, thats the beauty of Magento&#8230; few hours of bashing your head against the wall while you are sipping the 4th cup of coffee until the solution hits you. Interesting do, just when you get the hang of it, Magento gets you this &#8220;have you tried this&#8221; attitude <img src='http://inchoo.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p>What am I talking about? Scenario: I want to create email template named activecodeline_custom_email1.html, I want to pass few variables to it during runtime, I want to send emails programmaticaly. I dont want to create 56 lines of xml file just to call one template. </p>
<p>Here is how.</p>
<pre class="brush: php">
...
/*
 * Loads the html file named &#039;custom_email_template1.html&#039; from
 * app/locale/en_US/template/email/activecodeline_custom_email1.html
 */
$emailTemplate  = Mage::getModel(&#039;core/email_template&#039;)
						-&gt;loadDefault(&#039;custom_email_template1&#039;);									

//Create an array of variables to assign to template
$emailTemplateVariables = array();
$emailTemplateVariables[&#039;myvar1&#039;] = &#039;Branko&#039;;
$emailTemplateVariables[&#039;myvar2&#039;] = &#039;Ajzele&#039;;
$emailTemplateVariables[&#039;myvar3&#039;] = &#039;ActiveCodeline&#039;;

/**
 * The best part <img src='http://inchoo.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />
 * Opens the activecodeline_custom_email1.html, throws in the variable array
 * and returns the &#039;parsed&#039; content that you can use as body of email
 */
$processedTemplate = $emailTemplate-&gt;getProcessedTemplate($emailTemplateVariables);

/*
 * Or you can send the email directly,
 * note getProcessedTemplate is called inside send()
 */
$emailTemplate-&gt;send(&#039;john@someemail.com&#039;,&#039;John Doe&#039;, $emailTemplateVariables);
...
</pre>
<p>And here we go again, nothing without xml files <img src='http://inchoo.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  -In order for above piece of code to work, you need to add an entry to your config.xml file like shown below.</p>
<pre class="brush: xml">
...
&lt;global&gt;
	&lt;template&gt;
		&lt;email&gt;
			&lt;custom_email_template1 module=&quot;SampleModule1&quot;&gt;
				&lt;label&gt;ActiveCodeline custom email module&lt;/label&gt;
				&lt;file&gt;activecodeline_custom_email1.html&lt;/file&gt;
				&lt;type&gt;html&lt;/type&gt;
			&lt;/custom_email_template1&gt;
		&lt;/email&gt;
	&lt;/template&gt;
&lt;/global&gt;
...
</pre>
<p>And lets not forget the email template itself, app/locale/en_US/template/email/activecodeline_custom_email1.html.</p>
<pre class="brush: html">
&lt;!--@subject ActiveCodeline custom email module @--&gt;

&lt;div&gt;
&lt;h1&gt;ActiveCodeline custom email example by Branko Ajzele&lt;/h1&gt;
&lt;p&gt;Hi there {{var myvar1}} {{var myvar2}} from {{var myvar3}}. This is just some example template to test custom email module.&lt;/p&gt;
&lt;/div&gt;
</pre>
<p>Hope this was helpful. Cheers.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Inchoo?a=T7BjDtInMnw:d1Sp3-kuiiQ:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=T7BjDtInMnw:d1Sp3-kuiiQ:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=T7BjDtInMnw:d1Sp3-kuiiQ:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=T7BjDtInMnw:d1Sp3-kuiiQ:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=T7BjDtInMnw:d1Sp3-kuiiQ:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=T7BjDtInMnw:d1Sp3-kuiiQ:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=T7BjDtInMnw:d1Sp3-kuiiQ:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=T7BjDtInMnw:d1Sp3-kuiiQ:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Inchoo/~4/T7BjDtInMnw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://inchoo.net/ecommerce/magento/magento-custom-emails/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://inchoo.net/ecommerce/magento/magento-custom-emails/</feedburner:origLink></item>
		<item>
		<title>Getting started with building Admin module in Magento</title>
		<link>http://feedproxy.google.com/~r/Inchoo/~3/3pV5oWLwOXo/</link>
		<comments>http://inchoo.net/ecommerce/magento/getting-started-with-building-admin-module-in-magento/#comments</comments>
		<pubDate>Mon, 08 Jun 2009 07:24:08 +0000</pubDate>
		<dc:creator>Branko Ajzele</dc:creator>
				<category><![CDATA[Magento]]></category>

		<guid isPermaLink="false">http://inchoo.net/?p=2192</guid>
		<description><![CDATA[Due to the &#8220;complexity&#8221; of Magento&#8217;s xml files, developers can waste great amount of time on &#8220;unnecessary&#8221; things.
When I say &#8220;complexity&#8221; I say it with purpose. XML files are not so complex by them selves, but due to extreme lack of documentation and changes Magento pumps in every new &#8220;major&#8221; release, people are lost among [...]]]></description>
			<content:encoded><![CDATA[<p>Due to the &#8220;complexity&#8221; of Magento&#8217;s xml files, developers can waste great amount of time on &#8220;unnecessary&#8221; things.<br />
When I say &#8220;complexity&#8221; I say it with purpose. XML files are not so complex by them selves, but due to extreme lack of documentation and changes Magento pumps in every new &#8220;major&#8221; release, people are lost among things that should really be sideways. Anyway, in this little article I will show you how to create basic, startup structure for your module to get it shown under Magento Admin main top menu.<span id="more-2192"></span></p>
<p>As you can see on the picture below, I am creating a menu item with title &#8220;ActiveCodeline_SampleModule1&#8243;. </p>
<p><a href="http://inchoo.net/wp-content/uploads/2009/06/m1.png"><img src="http://inchoo.net/wp-content/uploads/2009/06/m1-150x36.png" alt="m1" title="m1" width="150" height="36" class="alignnone size-thumbnail wp-image-2194" /></a></p>
<p>My module is called &#8220;SampleModule1&#8243; and it consists of just a few files. As you go over the provided config.xml file you will see that I used &#8220;BigLettersSmallLetters&#8221; style. I do this intentionally because this &#8220;naming convention&#8221; is another great pitfall for developers when it comes to constructing xml files. I know I too still struggle with &#8220;what must be the lowercase&#8221; question.</p>
<p>Here is my example of <strong>config.xml</strong> file</p>
<pre class="brush: xml">

&lt; ?xml version=&quot;1.0&quot;?&gt;

&lt;config&gt;
    &lt;modules&gt;
        &lt;activecodeline_samplemodule1&gt;
            &lt;version&gt;0.1.0&lt;/version&gt;
        &lt;/activecodeline_samplemodule1&gt;
    &lt;/modules&gt;

&lt;global&gt;
        &lt;helpers&gt;
            &lt;samplemodule1&gt;
                &lt;class&gt;ActiveCodeline_SampleModule1_Helper&lt;/class&gt;
            &lt;/samplemodule1&gt;
        &lt;/helpers&gt;
&lt;/global&gt;        

        &lt;admin&gt;
        &lt;routers&gt;
            &lt;samplemodule1&gt;
                &lt;use&gt;admin&lt;/use&gt;
                &lt;args&gt;
                    &lt;module&gt;ActiveCodeline_SampleModule1&lt;/module&gt;
                    &lt;frontname&gt;samplemodule1&lt;/frontname&gt;
                &lt;/args&gt;
            &lt;/samplemodule1&gt;
        &lt;/routers&gt;
    &lt;/admin&gt;

    &lt;adminhtml&gt;
        &lt;menu&gt;
            &lt;menu1 translate=&quot;title&quot; module=&quot;SampleModule1&quot;&gt;
                &lt;title&gt;ActiveCodeline SampleModule1&lt;/title&gt;
                &lt;sort_order&gt;60&lt;/sort_order&gt;
                &lt;children&gt;
                    &lt;menuitem1 module=&quot;SampleModule1&quot;&gt;
                        &lt;title&gt;Menu item 1&lt;/title&gt;
                        &lt;action&gt;samplemodule1/example&lt;/action&gt;
                    &lt;/menuitem1&gt;
                &lt;/children&gt;
            &lt;/menu1&gt;
        &lt;/menu&gt;
        &lt;acl&gt;
            &lt;resources&gt;
                &lt;admin&gt;
                    &lt;children&gt;
                        &lt;menu1 translate=&quot;title&quot; module=&quot;SampleModule1&quot;&gt;
							&lt;title&gt;ActiveCodeline SampleModule1&lt;/title&gt;
                			&lt;sort_order&gt;60&lt;/sort_order&gt;
                            &lt;children&gt;
                                &lt;menuitem1&gt;
                                    &lt;title&gt;Menu item 1&lt;/title&gt;
                                &lt;/menuitem1&gt;
                            &lt;/children&gt;
                       &lt;/menu1&gt;
                   &lt;/children&gt;
               &lt;/admin&gt;
           &lt;/resources&gt;
        &lt;/acl&gt;
    &lt;/adminhtml&gt;    

&lt;/config&gt;
</pre>
<p>My &#8220;admin&#8221; controller is extremely simple, just an indexAction() method. However it does tell a lot. Below is a code of indexAction() method.</p>
<pre class="brush: php">

...
public function indexAction()
{
	// &quot;Fetch&quot; display
    $this-&gt;loadLayout();

    // &quot;Inject&quot; into display
    // THe below example will not actualy show anything since the core/template is empty
    $this-&gt;_addContent($this-&gt;getLayout()-&gt;createBlock(&#039;core/template&#039;));

    // echo &quot;Hello developer...&quot;;

    // &quot;Output&quot; display
    $this-&gt;renderLayout();
}
...
</pre>
<p>And below are all the files required for this &#8220;Admin example module&#8221; to work.</p>
<p>Download <a href='http://inchoo.net/wp-content/uploads/2009/06/samplemodule1tar.gz'><em>Admin example module</em> aka <strong>SampleModule1</strong></a></p>
<p>Note this is only example, DO NOT USE on live site.</p>
<p>Cheers&#8230;</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Inchoo?a=3pV5oWLwOXo:rW8hH04aEgc:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=3pV5oWLwOXo:rW8hH04aEgc:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=3pV5oWLwOXo:rW8hH04aEgc:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=3pV5oWLwOXo:rW8hH04aEgc:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=3pV5oWLwOXo:rW8hH04aEgc:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=3pV5oWLwOXo:rW8hH04aEgc:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=3pV5oWLwOXo:rW8hH04aEgc:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=3pV5oWLwOXo:rW8hH04aEgc:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Inchoo/~4/3pV5oWLwOXo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://inchoo.net/ecommerce/magento/getting-started-with-building-admin-module-in-magento/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://inchoo.net/ecommerce/magento/getting-started-with-building-admin-module-in-magento/</feedburner:origLink></item>
		<item>
		<title>How to create Magento AMF server extension</title>
		<link>http://feedproxy.google.com/~r/Inchoo/~3/vdDiL0MvBqY/</link>
		<comments>http://inchoo.net/ecommerce/magento/how-to-create-magento-amf-server-extension/#comments</comments>
		<pubDate>Fri, 05 Jun 2009 19:42:41 +0000</pubDate>
		<dc:creator>Branko Ajzele</dc:creator>
				<category><![CDATA[Magento]]></category>
		<category><![CDATA[AMF]]></category>

		<guid isPermaLink="false">http://inchoo.net/?p=2187</guid>
		<description><![CDATA[I have been working on a project, in my own time, that involves Flex &#8211; Magento communication. I decided to test Adobe&#8217;s AMF format. In this article I will show you how easy is to create AMF server as an extension in Magento.
So, where to we start?
The idea is to have special Url which will [...]]]></description>
			<content:encoded><![CDATA[<p>I have been working on a project, in my own time, that involves Flex &#8211; Magento communication. I decided to test Adobe&#8217;s AMF format. In this article I will show you how easy is to create <strong>AMF</strong> server as an extension in Magento.<span id="more-2187"></span></p>
<p><strong>So, where to we start?</strong></p>
<p>The idea is to have special Url which will act as AMF endpoint. Since Magento is built on top of Zend, this is extremely easy to do.</p>
<p>For your module to act as a basic AMF server you need only 3 files. <strong>MyCompany_MyModule.xml</strong> that goes under the /app/etc/modules/ folder. Then IndexController.php that goes under the /app/code/local/MyCompany/MyModule/controllers/<strong>IndexController.php</strong>. And last but not least the <strong>config.xml</strong> file that goes under the /app/code/local/MyCompany/MyModule/etc/ folder.</p>
<p>I will not go into the details and show you the full content of each of those files. Important thing is to focus on IndexController.php and config.xml files. Inside your <strong>IndexController.php</strong> file you will actualy hold the code for your AMF server (<strong>Zend_Amf</strong>).</p>
<p>Here is an example of indexAction from my IndexController.php file:</p>
<pre class="brush: php">

...
public function indexAction()
{
	//Create AMF server instance
	$server = new Zend_Amf_Server();

	//setProduction(false): return exception info
	$server-&gt;setProduction(false);

	$server-&gt;setClass($class, $class);

	//$server-&gt;setClassMap(&quot;SomeTypedObjectVO&quot;, &quot;MyCompany_MyModule_Model_SomeTypedObjectVO&quot;);
	$server-&gt;setClassMap($className, $class);

	//Run the AMF server
	echo $server-&gt;handle();

	//Just in case so that Magento does not pass anything beyond this point
	die;
}
...
</pre>
<p>The above example is the simplest form of Zend AMF server i can think of, but it should be enough to get your AMF server responsive to AMF requests.</p>
<p>And to make all of this accessible via Url, we need to add entry to congig.xml file. Below is the partial example of my config.xml file.</p>
<pre class="brush: xml">

...
	&lt;frontend&gt;
		&lt;routers&gt;
			&lt;mymodule&gt;
				&lt;use&gt;standard&lt;/use&gt;
				&lt;args&gt;
				&lt;module&gt;MyCompany_MyModule&lt;/module&gt;
				&lt;frontname&gt;myamfserver&lt;/frontname&gt;
			&lt;/args&gt;
			&lt;/mymodule&gt;
		&lt;/routers&gt;
	&lt;/frontend&gt;
...
</pre>
<p>Above piece of code sets access to AMF server on Url like http://server/store/index.php/myamfserver. </p>
<p>Thats it.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Inchoo?a=vdDiL0MvBqY:33m9tYfTWq8:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=vdDiL0MvBqY:33m9tYfTWq8:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=vdDiL0MvBqY:33m9tYfTWq8:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=vdDiL0MvBqY:33m9tYfTWq8:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=vdDiL0MvBqY:33m9tYfTWq8:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/Inchoo?i=vdDiL0MvBqY:33m9tYfTWq8:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=vdDiL0MvBqY:33m9tYfTWq8:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Inchoo?a=vdDiL0MvBqY:33m9tYfTWq8:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/Inchoo?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Inchoo/~4/vdDiL0MvBqY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://inchoo.net/ecommerce/magento/how-to-create-magento-amf-server-extension/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://inchoo.net/ecommerce/magento/how-to-create-magento-amf-server-extension/</feedburner:origLink></item>
	</channel>
</rss>
