La taille de certaines images utilisées sur le web peut avoir de l’importance.
PUB
RESEAUX SOCIAUX
La taille de certaines images utilisées sur le web peut avoir de l’importance.
PUB
RESEAUX SOCIAUX
Editeur ligne de commande linux apt-get install vim
vim monficher –> ouvrir le fichier à éditer
ESC :syntax on –> coloration syntaxique
ESC :nu –> numérotation des lignes
ESC –> Retour à la navigation dans le document (à faire tout le temps avant de continuer)
touches flèche ou hjkl pour naviguer H haut de l’écran L en bas
i ou touche insert –> Modification (insert)
v –> sélection de bloc de lignes (mode visuel)
CTRL v –> sélection de bloc (mode visuel)
gg –> début du fichier
G –> fin du fichier
$ –> fin de la ligne
0 –> début de la ligne
: –> Action (mode commande)
ESC :w –> enregistre
ESC :q –> quitte ESC:q! quitte sans enregistrer
ESC :help commande
D –> couper la ligne P –> Coller
O –> inserer une ligne
u –> annule la dernière action
/ –> recherche n –> continue la recherche
* –> recherche le mot sous le curseur
Le pavé numérique du clavier n’est pas toujours reconnu… utiliser les chiffres du clavier normal
:root {
--main-bg-color: brown; // set variable
}
.menu {
color: white;
background-color: var(--main-bg-color);
}
.page {
color: red;
background-color: var(--main-bg-color);
}
Il peut être intéressant de définir des variables dans les CSS. Cet exemple ce code n’est pour l’instant utilisable qu’avec Firefox version bureau.. les autres navigateurs risquent de s’y mettre, à surveiller
Calcul dans les styles
<style>
#monobjet[
width:180px;
width:100%; // tout le div contenant
margin-left:180px; // monobjet va sortir de 180px vers la droite
// solution
width:calc(100% - 180px); // tout le div contenant - 180px;
// calcul avec + - * / des % px, em ne pas oublier d’entourer les opérateurs par des espaces
}
</style>
Pour afficher un truc du genre : Ctrl+Shift+M
<kbd class="kbd">Ctrl</kbd>+<kbd class="kbd">Shift</kbd>+<kbd class="kbd">M</kbd>
<style>
kbd {
background-color: #f7f7f7;
border: 1px solid #ccc;
color: #333;
font-size: 11px;
line-height: 1.4;
text-shadow: 0 1px 0 #fff;
display: inline-block;
padding: .1em .6em;
margin: 0 .1em;
white-space: nowrap;
box-shadow: 0 1px 0 rgba(0,0,0,.2),0 0 0 2px #fff inset;
border-radius: 3px;
}
</style>
Google mets à disposition des recherche personnalisées. Il est possible de faire une recherche sur son site WordPress, et d’afficher les résultat dans une page comme si le moteur Google était intégré à WordPress.
Le moteur Google permet de savoir ce que les internautes peuvent trouver lors d’une recherche Google, ce qui est souvent différent de ce que vous voulez. Par contre il n’est à jour que quelques temps après la publication des articles… Pour ce qui est des modifications sur les articles, il faut parfois attendre très longtemps.
Le moteur interne de WordPress retourne le vrai contenu, à jour… mais ne corrige rien, on peut donc passer à coté du bon article pour une faute de frappe ou d’orthographe.
1 récupérer le code fourni par Google contenant les ID, A le code du formulaire de recherche, et B celui pour le résultat.
2 Créer une page, par exemple RECHERCHE, en mode texte coller le code Google B et copier le permalien
3 thème, éditeur -> searchform.php, remplacer le code d’origine par celui de Google A
Il est possible d’ajouter le code Google pour avoir simultanément les deux moteurs.
4 remplacer le form action par le permalien de RECHERCHE.
C’est tout
Il est ensuite possible de « bricoler le formulaire de recherche avec style=…. pour l’adapter au thème
charge une page en javascript
var url ='http://example.com'; // à utilser de préférence window.location.href=url; // remplace aussi l'entrée dans l'historique du navigateur (bouton back faussé) window.location.replace(url); window.location.assign(url); // ne pa sutiliser window.location = url; document.location....
<button id="monbouton" name="button">Click me</button>
<script>
function faire_un_truc(){
// faire quelque chose
alert('truc fait');
}
document.getElementById('monbouton').addEventListener('click', faire_un_truc);
//ou
document.querySelector('#monbouton').addEventListener('click', faire_un_truc);
// pour enlever
document.querySelector('#monbouton').removeEventListener('click', faire_un_truc);
// avec la fonction incorporé
document.querySelector('#monbouton').addEventListener("click", function(){
alert('truc fait');
});
// idem avec référence à l'objet appelant (le bouton devient rouge)
document.querySelector('#monbouton').addEventListener("click", function(){
this.style.backgroundColor = "red";
});
</script>
// Autre façon code plus facile à maintenir car le bouton appelle l'action
// avec les listener il n'est pas rare de s'y perdre
<button onClick="faire_un_truc();">Click me</button>
<scropt> javascript:document.body.contentEditable='true'; document.designMode='on'; void 0 </script>
Dans la page web la rend éditable -> utile pour faire des tests
Méthode pour exécuter du code asynchrone
<button name="button" onClick="testPromise();">Click me</button>
<div id="log"></div>
<script>
$('#message1').html('promise page chargée')
'use strict';
var comptePromesse = 0;
function testPromise() {
var thisComptePromesse = ++comptePromesse;
var log = document.getElementById('log');
log.insertAdjacentHTML('beforeend', thisComptePromesse + ') Started (<small>Debut du code synchrone</small>)<br/>');
// on crée une nouvelle promesse :
var p1 = new Promise(
// La fonction de résolution est appelée avec la capacité de
// tenir ou de rompre la promesse
function(resolve, reject) {
var tst;
log.insertAdjacentHTML('beforeend', thisComptePromesse + ') Promise started (<small>Debut du code asynchrone</small>)<br/>');
// Voici un exemple simple pour créer un code asynchrone
/*window.setTimeout(
function() {
// On tient la promesse !
resolve(thisComptePromesse+'aaaaaa');
}, Math.random() * 2000 + 1000
);*/
// un autre exemple
tst=Math.random();
if(tst>0.5){resolve('OKOKOKOK');}else{reject('NONONONONO');}
//resolve('OK');
}
);
// On définit ce qui se passe quand la promesse est tenue
// et ce qu'on appelle (uniquement) dans ce cas
// La méthode catch() définit le traitement à effectuer
// quand la promesse est rompue.
p1.then(
// On affiche un message avec la valeur
function(val) {
log.insertAdjacentHTML('beforeend', val +') Promise fulfilled (<small>Fin du code asynchrone</small>)<br/>');
}
).catch(
// Promesse rejetée
function(val) {
//console.log("promesse rompue"+val);
log.insertAdjacentHTML('beforeend', val +') Promise rompue (<small>Fin du code asynchrone</small>)<br/>');
}
);
log.insertAdjacentHTML('beforeend', thisComptePromesse + ') Promise made (<small>Fin du code synchrone</small>)<br/>');
}
</script>
Clique sur bouton -> testPromise()
Création objet p1 new Promise -> function(resolve, reject) en asynchrone
p1.then est appelé par resolve(‘truc en retour’)
p1.then().catch() est appelé par reject(‘un autre truc en retour’)
http://www.html5rocks.com/en/tutorials/es6/promises/
https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise