<?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>Hotfirenet &#187; Wordpress</title>
	<atom:link href="http://www.hotfirenet.com/tag/wordpress/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.hotfirenet.com</link>
	<description>L&#039;espace web d&#039;un passionné</description>
	<lastBuildDate>Wed, 16 May 2012 11:19:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>WordPress &#8211; Shortcode trouve mon age</title>
		<link>http://www.hotfirenet.com/wordpress-shortcode-trouve-mon-age</link>
		<comments>http://www.hotfirenet.com/wordpress-shortcode-trouve-mon-age#comments</comments>
		<pubDate>Thu, 15 Mar 2012 07:00:13 +0000</pubDate>
		<dc:creator>Djo</dc:creator>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Shortcode]]></category>
		<category><![CDATA[Snippet]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.hotfirenet.com/?p=555</guid>
		<description><![CDATA[Il parait que l’on change d’âge tous les ans ?
Parce que je n’ai pas envie de faire update tous les ans de ma page de présentation et que l’informatique ça sert à être faignant :), version Worpdress ...]]></description>
			<content:encoded><![CDATA[<p>Il parait que l’on change d’âge tous les ans ?<br />
Parce que je n’ai pas envie de faire update tous les ans de ma page de présentation et que l’informatique ça sert à être faignant <img src='http://www.hotfirenet.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  voici un shortcode pour WordPress qui te permettra d’afficher l’âge par rapport à la date de naissance passée en paramètre.  </p>
<p>Le code:</p>
<pre class="brush: php; title: ; notranslate">
//Permet de retrouver l'age par rapport a la date de naissance
//la fonction accepte le format francais et anglais
//utlisation [trouveMonAge date=&quot;1984-06-12&quot;] ou [trouveMonAge date=&quot;12-06-1984&quot;]
function trouveMonAgeFCT($atts){
	extract(shortcode_atts(array('date' =&gt; ''), $atts));
	$age = date('Y') - date('Y', strtotime($date));
	if (date('md') &lt; date('md', strtotime($date))) {
		return $age - 1;
	}
	return $age;
}
add_shortcode('trouveMonAge', 'trouveMonAgeFCT');
</pre>
<p>Utilisation:<br />
<div id="attachment_563" class="wp-caption aligncenter" style="width: 610px"><a href="http://www.hotfirenet.com/wp-content/uploads/2012/02/wordpressTrouveMonAge.png"><img src="http://www.hotfirenet.com/wp-content/uploads/2012/02/wordpressTrouveMonAge.png" alt="" title="wordpressTrouveMonAge" width="600" height="250" class="size-full wp-image-563" /></a><p class="wp-caption-text">Utilisation du  shortcode trouveMonAge</p></div></p>
]]></content:encoded>
			<wfw:commentRss>http://www.hotfirenet.com/wordpress-shortcode-trouve-mon-age/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress &#8211; Customiser la galerie native de wordpress</title>
		<link>http://www.hotfirenet.com/wordpress-customiser-la-galerie-native-de-wordpress</link>
		<comments>http://www.hotfirenet.com/wordpress-customiser-la-galerie-native-de-wordpress#comments</comments>
		<pubDate>Thu, 01 Mar 2012 23:51:50 +0000</pubDate>
		<dc:creator>Djo</dc:creator>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.hotfirenet.com/?p=544</guid>
		<description><![CDATA[Vous aller voir comment optimiser votre galerie Wordpress en utilisant le shortcode, ajouter une lightbox]]></description>
			<content:encoded><![CDATA[<p><h5 class="underlined_title"><span> Utilisation du shortcode </span></h5><br />
<a href="http://hfn.me/22" title="Gallery Shortcode « WordPress Codex " target="_blank">Quoi tu m&#8217;as pris pour le codex ou quoi ?</a></p>
<p><div class="break_line"></div><br />
<h5 class="underlined_title"><span> Refonte de la css </span></h5><br />
A partir de la version WordPress 3.1 il est possible de faire un reset de la  css. Dans le fichier &laquo;&nbsp;<strong><em>functions.php</em></strong>&nbsp;&raquo; de ton thème il faut rajouter en fin de fichier :</p>
<pre class="brush: php; title: ; notranslate"> add_filter( 'use_default_gallery_style', '__return_false' ); </pre>

<a href='http://www.hotfirenet.com/wordpress-customiser-la-galerie-native-de-wordpress/codehtmlgallerybase/' title='codeHtmlGalleryBase'><img width="150" height="150" src="http://www.hotfirenet.com/wp-content/uploads/2012/02/codeHtmlGalleryBase-150x150.png" class="attachment-thumbnail" alt="codeHtmlGalleryBase" title="codeHtmlGalleryBase" /></a>
<a href='http://www.hotfirenet.com/wordpress-customiser-la-galerie-native-de-wordpress/codehtmlgallerybasedisparut/' title='codeHtmlGalleryBaseDisparut'><img width="150" height="150" src="http://www.hotfirenet.com/wp-content/uploads/2012/02/codeHtmlGalleryBaseDisparut-150x150.png" class="attachment-thumbnail" alt="codeHtmlGalleryBaseDisparut" title="codeHtmlGalleryBaseDisparut" /></a>

<p>Puis copie/colle la css soit dans le fichier &laquo;&nbsp;<strong><em>style.css</em></strong>&laquo;&nbsp;, je me doute bien que tu vas pas tout retaper <img src='http://www.hotfirenet.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<pre class="brush: css; title: ; notranslate">
/* The Gallery container (div) */
.gallery { }

/* A Gallery item container,
 for 3, 2 and 4 column galleries */
.gallery .gallery-item { }
.gallery-columns-2 .gallery-item { }
.gallery-columns-4 .gallery-item { }

/* The actual image inside a container
for 3, 2 and 4 column galleries */
.gallery img { }
.gallery-columns-2 .attachment-medium { }
.gallery-columns-4 .attachment-thumbnail { }

/* A gallery image caption */
.gallery .gallery-caption { }

/* Definition lists elements */
.gallery dl, .gallery dt { }

/* Pick the second line break if two
line breaks are adjacent */
.gallery br+br { }
</pre>
<p>Sinon,</p>
<pre class="brush: php; title: ; notranslate">
add_filter( 'gallery_style', 'hfnCssGallery' );

function hfnCssGallery() {
	$css = &amp;quot;&amp;lt;style type=\'text/css\'&amp;gt;
				.gallery { margin: 0 auto 18px; }
				.gallery .gallery-item {
					float: left;
					margin-top: 0;
					text-align: center;
					width: 33%;
				}
				.gallery-columns-2 .gallery-item { width: 50%; }
				.gallery-columns-4 .gallery-item { width: 25%; }
				.gallery img {
					box-shadow: 0px 0px 4px #999;
					border: 1px solid white;
					padding: 8px;
					background: #f2f2f2;
				}
				.gallery img:hover {
					background: white;
				}
				.gallery-columns-2 .attachment-medium {
					max-width: 92%;
					height: auto;
				}
				.gallery-columns-4 .attachment-thumbnail {
					max-width: 84%;
					height: auto;
				}
				.gallery .gallery-caption {
					color: #888;
					font-size: 12px;
					margin: 0 0 12px;
				}
				.gallery dl, .gallery dt { margin: 0; }
				.gallery br+br { display: none; }
			&amp;lt;/style&amp;gt;
			&amp;lt;div id='$selector' class='gallery galleryid-{$id} gallery-columns-{$columns} gallery-size-{$size_class}'&amp;gt;&amp;quot;;
	return $css;
}
</pre>
<p><div class="break_line"></div><br />
<h5 class="underlined_title"><span> Mise en place d&#8217;une lightbox </span></h5><br />
En mode faignant l&#8217;utilisation de plugin genre :</p>
<ul class="list_arrow">
<li><a href="http://hfn.me/1y" title="Cleaner Gallery" target="_blank">Cleaner Gallery</a></li>
<li><a href="http://hfn.me/1z" title="jQuery Lightbox For Native Galleries" target="_blank">jQuery Lightbox For Native Galleries</a></li>
</ul>
<p><strong>Mais les plugins c&#8217;est mal on ne nous dit pas tout !!</strong></p>
<p>Tu es developpeur, bidouilleur ou encore tu n&#8217;y connais rien mais tu es curieux et tu n&#8217;as même pas peur ?<br />
Voici d&#8217;autre méthodes un peu mieux, un bon vieux <strong>hack</strong>. </p>
<p>A la mode barbare, dans le fichier &laquo;&nbsp;<strong><em>wp-includes/post-template.php</em></strong>&nbsp;&raquo; de remplacer :</p>
<pre class="brush: php; title: ; notranslate">return apply_filters( 'wp_get_attachment_link', &amp;quot;&amp;lt;a href='$url' title='$post_title'&amp;gt;$link_text&amp;quot;, $id, $size, $permalink, $icon );</pre>
<p>par</p>
<pre class="brush: php; title: ; notranslate">return apply_filters( 'wp_get_attachment_link', &amp;quot;&amp;lt;a href='$url' title='$post_title'&amp;gt;$link_text&amp;quot;, $id, $size, $permalink, $icon );</pre>
<p>Le problème de cette méthode c&#8217;est lors de la prochaine mis à jour le fichier sera écraser et il l&#8217;opération sera a renouveller.</p>
<p><strong>Donc cette solution est mal !!</strong></p>
<p>Deux autres méthodes a rajouter dans le fichier fonction de ton thème :</p>
<pre class="brush: php; title: ; notranslate">
add_filter( 'wp_get_attachment_link' , 'add_lighbox_rel' );
function add_lighbox_rel( $attachment_link ) {
	if( strpos( $attachment_link , 'a href') != false &amp;amp;amp;&amp;amp;amp; strpos( $attachment_link , 'img src') != false )
		$attachment_link = str_replace( 'a href' , 'a rel=&amp;amp;quot;prettyPhoto[]&amp;amp;quot; href' , $attachment_link );
	return $attachment_link;
}
</pre>
<p>ou encore<br />
perso j&#8217;aime bien celle-ci car elle va permettre de rajouter a tout mes liens contenant une image l’attribut ici &laquo;&nbsp;<strong><em>rel=&nbsp;&raquo;prettyPhoto&nbsp;&raquo;</em></strong>&laquo;&nbsp;.</p>
<pre class="brush: php; title: ; notranslate">
// Adapted and Modified from http://wordpress.org/extend/plugins/add-lightbox/
// Adds a rel=&amp;quot;prettyPhoto&amp;quot; tag to all linked image files

add_filter('the_content', 'addlightboxrel_replace', 12);
add_filter('get_comment_text', 'addlightboxrel_replace');
function addlightboxrel_replace ($content)
{   global $post;
    $pattern = &amp;quot;/&amp;lt;a(.*?)href=('|\&amp;quot;)([^&amp;gt;]*).(bmp|gif|jpeg|jpg|png)('|\&amp;quot;)(.*?)&amp;gt;(.*?)&amp;lt;\/a&amp;gt;/i&amp;quot;;
    $replacement = '&amp;lt;a$1href=$2$3.$4$5 rel=&amp;quot;prettyPhoto['.$post-&amp;gt;ID.']&amp;quot;$6&amp;gt;$7&amp;lt;/a&amp;gt;';
    $content = preg_replace($pattern, $replacement, $content);
    return $content;
}
</pre>
<p>Il y&#8217;a la possibilité également de le faire en javascript et sinon si tu es un grand malade et tu ne sais pas quoi faire ?<br />
Tu te dis pourquoi ne pas reprendre le shortcode et faire le miens ?<br />
Et pourquoi pas &#8230;</p>
<p>Direction &laquo;&nbsp;<strong><em>wp-include/media.php</em></strong>&nbsp;&raquo; et trouve :</p>
<pre class="brush: php; title: ; notranslate">add_shortcode('gallery', 'gallery_shortcode');

/**
 * The Gallery shortcode.
 *
 * This implements the functionality of the Gallery Shortcode for displaying
 * WordPress images on a post.
 *
 * @since 2.5.0
 *
 * @param array $attr Attributes of the shortcode.
 * @return string HTML content to display gallery.
 */
function gallery_shortcode($attr) {
</pre>
<p>Mes sources ?</p>
<blockquote>
<ul class="list_arrow">
<li><a href="http://hfn.me/20" title="WordPress › Support » How-To and Troubleshooting[resolved] Add rel="xyz" to Gallery Link" target="_blank">WordPress › Support » How-To and Troubleshooting[resolved] Add rel=&nbsp;&raquo;xyz&nbsp;&raquo; to Gallery Link</a></li>
<li><a href="http://hfn.me/21" title="Web2Fenua, creation de site web a Tahiti" target="_blank">Web2Fenua, creation de site web a Tahiti</a></li>
<li><a href="http://hfn.me/22" title="Gallery Shortcode « WordPress Codex " target="_blank">Le codex bien sur !!</a></li>
</ul>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.hotfirenet.com/wordpress-customiser-la-galerie-native-de-wordpress/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress &#8211; Utiliser l’éditeur wysiwyg de wordpress dans ses thèmes et plugins</title>
		<link>http://www.hotfirenet.com/wordpress-utiliser-editeur-wysiwyg-de-wordpress-dans-ses-themes-et-plugins</link>
		<comments>http://www.hotfirenet.com/wordpress-utiliser-editeur-wysiwyg-de-wordpress-dans-ses-themes-et-plugins#comments</comments>
		<pubDate>Mon, 04 Aug 2008 22:00:02 +0000</pubDate>
		<dc:creator>Djo</dc:creator>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.hotfirenet.com/?p=78</guid>
		<description><![CDATA[J’ai eu besoin pour la création d’un thème wordpress de mettre en place l’éditeur avancé tiny_mce.
Après quelques recherches sur le net je suis tombé sur le site de Leeroy qui explique très bien comment le mettre en place.
Mais voici quand même un petit rappel de la procédure de mise en œuvre ...]]></description>
			<content:encoded><![CDATA[<p>J’ai eu besoin pour la création d’un thème wordpress de mettre en place l’éditeur avancé tiny_mce.</p>
<p>Après quelques recherches sur le net je suis tombé sur le site de Leeroy qui explique très bien comment le mettre en place.</p>
<p>Mais voici quand même un petit rappel de la procédure de mise en œuvre :</p>
<p>Création d’une fonction d’appel à l’éditeur :</p>
<pre class="brush: php; title: ; notranslate">
	function init_wysiwyg() {
		wp_enqueue_script('editor');
		add_thickbox();
		wp_enqueue_script('media-upload');
		add_action('admin_print_footer_scripts', 'wp_tiny_mce', 25);
		wp_enqueue_script('quicktags');
	}
</pre>
<p>Maintenant nous allons faire appel à cette fonction directement à l’initialisation de l’administration de wordpress :</p>
<pre class="brush: php; title: ; notranslate">
add_action('admin_menu', 'init_wysiwyg');
</pre>
<p>L’appel de l’editeur se fera de cette façon :</p>
<pre class="brush: php; title: ; notranslate">
&lt;?php
/* Syntaxe de la fonction the_editor()
* the_editor($content, $id = 'content', $prev_id = 'title', $media_buttons = true, $tab_index = 2)
*/
echo the_editor(null);
?&gt;</pre>
<p>Voici à quoi correspond les différents paramètres que peut contenir cette fonction</p>
<p><strong>$content </strong>:Contient votre contenu.<br />
<strong>$id</strong> :Le nom (et ID) du champ de l’éditeur de texte.<br />
<strong>$prev_id</strong> <img src='http://www.hotfirenet.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> ermet de revenir à l’ID précédent des éléments du formulaire.<br />
<strong>$media_buttons</strong> <img src='http://www.hotfirenet.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> ermet d’activer ou désactiver l’affichage des boutons (images, sons, vidéos, etc). Accepte une valeur booléenne (true || false).<br />
<strong>$tab_index</strong> :Index de tabulation du champ de formulaire.<br />
Maintenant la partie css :</p>
<pre class="brush: css; title: ; notranslate">#poststuff textarea
{
	-moz-box-sizing:border-box;
	border:0 none;
	line-height:150%;
	outline-color:-moz-use-text-color;
	outline-style:none;
	outline-width:medium;
	padding:6px;
	margin:0;
	width:100%;
}</pre>
<p>Maintenant quand on regarde de plus prés on s’aperçoit que cette méthode fait que l’éditeur est actif sur toutes les pages de l’administration et personnellement je ne trouve pas cette solution très propre.</p>
<p>En me penchant sur le problème j’ai trouvé la solution qui consiste tout simplement à activer l’appel de l’éditeur uniquement sur les pages du plugin ou du thème.<br />
Mais comment faire ??</p>
<p>La réponse : nous allons utiliser la fonction admin_print_scripts-(page_hook) ou admin_print_scripts-(plugin_page)</p>
<p>Voici comment je l’ai utilisé :</p>
<pre class="brush: php; title: ; notranslate">
function hfn_init() {
/* Syntaxe de la fonction add_menu_page()
* add_menu_page(page_title, menu_title, capability, handle, [function], [icon_url]);
*/
$options_page = add_menu_page( 'Admin HFN', 'Admin HFN', 7, 'hfnOptions', 'hfnAdmin', get_template_directory_uri() . '/images/icon.png');
/* Syntaxe de la fonction add_submenu_page()
* add_submenu_page(parent, page_title, menu_title, capability required, file/handle, [function]);
*/
$options_subPage = add_submenu_page( 'hfnOptions', 'Admin HFN', 'Gestion de mon module', 7, 'hfnOptions', 'hfnAdmin' );
add_submenu_page( 'hfnOptions', 'Admin HFN', 'Gestion des menus', 7, 'hfnGesMenu', 'hfnGesMenu' );
add_submenu_page( 'hfnOptions', 'Admin HFN', 'Aide en ligne', 7, 'guide', 'hfnGuide' );&lt;/code&gt;

add_action( &quot;admin_print_scripts-$options_subPage&quot;, 'init_wysiwyg' );
}

add_action('admin_menu', 'hfn_init');
</pre>
<p>Dans le cas ci-dessus je voulais que l’éditeur soit appelé uniquement sur la page, gestion de mon module il me suffit juste de mettre le contenu de la fonction add_submenu_page() dans ma variable $options_subPage, puis tout simplement compléter la fonction admin_print_scripts-$maVariable() en utilisant add_action().</p>
<p>En espérant que cet article pourra servir à d’autres personnes.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.hotfirenet.com/wordpress-utiliser-editeur-wysiwyg-de-wordpress-dans-ses-themes-et-plugins/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

