<?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>The Technoblog</title>
	<atom:link href="http://technoblog.novaclic.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://technoblog.novaclic.com</link>
	<description>Pure technology inside !</description>
	<lastBuildDate>Fri, 30 Jan 2026 16:42:01 +0000</lastBuildDate>
	
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>How to switch a VPN connection to a private network</title>
		<link>http://technoblog.novaclic.com/computer/vpn-private-network/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=vpn-private-network</link>
		<comments>http://technoblog.novaclic.com/computer/vpn-private-network/#comments</comments>
		<pubDate>Tue, 23 Jul 2024 11:29:29 +0000</pubDate>
		<dc:creator>diablo</dc:creator>
				<category><![CDATA[computer]]></category>
		<category><![CDATA[informatique]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://technoblog.novaclic.com/?p=255</guid>
		<description><![CDATA[<p><img class="aligncenter size-full wp-image-268" src="http://technoblog.novaclic.com/files/2024/07/vpn-reseau-public.jpeg" alt="vpn-reseau-public" width="580" height="170" />To change your OpenVPN, Wireguard or other VPN connection from &#8220;public network&#8221; to &#8220;private network&#8221; in Windows 10, you can use one of the following methods.</p>
<p>Note: you can use the reverse to transform a VPN connection from &#8220;private network&#8221; to…</p>]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-268" src="http://technoblog.novaclic.com/files/2024/07/vpn-reseau-public.jpeg" alt="vpn-reseau-public" width="580" height="170" />To change your OpenVPN, Wireguard or other VPN connection from &#8220;public network&#8221; to &#8220;private network&#8221; in Windows 10, you can use one of the following methods.</p>
<p>Note: you can use the reverse to transform a VPN connection from &#8220;private network&#8221; to &#8220;public network&#8221;, but that would be weird, so I&#8217;d love to hear your use case in a comment <img src='http://technoblog.novaclic.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p><span id="more-255"></span></p>
<p><strong>Method 1: Via Network Settings</strong></p>
<ol>
<li><strong>Open Settings </strong>:
<ul>
<li>Click on the Start button, then on Settings (gear       icon).</li>
</ul>
</li>
<li><strong>Go to Network and Internet </strong>:
<ul>
<li>In Settings, click on Network and Internet.</li>
</ul>
</li>
<li><strong>Changing connection properties </strong>:
<ul>
<li>Click on Status       in the left-hand menu, then on Edit connection properties under your VPN connection.</li>
<li>Under Network       profile, select Private.</li>
</ul>
</li>
</ol>
<p><strong>Method 2: Using PowerShell</strong></p>
<ol>
<li><strong>Open Windows PowerShell as administrator </strong>:
<ul>
<li>Click on the Start button, type PowerShell,       right-click on Windows       PowerShell and select Run as administrator.</li>
</ul>
</li>
<li><strong>List network connections </strong>:
<ul>
<li>Type the following command to list all network connections:</li>
</ul>
</li>
</ol>
<p>Get-NetConnectionProfile</p>
<ul>
<li>
<ul>
<li>Note the Name or InterfaceAlias       of your VPN connection.</li>
</ul>
</li>
</ul>
<ol>
<li><strong>Change network type </strong>:
<ul>
<li>Type the following command to change the network type to private,       replacing Name or InterfaceAlias       with the one you noted earlier:</li>
</ul>
</li>
</ol>
<p>Set-NetConnectionProfile -Name &#8220;NomDeVotreConnexionVPN&#8221; -NetworkCategory Private</p>
<p>OR</p>
<p>Set-NetConnectionProfile -InterfaceAlias &#8220;NomDeVotreConnexionVPN&#8221; -NetworkCategory Private</p>
<p><strong>Method 3: Using Registry Editor</strong></p>
<ol>
<li><strong>Open Registry Editor </strong>:
<ul>
<li>Press Win +       R to open the Run dialog box.</li>
<li>Type regedit       and press Enter.</li>
</ul>
</li>
<li><strong>Navigate to the appropriate registry key </strong>:
<ul>
<li>Access the following key:</li>
</ul>
<ul>
<li> <code>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\Profiles</code></li>
</ul>
</li>
<li><strong>Identify the network profile </strong>:
<ul>
<li>In Profiles,       you&#8217;ll see several folders with alphanumeric names.</li>
<li>Click on each folder and check the ProfileName to       identify the profile corresponding to your VPN connection.</li>
</ul>
</li>
<li><strong>Change network type </strong>:
<ul>
<li>Once you&#8217;ve identified the right profile, double-click Category.</li>
<li>Change the value from 0 (Public)       to 1 (Private).</li>
</ul>
</li>
<li><strong>Restart network service </strong>:
<ul>
<li>Press Win +       R, type services.msc, and       press Enter.</li>
<li>Find and restart Network Location Awareness and Network List Service.</li>
</ul>
</li>
</ol>
<p>By following one of these methods, your VPN connection should be considered a &#8220;private connection&#8221; by Windows 10.</p>
]]></content:encoded>
			<wfw:commentRss>http://technoblog.novaclic.com/computer/vpn-private-network/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>

		</item>
		<item>
		<title>Howto workaround not secured password field alert from Google Chrome 56</title>
		<link>http://technoblog.novaclic.com/internet/howto-workaround-not-secured-password-field-alert-from-google-chrome-56/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=howto-workaround-not-secured-password-field-alert-from-google-chrome-56</link>
		<comments>http://technoblog.novaclic.com/internet/howto-workaround-not-secured-password-field-alert-from-google-chrome-56/#comments</comments>
		<pubDate>Thu, 26 Jan 2017 07:55:52 +0000</pubDate>
		<dc:creator>diablo</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[code hack]]></category>
		<category><![CDATA[dirty]]></category>
		<category><![CDATA[Google]]></category>

		<guid isPermaLink="false">http://technoblog.novaclic.com/?p=236</guid>
		<description><![CDATA[(Français) Si vous n'avez pas le moyen d'activer HTTPS sur votre site, voici une astuce qui permet de faire disparaitre le message d'erreur anxiogène de Chrome et autres navigateurs web...]]></description>
			<content:encoded><![CDATA[<p>Since Google Chrome build 56, password fields will trigger a warning if the page in not secured (read: HTTPS).</p>
<p>If your are a webmaster, you may even have received this kind of alert message from Google like this one :</p>
<h2>Unsecure password collection will trigger warning display in Chrome 56 for &#8220;your site&#8221;</h2>
<p>The password field is a specific HTML field type, that will automatically mask the typed in characters, like the one below (yellow background) :</p>
<div id="attachment_237" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-237  " src="http://technoblog.novaclic.com/files/2017/01/password-field.png" alt="password field hides typed characters" width="540" height="40" /><p class="wp-caption-text">password field hides typed characters</p></div>
<p>To avoid this warning, the best option is of course to move that page to HTTPS. However, if you cannot migrate the page to HTTPS yet because it is too expensive, or requires too much code changes, or you simply don&#8217;t want to implement HTTPS because it&#8217;s not worth the effort (nothing important behind this password field), here are 2 tricks to avoid the chrome 56 password warning message.</p>
<h2>Avoiding the Chrome 56 password warning<span id="more-236"></span></h2>
<p>The first trick below will hide the warning message as long as the password field is not used by the user. This trick is especially useful when a login area is embedded on all pages of your website, is the header or menu for instance.</p>
<p>To implement this trick, in the HTML source code, simply change the password field type to something different, and <strong>add a &#8220;onfocus&#8221;</strong> javascript event, that will revert to the actual password type field. here an example :</p>
<div id="attachment_239" class="wp-caption aligncenter" style="width: 560px"><img class="size-full wp-image-239" src="http://technoblog.novaclic.com/files/2017/01/password-field-html.png" alt="Regular password field in html before the change" width="550" height="21" /><p class="wp-caption-text">Regular password field in html before the change</p></div>
<p>After the change, the html input markup will look like:</p>
<div id="attachment_240" class="wp-caption aligncenter" style="width: 560px"><img class="size-full wp-image-240" src="http://technoblog.novaclic.com/files/2017/01/password-trick1.png" alt="Modified password markup" width="550" height="21" /><p class="wp-caption-text">Modified password markup</p></div>
<p>To implement this trick on your website, reproduce the changes from the &#8220;original ocde&#8221; above to the &#8220;modified code&#8221;.</p>
<p>With this trick, the Google Chrome 56 warning message will not fire until the fake password field is active.</p>
<p>If you want to avoid the warning message even with the fake password field in use, you&#8217;ll need the second trick below</p>
<h2>Fully removing the Chrome 56 password warning</h2>
<p>The ultimate way to remove the Googl Chrome 56 &#8220;not secure&#8221; warning is to &#8230; definitely change the field type from password to something else. I recommend not using the &#8220;text&#8221; type, to easy finding back the original password fields. I personnaly use the &#8220;novapass&#8221; field type.</p>
<p>As a side effect of this trick, the password will be displayed as the user type in, of course.</p>
<p><strong>To implement this hack, change a typical password field like :</strong></p>
<div id="attachment_239" class="wp-caption aligncenter" style="width: 560px"><img class="size-full wp-image-239" src="http://technoblog.novaclic.com/files/2017/01/password-field-html.png" alt="Regular password field in html before the change" width="550" height="21" /><p class="wp-caption-text">Regular password field in html before the change</p></div>
<p><strong>By this kind of code :</strong></p>
<div id="attachment_244" class="wp-caption aligncenter" style="width: 560px"><img class="size-full wp-image-244" src="http://technoblog.novaclic.com/files/2017/01/password-field-trick2.png" alt="Removing the password type removes the Chrome warning" width="550" height="21" /><p class="wp-caption-text">Removing the password type removes the Chrome warning</p></div>
<p>We implemented this 2 tricks on several websites, and passes the Google Chrome 56 test. What about you ?</p>
]]></content:encoded>
			<wfw:commentRss>http://technoblog.novaclic.com/internet/howto-workaround-not-secured-password-field-alert-from-google-chrome-56/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>

		</item>
		<item>
		<title>Social Engineering strikes back</title>
		<link>http://technoblog.novaclic.com/internet/social-engineering-strikes-back/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=social-engineering-strikes-back</link>
		<comments>http://technoblog.novaclic.com/internet/social-engineering-strikes-back/#comments</comments>
		<pubDate>Tue, 07 Aug 2012 17:12:52 +0000</pubDate>
		<dc:creator>diablo</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[computer]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[mat honan]]></category>
		<category><![CDATA[social engineering]]></category>

		<guid isPermaLink="false">http://technoblog.novaclic.com/?p=213</guid>
		<description><![CDATA[<p><img src="http://technoblog.novaclic.com/files/2012/08/digitaly-destroyed.jpg" alt="digitally destroyed" width="582" height="199" class="aligncenter size-full wp-image-217" /></p>
<p>In a very <a href="http://www.wired.com/gadgetlab/2012/08/apple-amazon-mat-honan-hacking/all/" target="_blank">detailed article</a>, Mat Honan, a Wired.com journalist, explains how he&#8217;s digital life exploded in 15 minutes.</p>
<p>As he explains:</p>
<blockquote><p>I realized something was wrong at about 5 p.m. on Friday. I was playing with my daughter when <strong>my iPhone…</strong></p></blockquote>]]></description>
			<content:encoded><![CDATA[<p><img src="http://technoblog.novaclic.com/files/2012/08/digitaly-destroyed.jpg" alt="digitally destroyed" width="582" height="199" class="aligncenter size-full wp-image-217" /></p>
<p>In a very <a href="http://www.wired.com/gadgetlab/2012/08/apple-amazon-mat-honan-hacking/all/" target="_blank">detailed article</a>, Mat Honan, a Wired.com journalist, explains how he&#8217;s digital life exploded in 15 minutes.</p>
<p>As he explains:</p>
<blockquote><p>I realized something was wrong at about 5 p.m. on Friday. I was playing with my daughter when <strong>my iPhone suddenly powered down</strong>. I was expecting a call, so I went to plug it back in.<span id="more-213"></span></p>
<p>It then rebooted to the setup screen. This was irritating, but I wasn’t concerned. I assumed it was a software glitch. And, my phone automatically backs up every night. I just assumed it would be a pain in the ass, and nothing more. I entered my iCloud login to restore, and <strong>it wasn’t accepted</strong>. Again, I was irritated, but not alarmed.</p>
<p>(&#8230;) When I opened my laptop, <strong>an iCal message popped up telling me that my Gmail account information was wrong</strong>. Then <strong>the screen went gray</strong>, and asked for a four-digit PIN.</p>
<p>(&#8230;) By now, I knew something was very, very wrong. For the first time it occurred to me that I was being hacked.</p></blockquote>
<p>All of this occured in few minutes. But was the result of a well prepared attack. And this attack deeply relied on Social Engineering.</p>
<h2>Social engineering: finding the flaw in the process</h2>
<p>The basic of <a href="http://en.wikipedia.org/wiki/Social_engineering_(security)" target="_blank">social engineering</a> is to find  a trick to gain access to a place where you&#8217;re not supposed to be. The place can be real (a concert, VIP lounge, a company restricted area&#8230;) or virtual (iCloud account, Amazon account, twitter account&#8230;).</p>
<p>Here, the hacker managed to spoof the identity of Mat Honan during phone calls toward Amazon and Apple hotlines.</p>
<p>But before that, the hacker collected some personal data around the victim, Mat Honan: email address (found on his website), personal address (found on the whois record).</p>
<p>Scared about the outcome? Read <a href="http://www.wired.com/gadgetlab/2012/08/apple-amazon-mat-honan-hacking/all/" target="_blank">the whole article</a> on wired, and see what you need to change if you don&#8217;t want to be the next one&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://technoblog.novaclic.com/internet/social-engineering-strikes-back/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>

		</item>
		<item>
		<title>Wordpress 3.2 : a major move</title>
		<link>http://technoblog.novaclic.com/wordpress/since-wordpress-3-2/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=since-wordpress-3-2</link>
		<comments>http://technoblog.novaclic.com/wordpress/since-wordpress-3-2/#comments</comments>
		<pubDate>Wed, 13 Jul 2011 08:52:07 +0000</pubDate>
		<dc:creator>diablo</dc:creator>
				<category><![CDATA[wordpress]]></category>
		<category><![CDATA[3.2]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[mysql4]]></category>
		<category><![CDATA[mysql5]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[php4]]></category>
		<category><![CDATA[php5]]></category>

		<guid isPermaLink="false">http://technoblog.novaclic.com/?p=138</guid>
		<description><![CDATA[<p style="text-align: center"><img class="aligncenter" src="http://technoblog.novaclic.com/files/2011/07/wp32.jpg" alt="wp 3.2 is out!" /><br />
Wordpress 3.2 is a new major release, <a href="http://technoblog.novaclic.com/wordpress/wordpress-2-9-and-wordpress-2-9-1/">like 2.9 was</a>.</p>
<p>But this time, not only because this new version of Wordpress introduces very exciting features, but also because wordpress 3.2 drops backward compatibility with legacy browser (ie6), PHP engine 4 (PHP4)…</p>]]></description>
			<content:encoded><![CDATA[<p style="text-align: center"><img class="aligncenter" src="http://technoblog.novaclic.com/files/2011/07/wp32.jpg" alt="wp 3.2 is out!" /><br />
Wordpress 3.2 is a new major release, <a href="http://technoblog.novaclic.com/wordpress/wordpress-2-9-and-wordpress-2-9-1/">like 2.9 was</a>.</p>
<p>But this time, not only because this new version of Wordpress introduces very exciting features, but also because wordpress 3.2 drops backward compatibility with legacy browser (ie6), PHP engine 4 (PHP4) and Mysql 4.x (5.0+ required).</p>
<h2><span id="more-138"></span>Some PHP and Mysql restrictions</h2>
<p>Indeed, if you try to install a recent wordpress (3.2 or greater), you may face some error messages. Before proceeding, make sure your hosting plan offers :</p>
<ul>
<li><a title="Glossary" href="http://codex.wordpress.org/Glossary#PHP">PHP</a> 5.2.4 or greater (old requirement was PHP 4.3 or greater since <a title="Version 2.5" href="http://codex.wordpress.org/Version_2.5">WordPress 2.5</a> )</li>
<li><a title="Glossary" href="http://codex.wordpress.org/Glossary#MySQL">MySQL</a> 5.0.15 or greater (old requirement was MySQL 4.1.2 or greater since <a title="Version 2.9" href="http://codex.wordpress.org/Version_2.9">WordPress 2.9</a> , MySQL 4.x prior to WP2.9)</li>
</ul>
<p>If you get a message like:</p>
<blockquote><p>Your server is running PHP version 4.4.9 but WordPress 3.2.1 requires at least 5.2.4.</p></blockquote>
<p>Don&#8217;t panic, you may keep your hosting plan by tweaking some settings. Indeed, some allow to &#8220;force&#8221; the version of PHP used. For instance, <a href="http://neomee.com/dico/alwaysdata" target="_blank">Alwaysdata</a> will provide such an option in your admin panel:</p>
<p><a href="http://neomee.com/dico/alwaysdata"><img class="aligncenter size-full wp-image-140" src="http://technoblog.novaclic.com/files/2011/07/php5-ad.png" alt="php5" width="529" height="77" /></a>Other hosting companies will allow to force php5 by using a specific command to be inserted in the &#8220;.htaccess&#8221; file located at the root of the web directory (usually &#8220;www&#8221;): &#8220;AddType x-mapp-php5 .php&#8221; for <a href="http://neomee.com/dico/1and1" target="_blank">1and1</a>, &#8220;AddHandler x-httpd-php5 .php&#8221; for <a href="http://neomee.com/dico/godaddy" target="_blank">GoDaddy</a>, &#8220;SetEnv PHP_VER 5&#8243; for <a href="http://www.ovh.com" target="_blank">OVH</a>, &#8230;</p>
<h2>A bunch of new features</h2>
<p>Wordpress 3.2 introduces a deep change in the backend: lighter, faster, easier to use&#8230; Just try by yourself or watch the video below.</p>
<p>For copywritters, a new editing mode where you get a &#8220;blank sheet&#8221;, without any disburbing icon or menu around.</p>
<p>And a brand new HTML5 theme, named <a href="http://wordpress.org/extend/themes/twentyeleven" target="_blank">Twenty Eleven</a>, that embed nice features like the ability to have multiple rotating header images to highlight all of your favorite photos.</p>
<p style="text-align: left">For all of this, have a look at the Wordpress.tv video:</p>
<p style="text-align: center"></p>
]]></content:encoded>
			<wfw:commentRss>http://technoblog.novaclic.com/wordpress/since-wordpress-3-2/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>

		</item>
		<item>
		<title>Howto read an ISO file or mount a virtual CD drive (for free)</title>
		<link>http://technoblog.novaclic.com/computer/read-an-iso-file-or-mount-a-virtual-cd-drive-for-free/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=read-an-iso-file-or-mount-a-virtual-cd-drive-for-free</link>
		<comments>http://technoblog.novaclic.com/computer/read-an-iso-file-or-mount-a-virtual-cd-drive-for-free/#comments</comments>
		<pubDate>Mon, 17 Jan 2011 07:26:34 +0000</pubDate>
		<dc:creator>diablo</dc:creator>
				<category><![CDATA[computer]]></category>
		<category><![CDATA[burning]]></category>
		<category><![CDATA[fichier iso]]></category>
		<category><![CDATA[gravure]]></category>
		<category><![CDATA[image cd]]></category>
		<category><![CDATA[iso file]]></category>
		<category><![CDATA[virtualcd]]></category>

		<guid isPermaLink="false">http://technoblog.novaclic.com/?p=51</guid>
		<description><![CDATA[<p>Files with the .iso extension are files ready for use with most  burning software in order to create a CD. However, sometimes, you don&#8217;t want the whole data inside the CD, just a file, and would like to avoid burning…</p>]]></description>
			<content:encoded><![CDATA[<p>Files with the .iso extension are files ready for use with most  burning software in order to create a CD. However, sometimes, you don&#8217;t want the whole data inside the CD, just a file, and would like to avoid burning a CD just for that? Here are some solutions.</p>
<h2>Open a .iso file like an archive</h2>
<p>As the title suggests, we&#8217;ll use a sofware able to read ISO file to explore the .iso file content. I&#8217;ve currently found the following tools able to read an ISO file:</p>
<ul>
<li>WinRAR, a shareware <a href="http://www.rarlab.com/download.htm">free to try</a>.</li>
<li><a href="http://www.7-zip.org/">7-Zip, which is free and opensource</a>.</li>
</ul>
<p>In both cases, you simply open the ISO file and access it through the embeded  explorer. You may drag/drop files from the ISO file to your hard-disk.</p>
<p style="text-align: center"><img class="aligncenter" src="/files/2009/12/7zip-iso.gif" alt="7zip iso file explorer" /></p>
<h2><span id="more-51"></span>Mount a virtual CD drive</h2>
<p>If you wish to access the CD as if you burnt it, you need to use a virtual CD drive. There are plenty of offers, here are 2 freewares:</p>
<ul>
<li><a href="http://www.magiciso.com/tutorials/miso-magicdisc-overview.htm">MagicISO</a></li>
<li><a href="http://www.slysoft.com/en/download.html">Virtual CloneDrive</a></li>
</ul>
<h2>Other tools to manipulate ISO files</h2>
<p>And you, are you using any other (free) tool to read or even create ISO files?</p>
<div id="_mcePaste" style="overflow: hidden;width: 1px;height: 1px">http://www.magiciso.com/tutorials/miso-magicdisc-overview.htmMagicSIO</div>
]]></content:encoded>
			<wfw:commentRss>http://technoblog.novaclic.com/computer/read-an-iso-file-or-mount-a-virtual-cd-drive-for-free/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>

		</item>
		<item>
		<title>Dirty hack: force primary category for wordpress post permalink</title>
		<link>http://technoblog.novaclic.com/wordpress/force-primary-category-for-wordpress-post-permalink/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=force-primary-category-for-wordpress-post-permalink</link>
		<comments>http://technoblog.novaclic.com/wordpress/force-primary-category-for-wordpress-post-permalink/#comments</comments>
		<pubDate>Thu, 24 Jun 2010 16:50:55 +0000</pubDate>
		<dc:creator>diablo</dc:creator>
				<category><![CDATA[PHP programming]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[category]]></category>
		<category><![CDATA[code hack]]></category>
		<category><![CDATA[dirty]]></category>
		<category><![CDATA[permalink]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://technoblog.novaclic.com/?p=101</guid>
		<description><![CDATA[<p style="text-align: center"><img class="aligncenter" src="http://technoblog.novaclic.com/files/2010/06/the_permalink.png" alt="The permalink from Wordpress CODEX" /></p>
<p>I&#8217;m not especially proud of this hack. However, I was getting crazy by how the category used for a post permalink is choosen. And I could not figure out a clean way to control which is the primary permalink (I…</p>]]></description>
			<content:encoded><![CDATA[<p style="text-align: center"><img class="aligncenter" src="http://technoblog.novaclic.com/files/2010/06/the_permalink.png" alt="The permalink from Wordpress CODEX" /></p>
<p>I&#8217;m not especially proud of this hack. However, I was getting crazy by how the category used for a post permalink is choosen. And I could not figure out a clean way to control which is the primary permalink (I hope it&#8217;s not part of Wordpress 3.0&#8230;).</p>
<p><strong>You may need to set the primary category for permalink in two situations:</strong></p>
<ul>
<li>First, you want some consistency among your posts, having them in the same primary category.</li>
<li>Second, it&#8217;s never fun when, by adding an additional category to an existing post, it changes the post permalink!</li>
</ul>
<p><span id="more-101"></span>If you wonder how the &#8220;primary&#8221; category for a permalink is defined by wordpress, the answer is quite simple: they are ordered by ascending ID. So, if you add an old category to an existing post, your existing post will have a new permalink. And if, like me, you&#8217;re using <strong>wordpressMu</strong>, you&#8217;ll discover that a newly added category in a blog may have a very low ID because this category (or tag&#8230;) has already been used by any of the other blogs.</p>
<h2>The dirty hack</h2>
<p>It&#8217;s really not a code-hack I&#8217;m proud of. However, as I needed something, I believe some others may need it too, that&#8217;s why I&#8217;m sharing it.</p>
<p>To be on the safe side, I recommend to leave this hack in a standalone file (with my active theme files, in my case), and include it in the functions.php file.</p>
<p>The idea is to <strong>alter the &#8220;the_permalink&#8221; filter</strong>. So, let&#8217;s add the filter:</p>
<pre class="brush: php; light: true; title: ; notranslate">add_filter('the_permalink', 'custom_cat_order');</pre>
<p>Then, the custom filter function:</p>
<pre class="brush: php; title: ; notranslate">// Order by cat_order, otherwise by name, assuming it's a post permalink (dirty!)
function custom_cat_order( $content ) {
global $post;

// in case no post data found, do nothing
if ( @empty($post-&amp;gt;ID) ) return $content;
// otherwise, assuming current post is the right post (dirty!)

// custom/primary slug cat order defined here (dirty!)
$cat_order = array(&quot;directory&quot;, &quot;bonus&quot;, &quot;blog&quot;);
// add all remaining categories (with duplicates, dirty!)
$all_cats = get_categories();

// Build an array with categories slug
foreach( $all_cats as $cat)
$cat_order[] = $cat-&amp;gt;slug;

$cats = get_the_category($post-&amp;gt;ID);
if ( $cats ) {
// Build an array with Post categories slug
   foreach( $cats as $cat)
   $post_cats[] = $cat-&amp;gt;slug;
   $the_cats = array_intersect($cat_order, $post_cats);
   usort($cats, '_usort_terms_by_ID'); // order by ID
   $category0 = $cats[0]-&amp;gt;slug;

   $the_cat = array_shift($the_cats);
   // Assuming category is in-between slashes (dirty!)
   $content = str_replace(&quot;/&quot;.$category0.&quot;/&quot;, &quot;/&quot;.$the_cat.&quot;/&quot;, $content);
}

return $content;
}</pre>
<p>So, basically, I&#8217;m defining the categories with higher priority in the <code>$cat_order</code> array, and at the end search/replace the old category slug by the one with higher priority.</p>
<p>As you can see, it&#8217;s quite dirty&#8230; <strong>So if you figure out a cleanest way to do it, please let me know!</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://technoblog.novaclic.com/wordpress/force-primary-category-for-wordpress-post-permalink/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>

		</item>
		<item>
		<title>Howto Reduce Hard Drive Noise using AAM</title>
		<link>http://technoblog.novaclic.com/computer/aam-reduces-hard-drive-noise/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=aam-reduces-hard-drive-noise</link>
		<comments>http://technoblog.novaclic.com/computer/aam-reduces-hard-drive-noise/#comments</comments>
		<pubDate>Tue, 09 Feb 2010 06:56:03 +0000</pubDate>
		<dc:creator>diablo</dc:creator>
				<category><![CDATA[computer]]></category>
		<category><![CDATA[aam]]></category>
		<category><![CDATA[bruit]]></category>
		<category><![CDATA[disque dur]]></category>
		<category><![CDATA[hard disk]]></category>
		<category><![CDATA[hdd]]></category>
		<category><![CDATA[hdparm]]></category>
		<category><![CDATA[Hitachi Feature Tool]]></category>
		<category><![CDATA[noise]]></category>
		<category><![CDATA[silence]]></category>
		<category><![CDATA[smart]]></category>

		<guid isPermaLink="false">http://technoblog.novaclic.com/?p=58</guid>
		<description><![CDATA[<p style="text-align: center"><img src="http://technoblog.novaclic.com/files/2010/01/hardisks.jpg" alt="hard disk drives" /></p>
<p>Most of modern hard drives support a function called AAM (Automatic Acoustic Management), often disabled by default. <strong>Noise reduction is obtained by reducing the head speed</strong>, thus increasing the disk access time. If you prefer silence over performance you might…</p>]]></description>
			<content:encoded><![CDATA[<p style="text-align: center"><img src="http://technoblog.novaclic.com/files/2010/01/hardisks.jpg" alt="hard disk drives" /></p>
<p>Most of modern hard drives support a function called AAM (Automatic Acoustic Management), often disabled by default. <strong>Noise reduction is obtained by reducing the head speed</strong>, thus increasing the disk access time. If you prefer silence over performance you might want to enable AAM to decrease the noise level of your hard drive and slightly increase the access time.</p>
<p>Note that access time is about moving the head, not transfering data. So, activating AAM may have no impact to your overall system at all. Highest performance impact reported is around -5%.Thus, for a desktop computer (or notebook), it&#8217;s wise to enable AAM. In addition, enabling AAM (and thus reducing head speed) has a good side-effect: <strong>reduce the disk power consumption</strong>, especially interesting for a laptop.</p>
<p>Choose the best value for AAM by tweaking around the recommended one, depending on the silent level you target. Possible values depend on the drive itself (maybe from zero to 254, or only two states: 128 or 254 for instance).</p>
<h2 style="font-size: 1.5em"><img src="http://technoblog.novaclic.com/wp-includes/js/tinymce/plugins/wordpress/img/trans.gif" alt="" /></h2>
<h2><span id="more-58"></span>Howto Enable AAM on a computer</h2>
<p>Just download the freeware <a title="hitachi feature tool" href="http://www.hitachigst.com/hdd/support/download.htm" target="_blank">Hitachi Feature Tool</a>, and run the setup tool to generate a bootable floppy or CD. Then, boot your computer over the created media to start the <strong>IBM/Hitachi Feature Tool</strong>. This tool makes it possible to enable, disable or choose a custom value for the Automatic Accustic Management feature, for any disk brand (not only Hitachi).</p>
<h2>Howto enable AAM on a Linux box</h2>
<p>Under Linux, you will need the hdparm utility. It is included in most Linux distributions, but on some &#8220;boxes&#8221;, like the Synology NAS, you&#8217;ll need to <a href="http://forum.synology.com/wiki/index.php/Overview_on_modifying_the_Synology_Server%2C_bootstrap%2C_ipkg_etc#Installing_compiled.2Fbinary_programs_using_ipkg">install it first</a>.</p>
<p>Then, setting AAM is as simple as:</p>
<blockquote><p>#hdparm -M 128 /dev/hda</p></blockquote>
<p>to set a value of 128 (rather quiet) for drive hda. The higher the value, the higher the speed (and thus the noise).</p>
<p><span> </span></p>
]]></content:encoded>
			<wfw:commentRss>http://technoblog.novaclic.com/computer/aam-reduces-hard-drive-noise/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>

		</item>
		<item>
		<title>Wordpress Plugin Google Analytics reset forever</title>
		<link>http://technoblog.novaclic.com/wordpress/wordpress-plugin-google-analytics-reset-forever/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=wordpress-plugin-google-analytics-reset-forever</link>
		<comments>http://technoblog.novaclic.com/wordpress/wordpress-plugin-google-analytics-reset-forever/#comments</comments>
		<pubDate>Wed, 27 Jan 2010 09:29:39 +0000</pubDate>
		<dc:creator>diablo</dc:creator>
				<category><![CDATA[wordpress]]></category>
		<category><![CDATA[bug]]></category>
		<category><![CDATA[google analytics]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[workaround]]></category>

		<guid isPermaLink="false">http://technoblog.novaclic.fr/?p=7</guid>
		<description><![CDATA[<p style="text-align: center"><img class="aligncenter" src="http://technoblog.novaclic.com/files/2010/01/ga4wp.jpg" alt="Google Analytics Plugin for Wordpress" /></p>
<p>The <a href="http://wordpress.org/extend/plugins/google-analytics-for-wordpress/">google analytics plugin</a> for wordpress is useful: it allows to insert the google analytics tracking code without any change to the theme file.</p>
<p>There is however something very irritating with this plugin: each time I upgraded the plugin, I had to…</p>]]></description>
			<content:encoded><![CDATA[<p style="text-align: center"><img class="aligncenter" src="http://technoblog.novaclic.com/files/2010/01/ga4wp.jpg" alt="Google Analytics Plugin for Wordpress" /></p>
<p>The <a href="http://wordpress.org/extend/plugins/google-analytics-for-wordpress/">google analytics plugin</a> for wordpress is useful: it allows to insert the google analytics tracking code without any change to the theme file.</p>
<p>There is however something very irritating with this plugin: each time I upgraded the plugin, I had to re-enter the settings. And more frustrating: as long as you don&#8217;t update the settings, your stats are not recorded anymore by <a href="http://www.Google.com/Analytics">google analytics</a>. This is why I&#8217;m almost not upgrading it anymore <img src='http://technoblog.novaclic.com/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /> </p>
<p>I got an even worst surprise after an upgrade of both worpdress and the google analytics plugin: I was unable to save the parametrs, each try ended with:<span id="more-7"></span></p>
<blockquote><p>Google Analytics settings reset to default.</p></blockquote>
<p>For an unknown reason, after saving, the corrupted settings were reloaded.</p>
<p>The only workaround I found was a bit drastic: in the MySQL <strong>wp_options</strong> table, I&#8217;ve simply erased the &#8220;GoogleAnalyticsPP&#8221; entry.</p>
<p>To do the same thing (at your own risk, of course):</p>
<ul>
<li>Access your wordpress database using phpmyadmin for instance;</li>
<li>Search into the wp_options table the row where option_name = <span class="syntax"><span class="syntax_quote syntax_quote_single">&#8216;GoogleAnalyticsPP&#8217; </span></span></li>
<li><span class="syntax"><span class="syntax_quote syntax_quote_single">Edit this entry, erase content, save.<br />
</span></span></li>
</ul>
<p><span class="syntax"><span class="syntax_alpha syntax_alpha_reservedWord"> </span><span class="syntax_quote syntax_quote_single">You should now be again able to save your google analytics parameters.</span></span></p>
<div id="_mcePaste" style="overflow: hidden;width: 1px;height: 1px">
<h2>Google Analytics for WordPress Configuration</h2>
</div>
]]></content:encoded>
			<wfw:commentRss>http://technoblog.novaclic.com/wordpress/wordpress-plugin-google-analytics-reset-forever/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>

		</item>
		<item>
		<title>Search files using PHP with a mask pattern</title>
		<link>http://technoblog.novaclic.com/php-programming/php-search-files-with-mask-pattern/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=php-search-files-with-mask-pattern</link>
		<comments>http://technoblog.novaclic.com/php-programming/php-search-files-with-mask-pattern/#comments</comments>
		<pubDate>Mon, 11 Jan 2010 09:41:56 +0000</pubDate>
		<dc:creator>diablo</dc:creator>
				<category><![CDATA[PHP programming]]></category>
		<category><![CDATA[filesearch]]></category>
		<category><![CDATA[php5]]></category>
		<category><![CDATA[search]]></category>

		<guid isPermaLink="false">http://technoblog.novaclic.com/?p=80</guid>
		<description><![CDATA[<p>This morning, I cam to a very, very basic need: detect whether a file matching a specific pattern (like &#8216;*.txt&#8217;) is available.</p>
<p>However, I could not find any ready to use PHP function, although PHP5 provides some interesting functions, like <a href="http://www.php.net/manual/en/function.scandir.php">scandir()</a>.</p>
<p>After…</p>]]></description>
			<content:encoded><![CDATA[<p>This morning, I cam to a very, very basic need: detect whether a file matching a specific pattern (like &#8216;*.txt&#8217;) is available.</p>
<p>However, I could not find any ready to use PHP function, although PHP5 provides some interesting functions, like <a href="http://www.php.net/manual/en/function.scandir.php">scandir()</a>.</p>
<p>After completing writting such a function, I decided to share it. So here is it.</p>
<p>Bare in mind it requires PHP5 (or later), as it relies on <a href="http://www.php.net/manual/en/function.scandir.php">scandir()</a> and on <a href="http://fr.php.net/manual/en/function.fnmatch.php">fnmatch()</a>. Finally, this function while return the filtered directory content, regardless of the content being a file, a link or a directory.</p>
<p>Additional feature: by default, if you call the function more than once in your script in order to scan the same directory, it will read the directory only once: next times, it will use a cached content. To disable caching, set the third parameter to 1.</p>
<pre class="brush: php; title: ; notranslate">function searchdir( $path='.', $mask='*', $nocache=0 ){
 static $dir = array();
 if ( !isset($dir[$path]) || $nocache) {
 $dir[$path] = scandir($path);
 }
 foreach ($dir[$path] as $i=&amp;gt;$entry) {
 if ($entry!='.' &amp;amp;&amp;amp; $entry!='..' &amp;amp;&amp;amp; fnmatch($mask, $entry) ) {
 $sdir[] = $entry;
 }
 }
 if ($nocache)
 unset($dir);
 return ($sdir);
}</pre>
<p><strong>Did you find this small function useful? Do you have any improvment suggestion?</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://technoblog.novaclic.com/php-programming/php-search-files-with-mask-pattern/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>

		</item>
		<item>
		<title>Wordpress 2.9 is out&#8230; Wordpress 2.9.1 around the corner!</title>
		<link>http://technoblog.novaclic.com/wordpress/wordpress-2-9-and-wordpress-2-9-1/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=wordpress-2-9-and-wordpress-2-9-1</link>
		<comments>http://technoblog.novaclic.com/wordpress/wordpress-2-9-and-wordpress-2-9-1/#comments</comments>
		<pubDate>Mon, 28 Dec 2009 10:59:27 +0000</pubDate>
		<dc:creator>diablo</dc:creator>
				<category><![CDATA[wordpress]]></category>
		<category><![CDATA[new features]]></category>
		<category><![CDATA[nouveautés]]></category>
		<category><![CDATA[wordpress 2.9.0]]></category>

		<guid isPermaLink="false">http://technoblog.novaclic.com/?p=73</guid>
		<description><![CDATA[<p><img src="/files/2009/12/wp_2-9-0.png" border="1" alt="" align="right" />Carmen, the 2.9 version of WordPress has launched on December 19th.</p>
<p>You may be tempted to  upgrade your blog using the automatic function after discovering the exciting new feature included.</p>
<p>But, wait&#8230; There are <a href="http://wordpress.org/development/2009/12/wordpress-2-9-1-beta-1/">some flaws in this release</a>. So, you&#8217;d better…</p>]]></description>
			<content:encoded><![CDATA[<p><img src="/files/2009/12/wp_2-9-0.png" border="1" alt="" align="right" />Carmen, the 2.9 version of WordPress has launched on December 19th.</p>
<p>You may be tempted to  upgrade your blog using the automatic function after discovering the exciting new feature included.</p>
<p>But, wait&#8230; There are <a href="http://wordpress.org/development/2009/12/wordpress-2-9-1-beta-1/">some flaws in this release</a>. So, you&#8217;d better wait for the patch version 2.9.1 (already <a href="http://wordpress.org/development/2009/12/wordpress-2-9-1-beta-1/">available as beta</a>).</p>
<p>However, <a title="Is Worpdress 2.8.6 upgrade required ?" href="http://technoblog.novaclic.com/wordpress/worpdress-2-8-6-released/">unlike the 2.8.6 release</a>, the 2.9 release is worth considering the upgrade, with new  features targetting end-users, like<span id="more-73"></span></p>
<ul>
<li> <strong>B</strong><strong>uilt-in image  editor</strong> (crop, resize, rotate images),</li>
<li><strong>Batch plugin update</strong> (update all plugins at once),</li>
<li><strong>T</strong><strong>rash  feature</strong> for posts (now, you can undelete a post),</li>
<li><strong>Easy video embed</strong> (using a single link)</li>
</ul>
<p><strong>Themes designers</strong> will also get some interesting features (copied from the <a href="http://wordpress.org/development/2009/12/wordpress-2-9/">original  announcement</a>):</p>
<ul>
<li>Themes can register “post thumbnails” which allow them to attach an image to  the post, especially useful for magazine-style themes.</li>
<li>A new commentmeta table that allows arbitrary key/value pairs to be attached  to comments, just like posts, so you can now expand greatly what you can do in  the comment framework.</li>
<li>Custom post types have been upgraded with better API support so you can  juggle more types than just post, page, and attachment. (More of this planned  for 3.0.)</li>
<li>You can set custom theme directories, so a plugin can register a theme to be  bundled with it or you can have multiple shared theme directories on your  server.</li>
<li>Specify category templates not just by ID, like before, but by slug, which  will make it easier for theme developers to do custom things with categories —  like post types!</li>
<li>Registration and profiles are now extensible to allow you to collect things  more easily, like a user’s Twitter account or any other fields you can imagine.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://technoblog.novaclic.com/wordpress/wordpress-2-9-and-wordpress-2-9-1/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>

		</item>
	</channel>
</rss>
