Firefox – Installer OpenSearch sur WordPress

Introduction

OpenSearch permet de créer un moteur de recherche pour Firefox.
Ce moteur de recherche une fois ajouté par l’utilisateur permettra d’effectuer des recherches sur un blog par exemple.

Pour cela il suffit de définir un fichier search.xml compréhensible par le navigateur et définissant l’url de recherche du blog et l’intégrer au header des pages du site.

Pour ce blog, l’url de recherche est la suivante:

http://www.benjaminbaudouin.com/?s=

search.xml

<OpenSearchDescription>
<ShortName>Benjamin Baudouin</ShortName>

<Description>
Administration Système Linux, Développement Web. Geek Stuff. Veille Techno !
</Description>
<InputEncoding>UTF-8</InputEncoding>
<Image width="16" height="16" type="image/x-icon">http://www.benjaminbaudouin.com/favicon.ico</Image>
<Url type="text/html" method="get" template="http://www.benjaminbaudouin.com/?s={searchTerms}">
</Url>
<Url type="application/x-suggestions+json" template="suggestionURL"/>
<moz:SearchForm>searchFormURL</moz:SearchForm>
</OpenSearchDescription>

intégration de search.xml dans wordpress

Dans la partie d’administration, Apparence > Éditeur > En-tête (header.php)

<head>
...
<link rel="search" type="application/opensearchdescription+xml" title="Benjamin Baudouin" href="http://www.benjaminbaudouin.com/search.xml">
</head>

Cliquer sur Mettre à jour le fichier

Test

Avec Firefox,

aller sur l’adresse http://www.benjaminbaudouin.com et ajouter le moteur de recherche comme suit:

Il est maintenant possible d’effectuer des recherches directement dans Firefox sur ce blog.

:)

Liens

WordPress – 2 plugins pour mettre en valeur du code

Dean’s Code Highlighter

Site officiel

Utilisation

<pre lang="php"> ... </pre>
<pre lang="html"> ... </pre>
<pre lang="css"> ... </pre>

Exemples

<pre lang="php"> ... </pre>

Google Code Prettify

Site Officiel (faq)

Utilisation

<pre class="prettyprint"> ... </pre> ou <code class="prettyprint"> ... </code>

Exemples

<pre class="prettyprint lang-html"> ... </pre>

  The lang-* class specifies the language file extensions.
  File extensions supported by default include
    "bsh", "c", "cc", "cpp", "cs", "csh", "cyc", "cv", "htm", "html",
    "java", "js", "m", "mxml", "perl", "pl", "pm", "py", "rb", "sh",
    "xhtml", "xml", "xsl".

App

WordPress Video Plugin HACK

Comment rendre plus rapide et plus accessible une page web contenant du flash ?
Une première réponse serait de ne pas intégrer de flash dans les pages web.

Mais si nous avons réellement besoin de flash et que nous souhaitons partager une vidéo intéressante avec la communauté ?
Nous allons charger l’objet flash à la demande de l’utilisateur.

Voici un hack du plugin wordpress video plugin inspiré de ce qui se fait sur Facebook.

Télécharger l’archive wordpress-video-plugin-hack.tar

hack-minify.js


function LoadContent(page,usediv){try{xmlhttp=window.XMLHttpRequest?new XMLHttpRequest():new ActiveXObject("Microsoft.XMLHTTP");}catch(e){alert("Error: Could not load page.");}
document.getElementById(usediv).innerHTML='<img src="http://www.benjaminbaudouin.com/wp-content/plugins/wordpress-video-plugin-hack/loading.gif">';xmlhttp.onreadystatechange=function(){if((xmlhttp.readyState==4)&&(xmlhttp.status==200)){document.getElementById(usediv).innerHTML=xmlhttp.responseText;}}
xmlhttp.open("GET",page);xmlhttp.send(null);return false;}
function toggle_visibility(id){var e=document.getElementById(id);if(e.style.display=='block')
e.style.display='none';else
e.style.display='block';}
function is_visible(id){var e=document.getElementById(id);if(e.style.display=='block')
return 1;else
return 0;}

inclusion dans wordpress header.php

 ... wp_head(); ?>
<script type="text/javascript" src="http://www.benjaminbaudouin.com/wp-content/plugins/wordpress-video-plugin-hack/hack-minify.js"></script>
</head> ...

hack de video.php

// Youtube Code
...
define("YOUTUBE_TARGET", "<div id=\"flashobj###URL###\"><a onclick=\"LoadContent('http://www.benjaminbaudouin.com/wp-content/plugins/wordpress-video-plugin-hack/flashobj.php?url=http://www.youtube.com/v/###URL###&width=###WIDTH###&height=###HEIGHT###','flashobj###URL###');toggle_visibility('flashobj###URL###');\"><img class=\"videothumb\" src=\"http://i1.ytimg.com/vi/###URL###/default.jpg\"><span class=\"videothumbplay\"><img id=\"thumbplay###URL###\" src=\"http://www.benjaminbaudouin.com/wp-content/plugins/wordpress-video-plugin-hack/fbvbs43b.png\"></span></a></div>");
...

les images fbvbs43b.png et loading.gif

style.css (thème thematic)

.videothumb {
cursor: pointer;
}
.videothumbplay {
cursor: pointer;
margin-left: -115px;
}

Voila à quoi ressemble le hack une fois implémenté (cliquez sur l’image pour lancer la vidéo):

Web

Quel plugin Internet Mobile pour WordPress ?

wp-mobile-phones

Pour l’instant j’utilise WordPress Mobile plugin qui consiste en une version épurée et forcément plus rapide du blog.

Et vous quel plugin WordPress utilisez-vous pour générer une version mobile de votre blog ?

Web

WordPress en html statique avec WP Super Cache

wordpress-plugin

This plugin generates static html files from your dynamic WordPress blog. After a html file is generated your webserver will serve that file instead of processing the comparatively heavier and more expensive WordPress PHP scripts.

Pour ceux qui ne comprenne pas l’anglais ce plugin permet de générer du html (statique) moins gourmand en ressource (PHP/MySQL) et d’y faire appel.
L’appel PHP/MySQL se fait une 1ère fois générant le .html statique.
La seconde fois c’est la page .html qui est servi à l’internaute.
Great :P

Installer le pluginWP Super Cache

Télécharger: WP Supper Cache

Activer le plugin

Réglages> WP Super Cache > On

Sauvegarder un blog wordpress sur une clef usb

Objectif

Sauvegarder/Restaurer un blog de type WordPress:

  • sauvegarde des fichiers PHP
  • export SQL de la base de données

Langage de script utilisé: Bash

Script de Sauvegarde

wp-backupblog.sh

#!/bin/bash
# wp-backupblog.sh - Backup WordPress Blog
# version: 0.1
# Author: Benjamin Baudouin
# http://www.benjaminbaudouin.com
DEVICE=/dev/sda1
SRCDIR=/var/www/wordpress
USBKEYDIR=/media/usbkey/
TMPDIR=/tmp/backupblog/
ARCHIVE=blog.$(date +%Y%m%d).tar.gz
ARCHIVE_SQL=blog.$(date +%Y%m%d).sql
MYSQL_USER=root
MYSQL_PASS=*****************
MYSQL_DB=wordpress
#creation du repertoire tmp
if [ ! -e ${TMPDIR} ]
then
mkdir ${TMPDIR}
fi
#evaluation de la taille du blog
echo -e "Taille du blog (non compresse):"
du -sh ${SRCDIR}
#creation de l'archive (fichiers sources)
echo -e "Creation de l'archive ${ARCHIVE} ..."
cd ${SRCDIR}
tar cf - ${SRCDIR} | gzip > ${TMPDIR}${ARCHIVE}
echo -e "Taille du blog (archive compresse .tar.gz):"
du -sh ${TMPDIR}${ARCHIVE}
#creation de l'archive (fichier SQL)
echo -e "Creation de l'archive ${ARCHIVE_SQL} ..."
mysqldump -u${MYSQL_USER} -p${MYSQL_PASS} ${MYSQL_DB} > ${TMPDIR}${ARCHIVE_SQL}
echo -e "Taille du blog (archive .sql):"
du -sh ${TMPDIR}${ARCHIVE_SQL}
echo -e "Taille total blog"
du -sh ${TMPDIR}
#si pas d'automount, montage manuel
mount ${DEVICE} ${USBKEYDIR}
#copy
cp -rf ${TMPDIR} ${USBKEYDIR}
echo -e "\nCopie sur la clef usb ..."
#demontage
umount ${DEVICE}
if [ $? -eq 0 ]
then
echo -e "\nDone"
fi
exit 0

Script de Restauration

wp-restoreblog.sh

#!/bin/bash
# wp-restoreblog.sh - Restore WordPress Blog
# version: 0.1
# Author: Benjamin Baudouin
# http://www.benjaminbaudouin.com
DEVICE=/dev/sdb1
USBKEYDIR=/media/usbkey
BACKUPDIR=/media/usbkey/backupblog/
SRCDIR=/var/www/wordpress
SQLFILE=`find ${BACKUPDIR}*.sql`
MYSQL_USER=root
MYSQL_PASS=
#meme si pas d'automount, montage manuel
if [ ! -e ${USBKEYDIR} ]
then
mkdir ${USBKEYDIR}
fi
mount ${DEVICE} ${USBKEYDIR}
cp ${BACKUPDIR}*.tar.gz /
tar xzf /*.tar.gz
chown www-data:www-data ${
SRCDIR}
mysql -u${MYSQL_USER} -p${MYSQL_PASS} < ${SQLFILE}
umount ${DEVICE}


Accéder à la page projet

Quelques conseils pour sécuriser votre backoffice d’administration WordPress

Introduction

Il est bien connu que les mots de passe circulent en clair sur le réseau.

Mais qu’est-ce que cela veut dire ?

En réalité il est possible de « sniffer » une connexion réseau afin d’obtenir des informations personnelles. Comme par exemple quand vous vous connectez sur votre backoffice d’administration wordpress.

Pour remédiez à cela nous allons crypter l’échange d’informations entre nous et le serveur.

Installer SSL pour Apache2

En root.

  1. Ajouter le module SSL pour apache
    a2enmod ssl
  2. Forcer la relecture des fichiers de configuration Apache
    /etc/init.d/apache2 force-reload
  3. Créer le certificat
    openssl req -x509 -nodes -days 365 -newkey rsa:1024 -out /etc/apache2/server.crt -keyout /etc/apache2/server.key
  4. Ajouter dans /etc/apache2/ports.conf
    Listen 443
  5. Ajouter le nouveau VHost dans /etc/apache2/sites-enabled/000-default
    NameVirtualHost IP:443<VirtualHost IP:443>
    ServerName www.hostname.com
    DocumentRoot /var/www/path
    SSLEngine on
    SSLCertificateFile /etc/apache2/server.crt
    SSLCertificateKeyFile /etc/apache2/server.key
    </VirtualHost>
  6. Relancer Apache
    /etc/init.d/apache2 force-reload

Hack de la fonction wp_register

Disclaimer: ce code est fournit tel quel. Vous l’utilisez sans aucune garantie et/ou support.

Ce hack permet d’écrire l’url d’administration en https.

L'ongle Admin. du Site pointe bien vers le https

L'onglet Admin. du Site pointe bien vers le https

Remplacer dans wp-includes/general-template.php

ligne 52:
. admin_url() .
par
. preg_replace("|^http://|", "https://", admin_url()) .

App

K2 n’est pas seulement un thème wordpress

k2

K2, le vrai

Avant d’être un thème wordpress le K2 est la deuxième plus haute montagne du monde derrière l’Everest.

Aujourd’hui c’est l’anniversaire de l’ascension du K2.
La première ascension a eu lieu le 31 Juillet 1954, il y a exactement 54 ans, par deux italiens Achille Compagnoni et Lino Lacedelli.

WordPress – Admin Password Recovery

Ca marche tip top et c’est un article publié sur village-idiot.

Testé sous WordPress 2.5

Pensez à supprimer emergency.* une fois la manipulation terminée !!

App

Recent Tweets

Catégories