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

<channel>
	<title>Moulin Créatif &#187; PHPmotion</title>
	<atom:link href="http://moulincreatif.com/blog/category/phpmotion/feed/" rel="self" type="application/rss+xml" />
	<link>http://moulincreatif.com/blog</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Tue, 03 Jan 2012 13:50:07 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>A few updates</title>
		<link>http://moulincreatif.com/blog/phpmotion/a-few-updates/</link>
		<comments>http://moulincreatif.com/blog/phpmotion/a-few-updates/#comments</comments>
		<pubDate>Sat, 29 Jan 2011 10:01:15 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[PHPmotion]]></category>

		<guid isPermaLink="false">http://moulincreatif.com/blog/?p=239</guid>
		<description><![CDATA[I thought it was time for my first update of the year, and it&#8217;s an interesting one! The release of UpdateWall 1.3 is getting closer and planned for the first week of February! I&#8217;m in the middle of developing a Social Connection plugin, originally planned for Facebook but will now work with Myspace, Twitter and [...]]]></description>
			<content:encoded><![CDATA[<p>I thought it was time for my first update of the year, and it&#8217;s an interesting one!</p>
<p>The release of UpdateWall 1.3 is getting closer and planned for the first week of February!</p>
<p>I&#8217;m in the middle of developing a Social Connection plugin, originally planned for Facebook but will now work with Myspace, Twitter and Google amongst others! It will create a unique login experience and allows visitors to sign up in seconds!</p>
<p>There is also something BIG in the works, I&#8217;ll give you a hint. It will bring your PHPmotion website to more devices then ever before!</p>
]]></content:encoded>
			<wfw:commentRss>http://moulincreatif.com/blog/phpmotion/a-few-updates/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHPbbmotion is now available for free!</title>
		<link>http://moulincreatif.com/blog/phpmotion/phpbbmotion-is-now-available-for-free/</link>
		<comments>http://moulincreatif.com/blog/phpmotion/phpbbmotion-is-now-available-for-free/#comments</comments>
		<pubDate>Thu, 18 Nov 2010 09:34:28 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[PHPmotion]]></category>

		<guid isPermaLink="false">http://moulincreatif.com/blog/?p=193</guid>
		<description><![CDATA[I&#8217;ve decided to release my phpbbmotion for PHPmotion for free! The reason being that I don&#8217;t have the time to manage it as I&#8217;m spending a lot of time working on my UpdateWall plugin (if you haven&#8217;t checked it out then you really should ). If you purchased the addon recently please note that I [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve decided to release my phpbbmotion for PHPmotion for free! The reason being that I don&#8217;t have the time to manage it as I&#8217;m spending a lot of time working on my <a href="http://updatewall.com">UpdateWall plugin</a> (if you haven&#8217;t checked it out then you really should <img src='http://moulincreatif.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  ). If you purchased the addon recently please note that I will still provide support for it.</p>
<ul>
<li><a href="#details">What is phpbbmotion?</a></li>
<li><a href="#download">License &amp; Download</a></li>
</ul>
<p><span id="more-193"></span></p>
<h2><a name="details"></a>What is phpbbmotion?</h2>
<p>PHPbbmotion is an easy, free method to integrate PHPmotion v3 with phpBB3. Giving you access to all of phpBB3&#8242;s great forum script, features &amp; addons. PHPbbmotion does not modify any phpBB php files so is compatible with at least 99% of phpBB3 addons!</p>
<p>Once PHPbbmotion is installed users only need to login once to use either the forums or PHPmotion on your website.</p>
<ul>
<h2><a name="download"></a>License &amp; Download links</h2>
<p>This addon is released under the <a href="http://www.opensource.org/licenses/mit-license.php">MIT license</a>, which allows you to use it freely in any of your projects as long as you include the license included in the download.</p>
<p><a href="http://moulincreatif.com/phpbbmotion/phpbbmotion-latest.zip">Download phpbbmotion 1.3 by clicking here.</a></p>
<p>If you found this addon useful please consider linking back, <a href="http://bit.ly/dvUC1d">a small donation through Paypal</a> or signing up for my latest PHPmotion addon <a title="PHPmotion UpdateWall facebook style plugin" href="http://updatewall.com">UpdateWall</a>.</ul>
]]></content:encoded>
			<wfw:commentRss>http://moulincreatif.com/blog/phpmotion/phpbbmotion-is-now-available-for-free/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Upcoming addons for PHPmotion!</title>
		<link>http://moulincreatif.com/blog/phpmotion/upcoming-addons-for-phpmotion/</link>
		<comments>http://moulincreatif.com/blog/phpmotion/upcoming-addons-for-phpmotion/#comments</comments>
		<pubDate>Thu, 23 Sep 2010 09:39:32 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[PHPmotion]]></category>
		<category><![CDATA[seo]]></category>
		<category><![CDATA[updatewall]]></category>

		<guid isPermaLink="false">http://moulincreatif.com/blog/?p=180</guid>
		<description><![CDATA[Hi all, it&#8217;s been a while since my last update so I thought I&#8217;d make it an important one! UpdateWall 1.3 UpdateWall is now stable with no known bugs and is undergoing a major update which will bring in a lot of new features! As soon as this update is out the price will go [...]]]></description>
			<content:encoded><![CDATA[<p>Hi all, it&#8217;s been a while since my last update so I thought I&#8217;d make it an important one!</p>
<h3>UpdateWall 1.3</h3>
<p><a href="http://updatewall.com">UpdateWall</a> is now stable with no known bugs and is undergoing a major update which will bring in a lot of new features! As soon as this update is out the price will go up to it&#8217;s normal pricing (instead of the current 50% off) so get it while it&#8217;s cheap if you&#8217;ve been hesitating.</p>
<p>There will be a lot of new features included in the next update such as a full plugin system allowing you to easily install extra plugins to add even more functionality to the UpdateWall! Some of the other new features include <strong>Like buttons</strong>, Video embedder compatibility &amp; custom styles! You can offer suggestions on the thread here: <a href="http://updatewall.com/community/index.php?p=/discussion/5/1.3-feature-proposal" target="_blank">1.3 feature proposal</a>.</p>
<h3>A SEO pack for PHPmotion v3</h3>
<p>Yes, PHPmotion V3 search engine optimisation has improved over previous versions. But why not make it even better? I&#8217;m working on a lightweight plugin which will give you full control over page titles, meta tags and other parts of the website.</p>
<h3>Facebook Connect</h3>
<p>After many requests on the forum for this feature I think it&#8217;s finally time something was done about it. Now that I&#8217;ve had some experience with the Facebook API I&#8217;ve decided to get working on what will be a great addition to any social website.</p>
<p>I&#8217;m not going to make any promises on a release date yet but I will be working on these in my spare time and will let you know when they&#8217;re available!</p>
]]></content:encoded>
			<wfw:commentRss>http://moulincreatif.com/blog/phpmotion/upcoming-addons-for-phpmotion/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>UpdateWall is now available</title>
		<link>http://moulincreatif.com/blog/phpmotion/updatewall-is-now-available/</link>
		<comments>http://moulincreatif.com/blog/phpmotion/updatewall-is-now-available/#comments</comments>
		<pubDate>Sun, 27 Jun 2010 12:53:41 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[PHPmotion]]></category>

		<guid isPermaLink="false">http://moulincreatif.com/blog/?p=156</guid>
		<description><![CDATA[This is just a quick post to say that you can now buy the UpdateWall. It&#8217;s finally ready for public use. You can grab the addon for half price at the moment and even pay monthly if you can&#8217;t afford the years license. You can get started for only $4.99! There will be many new [...]]]></description>
			<content:encoded><![CDATA[<p>This is just a quick post to say that you can now buy the UpdateWall. It&#8217;s finally ready for public use. You can grab the addon for half price at the moment and even pay monthly if you can&#8217;t afford the years license. You can get started for only $4.99!</p>
<p>There will be many new features being added in the future and all updates are free for people using the addon.</p>
<p>Visit the<a href="http://updatewall.com"> UpdateWall PHPmotion social addon for more information</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://moulincreatif.com/blog/phpmotion/updatewall-is-now-available/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Fixing &#8220;Most commented&#8221; problems in PHPmotion</title>
		<link>http://moulincreatif.com/blog/phpmotion/fixing-most-commented-problems-in-phpmotion/</link>
		<comments>http://moulincreatif.com/blog/phpmotion/fixing-most-commented-problems-in-phpmotion/#comments</comments>
		<pubDate>Fri, 25 Jun 2010 08:08:12 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[PHPmotion]]></category>

		<guid isPermaLink="false">http://moulincreatif.com/blog/?p=131</guid>
		<description><![CDATA[Lately some of my clients have been running into performance issues with PHPmotion when they have lots of videos (20,000+ for some). One of the main issues (which has also been mentioned on the PHPmotion forum) is with most commented feature in PHPmotion. Below is an explanation of the problem and more interestingly the solution! [...]]]></description>
			<content:encoded><![CDATA[<p>Lately some of my clients have been running into performance issues with PHPmotion when they have lots of videos (20,000+ for some). One of the main issues (which has also been mentioned on the PHPmotion forum) is with most commented feature in PHPmotion. Below is an explanation of the problem and more interestingly the solution!</p>
<p><span id="more-131"></span></p>
<h2>The Problem:</h2>
<p>The logic behind the whole most commented process is completely wrong. Here&#8217;s how it works at the moment.</p>
<ul>
<li>User requests most commented videos</li>
<li>The script gets every single video from the database (every single one!)</li>
<li>It then loops through every video and does another 3 queries to get the username, number of comments and star rating.</li>
<li>It then loops through every video again to sort them by most comments.</li>
<li>It then loops through once more! This time to only return the amount of videos defined by the limit.</li>
</ul>
<p>To return 12, 20 or even 3 videos it searches through and loops through every video.If you have quite a few videos it can load slowly or worse, a client of mine has over 20,000 videos in the DB and the most commented just kills the page instantly because it uses too much memory.</p>
<p>Say you have 200 videos in total <strong>you are running 601 queries</strong> (3 per video + 1 to fetch all videos) to return 20 videos! Now depending on the hosting you have this feature could stop working after you&#8217;ve only got a few hundred or a few thousand either way all these database queries are totally unnecessary.</p>
<h2>The Solution:</h2>
<p>How much of a difference will the below changes make? How about reducing all of the above queries down to <strong>one single query</strong>.</p>
<p>First lets change the stars_array() function to stop it fetching the rating separately (don&#8217;t worry these changes won&#8217;t break any of the other parts of the site using stars_array()).</p>
<p>In classes/functions.inc.php find the following code:</p>
<pre class="brush: php">function stars_array($vid) {

$sql_stars		= &quot;SELECT * FROM videos WHERE indexer = $vid&quot;;
$query_stars	= @mysql_query($sql_stars);
$result_stars	= @mysql_fetch_array($query_stars);
$stars 		= $result_stars[&#039;updated_rating&#039;];

//default stars</pre>
<p>And change it to:</p>
<pre class="brush: php">
function stars_array($vid, $stars = null) {

if($stars === null) {
$sql_stars		= &quot;SELECT * FROM videos WHERE indexer = $vid&quot;;
$query_stars	= @mysql_query($sql_stars);
$result_stars	= @mysql_fetch_array($query_stars);
$stars 		= $result_stars[&#039;updated_rating&#039;];
}
//default stars
</pre>
<p>What we&#8217;re doing here is changing the function to only fetch the stars if they aren&#8217;t already provided as an argument.</p>
<p>Now that&#8217;s optimized let&#8217;s get cracking at fixing the problem. In index_ajax.php we&#8217;re going to be replacing the code from line 168 to 242 with the following:</p>
<pre class="brush: php">if($which_one == &#039;comments&#039;) {

$browse_videos = array();

$sql = &quot;SELECT v.*, COUNT( vc.indexer ) AS comments, u.user_name as uploaded_by

FROM videos v

JOIN videocomments vc ON vc.video_id = v.indexer

JOIN member_profile u ON u.user_id=v.user_id

WHERE approved = &#039;yes&#039;

AND public_private = &#039;public&#039;

GROUP BY vc.video_id

ORDER BY comments DESC

LIMIT $limit&quot;;

$qry = mysql_query($sql);

while($row = mysql_fetch_assoc($qry)) {

$row[&#039;date_uploaded&#039;] = dateTimeDiff($row[&#039;date_uploaded&#039;]);

$browse_videos[] = array_merge($row, stars_array($row[&#039;indexer&#039;], $row[&#039;updated_rating&#039;]));

}

$see_more_title = $config[&#039;most_commented&#039;];

}</pre>
<p>And there we go! You&#8217;re down from hundreds of queries to one  smart query which does most of the work for us and then PHP simply outputs it for the templates and displays the results.</p>
<p>What&#8217;s changed here? Let&#8217;s take a look.</p>
<p>The query:</p>
<pre class="brush: php">SELECT v.*, COUNT( vc.indexer ) AS comments, u.user_name as uploaded_by
FROM videos v
JOIN videocomments vc ON vc.video_id = v.indexer
JOIN member_profile u ON u.user_id=v.user_id
WHERE approved = &#039;yes&#039;
AND public_private = &#039;public&#039;
GROUP BY vc.video_id
ORDER BY comments DESC
LIMIT $limit</pre>
<p>This is the biggest change, what I&#8217;ve done here is basically merge all the other queries into one optimized one which fetches all the required data at the same time. It also and most importantly sorts the results and fetches the most commented directly instead of every video in the database.</p>
<pre class="brush: php">while($row = mysql_fetch_assoc($qry)) {
$row[&#039;date_uploaded&#039;] = dateTimeDiff($row[&#039;date_uploaded&#039;]);
$browse_videos[] = array_merge($row, stars_array($row[&#039;indexer&#039;], $row[&#039;updated_rating&#039;]));
}</pre>
<p>Now that we&#8217;ve got rid of the other queries the while loop gets simplified quite a bit. All we have to do here is format the date correctly and merge the stars into the video array. Remember the change we did above to the stars_array function well we&#8217;re now using that <em>stars_array($row['indexer'], $row['updated_rating'])</em> and avoiding yet another query for the stars info as we&#8217;ve already got that from the main query.</p>
<p>Now we apply similar code to seemore.php change the code between if ($which_one == &#8216;comments&#8217;) { .. everything here .. } to the following:</p>
<pre class="brush: php">if ($which_one == &#039;comments&#039;) {    

	$pagination = pagination( &quot;SELECT v.indexer, COUNT(c.indexer) as comments FROM videos v JOIN videocomments c ON v.indexer=c.video_id WHERE 1=1 $sql_public_private GROUP BY v.indexer&quot;, $limit);

    	$set_limit = $pagination[0][&#039;set_limit&#039;];

    	$total_pages = $pagination[0][&#039;total_pages&#039;];

    	$current_page = $pagination[0][&#039;current_page&#039;];

    	$total_records = $pagination[0][&#039;total_records&#039;];

    	$next_page = $pagination[0][&#039;next_page&#039;];//use in html navigation (src)

    	$prev_page = $pagination[0][&#039;prev_page&#039;];//use in html navigation (src)

    	$nl = $pagination[0][&#039;nl&#039;];//use in html navigation: next&gt;&gt;

    	$pl = $pagination[0][&#039;pl&#039;];//use in html navigation: &lt;&lt;previous

    	$result_featured	= array();    	        

    	$sql = &quot;SELECT v.*, COUNT( vc.indexer ) AS comments, u.user_name as uploaded_by

FROM videos v

JOIN videocomments vc ON vc.video_id = v.indexer

JOIN member_profile u ON u.user_id=v.user_id

WHERE approved = &#039;yes&#039;

AND public_private = &#039;public&#039;

GROUP BY vc.video_id

ORDER BY comments DESC

LIMIT $set_limit, $limit&quot;;

		$qry = mysql_query($sql);

		while($row = mysql_fetch_assoc($qry)) {

			$row[&#039;date_uploaded&#039;] = dateTimeDiff($row[&#039;date_uploaded&#039;]);

			$result_featured[] = array_merge($row, stars_array($row[&#039;indexer&#039;], $row[&#039;updated_rating&#039;]));

		}

	$see_more_title = $config[&#039;most_commented&#039;];

	//PAGINATION PLUS &gt;&gt; start  -- reusable code

	$url = &#039;videos/load&#039;;								//the url to be put in links - EDIT ME

	$additional_url_variable = &#039;/comments/&#039;;			//add addtions information that goes in query string here , e.g. &#039;&amp;load=groups&amp;friends=all&#039; - EDIT ME

	@include_once ($include_base . &#039;/includes/pagination.inc.php&#039;);

	//PAGINATION PLUS &gt;&gt; end

}
</pre>
<p>Here we run the same code again basically with the addition of the pagination. I&#8217;ve changed the pagination query slightly by removing the ORDER BY as there&#8217;s no need to sort the results here only count them. Because of this I&#8217;ve also changed the SELECT to only fetch a minimum of data.</p>
<p>That&#8217;s about it! Did this help? Did it break something? Let me know below.</p>
<p>PS. You can now sign up for a newsletter. Get PHPmotion tips and advice straight to your front door (well your inbox).</p>
]]></content:encoded>
			<wfw:commentRss>http://moulincreatif.com/blog/phpmotion/fixing-most-commented-problems-in-phpmotion/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Update on UpdateWall progress</title>
		<link>http://moulincreatif.com/blog/phpmotion/update-on-updatewall-progress/</link>
		<comments>http://moulincreatif.com/blog/phpmotion/update-on-updatewall-progress/#comments</comments>
		<pubDate>Thu, 27 May 2010 08:25:20 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[PHPmotion]]></category>

		<guid isPermaLink="false">http://moulincreatif.com/blog/?p=118</guid>
		<description><![CDATA[I thought I should post an update as to what&#8217;s happening with the UpdateWall addon for PHPmotion. Well things are going good although it&#8217;s taking longer then I planned. I will hopefully be launching for the first testers within the next week or two. I&#8217;ve been adding more update types trying to include everything I [...]]]></description>
			<content:encoded><![CDATA[<p>I thought I should post an update as to what&#8217;s happening with the UpdateWall addon for PHPmotion. Well things are going good although it&#8217;s taking longer then I planned. I will hopefully be launching for the first testers within the next week or two.</p>
<p>I&#8217;ve been adding more update types trying to include everything I think will be useful, here&#8217;s the current list of actions that can be posted to the UpdateWall.</p>
<ul>
<li>Video uploads</li>
<li>Audio uploads</li>
<li>Image uploads</li>
<li>Blog posts</li>
<li>Comments on videos</li>
<li>Comments on audio</li>
<li>Comments on images</li>
<li>Replies to blogs</li>
<li>New friendships</li>
<li>Newly created groups</li>
<li>Friends joining groups</li>
</ul>
<p>If you can think of additional actions that should be added let me know and I&#8217;ll see if I can implement them for the initial release.</p>
<h2>Additional info about the addon:</h2>
<ul>
<li>There is a built in admin panel where you have multiple settings and control over additional ad spots (currently one extra on the right, more will be added).</li>
<li>The add-on can run in any language. Whilst this has yet to be fully tested the addon was built with internationalization in mind.</li>
<li>You can purchase the addon with either a yearly license or pay as you go monthly.</li>
<li>It will eventually run interscriptably (ok I made that word up). Which means you&#8217;ll be able t o post updates from your phpBB forum, WP blog, etc. to your UpdateWall on PHPmotion!</li>
</ul>
<p>Why is this a yearly or monthly license, you ask. Unlike other add-ons which are just updated when bugs are found, I will be continuously adding new features, options and improvements which you will have immediate access to with an active license.</p>
<p>More news soon! Don&#8217;t forget to follow <a href="http://twitter.com/moulincreatif">me on Twitter</a> if you don&#8217;t already to receive all the latest updates!</p>
]]></content:encoded>
			<wfw:commentRss>http://moulincreatif.com/blog/phpmotion/update-on-updatewall-progress/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Very beta online demo of updatewall</title>
		<link>http://moulincreatif.com/blog/phpmotion/very-beta-online-demo-of-updatewall/</link>
		<comments>http://moulincreatif.com/blog/phpmotion/very-beta-online-demo-of-updatewall/#comments</comments>
		<pubDate>Wed, 19 May 2010 19:06:14 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[PHPmotion]]></category>

		<guid isPermaLink="false">http://moulincreatif.com/blog/?p=110</guid>
		<description><![CDATA[If you&#8217;ve been following me on the UpdateWall Twitter you&#8217;ll now that I&#8217;ve been sorting out some server issues lately. Well I&#8217;ve finally got a working demo online for you all to check out! It&#8217;s still got stuff to be done to finish it off but I&#8217;ve wanted to post a demo online for days [...]]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;ve been following me on the <a href="http://twitter.com/updatewall">UpdateWall Twitter</a> you&#8217;ll now that I&#8217;ve been sorting out some server issues lately. Well I&#8217;ve finally got a working demo online for you all to check out! It&#8217;s still got stuff to be done to finish it off but I&#8217;ve wanted to post a demo online for days now so here goes: <a href="http://demo.updatewall.com/phpmotion/wall.php">http://demo.updatewall.com/phpmotion/wall.php</a></p>
<p>There are some bugs that I&#8217;ve already noted but please report anything you find in the comments below. <span style="text-decoration: line-through;">There are still more update types to be created you can see the ones that are currently ready on the wiki I&#8217;ve been setting up on this page. </span></p>
<p><em>Edit: More up to date info on this blog post: <a href="http://moulincreatif.com/blog/phpmotion/update-on-updatewall-progress/">Update on UpdateWall progress</a></em></p>
<p>I&#8217;ve setup a basic cron job which will automatically post updates to the public wall. To try the wall out fully though I recommend you register, add one of the demo profiles (admin or testGuy) as a friend or even upload stuff yourself. The automatic updates are run once a minute so you may need to wait a bit for something to happen. The automatic updates on post the following: new videos, new audio, video comments &amp; audio comments. To view the other update types you will need to create an account and do the required action (create a group, etc.).</p>
<p>Anyway it&#8217;s 9pm here so time for a break <img src='http://moulincreatif.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  Let me know what you think, what doesn&#8217;t work &amp; what you don&#8217;t like.</p>
]]></content:encoded>
			<wfw:commentRss>http://moulincreatif.com/blog/phpmotion/very-beta-online-demo-of-updatewall/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Updates about the upcoming updatewall</title>
		<link>http://moulincreatif.com/blog/phpmotion/updates-about-the-upcoming-updatewall/</link>
		<comments>http://moulincreatif.com/blog/phpmotion/updates-about-the-upcoming-updatewall/#comments</comments>
		<pubDate>Mon, 17 May 2010 16:45:01 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[PHPmotion]]></category>

		<guid isPermaLink="false">http://moulincreatif.com/blog/?p=104</guid>
		<description><![CDATA[I thought that it was about time to write a short update on the progress of the updatewall. Since my first post many months ago it has been completely rewritten to allow easy creation of new updates or even to modify the existing ones. It will be completely translatable as is PHPmotion and will be [...]]]></description>
			<content:encoded><![CDATA[<p>I thought that it was about time to write a short update on the progress of the updatewall. Since my first post many months ago it has been completely rewritten to allow easy creation of new updates or even to modify the existing ones. It will be completely translatable as is PHPmotion and will be easy to modify the look of.</p>
<p>I still have a few more features to add regarding updates and also a server issue to sort out before posting a demo online and allowing a few users to have access to the add-on to help test it. Hopefully it will be online by the weekend and you will be able to share your thoughts before I release a beta.</p>
<p>If you want to stay up to date easily you can follow the newly created twitter account <a href="http://twitter.com/updatewall">@UpdateWall</a> for real time updates &amp; news. Who knows followers may be get first access to the demo <img src='http://moulincreatif.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://moulincreatif.com/blog/phpmotion/updates-about-the-upcoming-updatewall/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Seo Pack V2 &gt; V3 upgrade kit</title>
		<link>http://moulincreatif.com/blog/phpmotion/seo-pack-v2-v3-upgrade-kit/</link>
		<comments>http://moulincreatif.com/blog/phpmotion/seo-pack-v2-v3-upgrade-kit/#comments</comments>
		<pubDate>Wed, 03 Feb 2010 11:17:57 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[PHPmotion]]></category>
		<category><![CDATA[seo pack]]></category>

		<guid isPermaLink="false">http://moulincreatif.com/blog/?p=83</guid>
		<description><![CDATA[As more and more people are upgrading to V3 I thought it was about time to complete the redirection kit which will help you minimize any effects the link changes might cause. The script is available for download at the end of the post, this only works for people who have the seo pack. If [...]]]></description>
			<content:encoded><![CDATA[<p>As more and more people are upgrading to V3 I thought it was about time to complete the redirection kit which will help you minimize any effects the link changes might cause.</p>
<p>The script is available for download at the end of the post, this only works for people who have the seo pack. If you are upgrading from v2 to V3 but never installed the seo pack you do not need this and it will probably cause problems trying to use it.</p>
<p><span id="more-83"></span></p>
<h3>Installation:</h3>
<p>The installation is really simple but requires one thing, that you still have the add-on. For the script to work the add-on must be available in the /addons/seo-pack folder. It<strong> does not need to be installed</strong> on the site though. If during the upgrade you removed the addons folder then simply re-upload (I repeat you do not need to re-install it) the seo-pack folder into it from the backup you made before upgrading, <em>you did backup first right?</em></p>
<p>Once the folder is in place you need to upload the file in the .zip (there&#8217;s only one) at the end of the post to the root of your PHPmotion installation. And finally one change is required in the .htaccess file:</p>
<pre class="brush: php">ErrorDocument 404 /404.php</pre>
<p>Should read:</p>
<pre class="brush: php">ErrorDocument 404 /upgrade-seo.php</pre>
<p>If PHPmotion is installed in a sub folder you may need to include the sub domain in there like so:</p>
<pre class="brush: php">ErrorDocument 404 /subfolder/upgrade-seo.php</pre>
<p>Now you may check to see if the redirects are working correctly, try visiting yoursite.com/featured_videos (or any other url you setup on the seo pack) and if you are redirected to the correct page on your V3 website then congratulations you just saved your traffic!</p>
<p><span style="color: #999999;"><em><span style="color: #808080;">Please note: this script is provided as is and I cannot be held responsible for any possible loss or change in search rankings. I have created the script and offer it for free to help those with the Seo Pack who wish to upgrade. I do not guarantee any support but will do my best. Should you wish for better support or customisation of the script I can do so at an hourly rate, please<a href="http://moulincreatif.com/contact"> contact me through the form</a> on the website</span>.</em></span></p>
<p><a title="Download the seo pack upgrade kit" href="http://moulincreatif.com/clients/upgrade-seo.zip">Download the upgrade kit here.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://moulincreatif.com/blog/phpmotion/seo-pack-v2-v3-upgrade-kit/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Make search engines love PHPmotion (part 2)</title>
		<link>http://moulincreatif.com/blog/phpmotion/make-search-engines-love-phpmotion-part-2/</link>
		<comments>http://moulincreatif.com/blog/phpmotion/make-search-engines-love-phpmotion-part-2/#comments</comments>
		<pubDate>Mon, 30 Nov 2009 10:27:36 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[PHPmotion]]></category>
		<category><![CDATA[search engine]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://moulincreatif.com/blog/?p=60</guid>
		<description><![CDATA[Part 2 of the PHPmotion seo series is now done (part 1 here)! In this article I will be concentrating on improving the .htaccess file to remove duplicate content &#38; set up correct redirect headers for links. Having 2 addresses to display the same content is bad (search engines may think you&#8217;re trying to trick [...]]]></description>
			<content:encoded><![CDATA[<p>Part 2 of the PHPmotion seo series is now done (<a title="Make search engines love PHPmotion (part 1)" href="http://moulincreatif.com/blog/phpmotion/make-search-engines-love-phpmotion-part-1/">part 1 here</a>)! In this article I will be concentrating on improving the .htaccess file to remove duplicate content &amp; set up correct redirect headers for links.<br />
<span id="more-60"></span><br />
Having 2 addresses to display the same content is bad (search engines may think you&#8217;re trying to trick them) and un-necessary. By having only one link for each page also means that there is no chance of visitors linking to different urls for the same content. A few changes in the .htaccess and all will be well!</p>
<h3>To www or not to www</h3>
<p>Choose which ever you prefer and redirect all the others over to it.</p>
<p><strong>To redirect from non www to www</strong></p>
<pre class="brush: php">RewriteCond %{HTTP_HOST} ^yourdomainname.com [NC]
RewriteRule (.*) http://www.yourdomainname.com/$1 [R=301,L]</pre>
<p><strong>To redirect from www to non www</strong></p>
<pre class="brush: php">RewriteCond %{HTTP_HOST} ^www.yourdomain.com [NC]
RewriteRule ^(.*)$ http://yourdomain.com/$1 [L,R=301]</pre>
<h3>Adjust the audio/video/image/blog listing pages</h3>
<p>If you use a <a href="http://www.duplicatecontent.net/">duplicate content checker</a> to check the following urls:</p>
<ul>
<li> http://v3.phpmotion.com/videos</li>
<li>http://v3.phpmotion.com/videos/load/recent</li>
</ul>
<p>You will see they are both identical. To correct this you could (should) change the links in the template files (themes/yourtheme/templates/main_1.htm) to point to videos/load/recent or vice-versa.</p>
<p>But we don&#8217;t want to lose any existing value on the old links do we? So we&#8217;ll just add a 301 redirect so everyone knows to use the other link from now on. Add the following line after RewriteCond %{REQUEST_FILENAME} !-d</p>
<pre class="brush: php">RewriteRule ^videos(/?)$ videos/load/recent [R=301,L]</pre>
<p>If you chose to replace all videos/load/recent links with just videos you should use this code:</p>
<pre class="brush: php">RewriteRule ^videos/load/recent(/?)$  videos [R=301,L]</pre>
<p>Now you just need to do similar for each of the media links in the main menu (audios, blogs &#038; images). You only need to do this for the load/recent links the other load/featured, etc&#8230; should be fine.</p>
<p>If done correctly (once you make the changes make sure that they work!) then you&#8217;ll have just done yourself a favor. Also if you don&#8217;t already use <a href="https://www.google.com/webmasters/tools/">Google Webmaster tools</a> then make sure you check it out! It will help show issues with your website and also give you some info like the top search queries, etc..</p>
]]></content:encoded>
			<wfw:commentRss>http://moulincreatif.com/blog/phpmotion/make-search-engines-love-phpmotion-part-2/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
	</channel>
</rss>

