Boosta Wifi-signal

Aluminium fungerar bra. Man kan öppna upp en gammal aluminium-burk och placera den runt antennen.

Fråga, vad leder signalen bäst, aluminium eller koppar?

Wifi

Trådlöst internet använder sig av radiovågor.

Såhär funkar det. En dators wireless-adapter översätter datorinformationen till radiosignaler och skickas iväg signalerna med hjälp av en antenn.

Routern tar emot signalen och översätter den och skickar den vidare via ethernet.

Här finns en bra beskrivning.

Lista på olika material och hur de blockerar wifi-signaler.

bra bild

Mer bra länkar om metallers coductivity.

HTML5

I html5 har ett flertal saker förenklats.

Exempel:
attributet type behövs inte längre. Här är ett exempel på skillnader.

Här är med html5.

<!DOCTYPE html>
<html lang="en">
<head>
   <meta charset="utf-8">
   <title>Page Title</title>
   <link rel="stylesheet" href="style.css">
   <script src="script.js"></script>
</head>
<body>
... <!-- The rest is content -->
</body>
</html>

Här är tidigare html.

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
 <head>
    <meta http-equiv="content-type" content="text/html" charset="utf-8">
    <title>title</title>
    <link rel="stylesheet" type="text/css" href="style.css">
    <script type="text/javascript" src="script.js"></script>
 </head>
<body>
...
</body>
</html>

TYPE behövs inte längre, varken när man länkar script eller css.

DOCTYPE
Doctype är bra att skriva ut eftersom en modern webbläsare har flera olika rendering-engines beroende på html-versionen, så att tydligt deklarera vilken version som används kan underlätta arbetet för webb-läsaren.

meta charset=”utf-8
Innebär en säkerhetsrisk om den inte skrivs ut. Om det inte skrivs ut kan Explorer tolka det som att sidan är skriven i utf-7, vilket gör att harmlös användar-input blir html-injektioner. charset ska deklareras inom de första 500-byten. Här kan du läsa mer om riskerna.

Här är en bra bild som beskriver de nya html5-taggarna.
position av html5-taggar

Grundläggande JavaScript

Inbyggda funktioner/methods

Manipulera stringar
.split() – Delar upp en sträng och lägger den i en array.
.splice() – Lägg till eller ta bort element, eller byt ut element i en array.
.reverse();
.substr(); //Tar två parametrar. Den första är var beskäringen ska börja. Den andra parametern specificerar hur många karaktärer som ska beskäras. Den andra parametern är valfri.
.substring(); //Detta är den äldre versionen av substr(); och gör samma sak. Skillnaden är den andra parametern. Substrings andra parameter är positionen efter den sista karaktären som du vill åt. Den andra parametern är valfri.
.sort();
.replace();
.indexOf(); //Används för att söka igenom en string.
.lastIndexOf(); //Samma som indexOf fast den börjar söka bakifrån.
.charAt(); //Har en parameter, som tar indexnumret av av en viss karaktär och returerar karaktären.

var string = "Har är min string";
string.charAt(0);//returerar H

charCodeAt(); //Samma som charAt, med skillnaden att den returerar ASCII numret på karaktären.
trim(); //Tar bort överflödigt whitespace i början och slutet av en string.

Manipulera nummer
.toFixed(1); – Antalet decimaler ett tal ska ha.
.parseInt() – Denna funktion gör om stringar till tal. Det är viktigt att komma ihåg att den tar två argument, varav det andra argumentet definerar vilket bas talet ska vara i. För att ovandla talet till base-10 så ska man alltså lägga till 10. Exempel:

parseInt("5", 10); 

typeof //För att se vad för typ av element något är. Om det är boolean, string etc.
filter(); Filtrerar bort element från en array.

Iterative Methods – loopa utan att använda loop
Dessa methods används för att loopa igenom arrays, utan att använda en loop. Dessa kallas därför för Iterative Methods. Det finns fem Iterative Methods.
every(); Går igenom en array och avgör om ett visst condition är sant eller falskt. Till exempel.

var numbers = [1,2,3,4,5];
function isLessThan3(value, index, array){
var returnValue = false;
if (value < 3){
returnValue = true;
 }
return returnValue;
}

var trueOrFalse = numbers.every(isLessThan3);
console.log(trueOrFalse); //Returns false. 

Eftersom the condition som finns i if-statementet är falskt. value är inte mindre än tre, eftersom värderna 4 och 5 finns där. Och de är inte mindre än tre. every() är alltså en method som avgör om varje del i en array är sann i förhållande till condition-statementet. Om du däremot skapar samma funktion, men använder det för some(); så kommer det att returera true, eftersom några av values är mindre än tre, vilket gör påståendet till sant.
some();

every() och some() är nyttiga, men du kan inte få ut någonting mer från dom än true och false. Det är därför som filter är så bra.

filter();
Filter gör precis som every() och some() och iterate genom en array. Men varje gång som påståendet är sant så läggs det värdet till i en ny array.

map(); är en väldigt användbar funktion. Den används för att söka igenom en array och göra någonting.

var array = [1,2,3,4,5];
//Om jag nu vill lägga till 1 på varje element inom arrayen så kan jag göra det med map, såhär:
var array = array.map(function(val){
  return val+1;
});
console.log(array); //[2,3,4,5,6]

reduce() – lägger ihop samtliga tal i en array till ett tal.

var array = [4,5,6,7,8];
var singleVal = 0;

var singleVal = array.reduce(function(previousVal, currentVal){
  return previousVal+currentVal; //returns 30
});

filter() – filter filtrerar bort alla delar i en array. Vad som ska filtereras bort defineras i funktionen. Exempel:

var array = [1,2,3,4,5,6,7,8,9,10];
array = array.filter(function(val){
  return val <= 5; //filtrerar bort alla tal som över över 5
});

concat(); används för att slå ihop två arrayer.

var array = [1,2,3];
var concatMe = [4,5,6];
array = array.concat(concatMe);

 
Matematik-methods
Det finns många methods rörande matematik.
Math.PI; Get PI
Math.Ceil(2.45); Rundar upp
Math.floor(2.45); Rundar ner
Math.round(2.45); Rundar av mot närmsta heltal

 

Object

Object i Javascript är som en dictionary i Python. Ordet Dictionary beskriver bättre vad det handlar om. Ett object består av en key och en value.
var person = {
namn: “Philip”,
age: “34”
}

 

Listor/arrays

Såhär skapar man en lista.


//Skapa en lista
var lista = ["namn", "djur", "nummer", 9, 8, 10000]

//Sortera en lista
lista.sort();

//Detta behövs för att listan skall sortera nummer som nummer och inte som strängar.
list.sort(function(a,b) {
return (+a) – (+b);
});

//Vänd listan bakochfram
lista.reverse()

//Ta ut delar av en lista och gör om den till en egen lista.
sliced = list.slice(0, 2) //Den första parametern är var slicen börjar, och den andra parametern (2) är hur många objekt ur lista du vill ta ut.

//För att ta reda på om en ett visst objekt finns i en array, gör såhär.
list.indexOf(“namn”); //Svaret blir positionen i listan, i detta fall 0

//Push och pop.
//För att lägga till i en array:
myArray.push([“detta laggs till langs bak i listan”]);

//För att ta bort det sista elementet i en array
myArray.pop();

//Shift och unshift
//För att ta bort det första elementet i en array
myArray.shift();
//För att lägga till det första elementet i en array
myArray.unshift();

 

Kopiera

Gör följande för att kopiera en lista.

var lista = ["Hej", "apa", 6, 7];

kopiaAvLista = lista.concat();

Nu är kopiaAvLista en kopia av listan. Helt separat.

Om du däremot gör såhär:

var lista = ["Hej", "apa", 6, 7];

länkTillLista = lista

Då skapar du i princip bara en länk till listan.
console.log

Används för att printa ut något, det motsvarar pythons print

console.log("Vad som ska skrivas");

var

var används för att skapa en variabel.

var = firstName = "James";
var age = 20;
console.log(firstname, age);

if


if ( "johan".length > 10 ) 
{
    console.log("Let's go down the first road!");
}
else 
{
    console.log("Du har ett kort namn");// What should we do if the condition is false? Fill in here:
    
} 

Backup i WordPress

Att göra en Backup av wordpress är viktigt.

1. Gå in på wordpress och ladda ner Pluginen: Updraft Plus Backup.

2. Gå till settings. Där kan du fylla i ifall du vill automatiskt ladda upp backupen till Dropbox eller liknande. Klicka i och verifiera.

3. Gå till första sidan i pluginen igen å klicka på backup. Då skapas en backup på servern och en backup skickas till dropbox. Svårare än så är det inte.

Grundläggande SEO

Search engine optimization. Här är en lista på saker att göra för att sökmotorsoptimera en sida. Listan är inte i någon specifik ordning.

XML-sitemap
Det finns redan en XML-sitemap-skapare i Yoast.

Såhär beskriver Yoast XML-sitemaps.
A Sitemap is an XML file that lists the URLs for a site. It allows webmasters to include additional information about each URL: when it was last updated, how often it changes, and how important it is in relation to other URLs in the site. This allows search engines to crawl the site more intelligently.