WordPress 5.3 ”Kirk” släpptes officiellt den 12:e November 2019 och är tillgänglig för nedladdning.

Så vad förändrades med WordPress 5.3?

Först och främst har ett jättestort antal utgåvor av Gutenberg-pluginet fusionerats i kärnan, från 5.4 till 6.6. Detta innebär ett stort antal funktioner och förbättringar för både användare och utvecklare, samt en viktig ökning i prestanda.

Men det finns mycket mer än Gutenberg i WordPress 5.3. Faktum är att den här versionen har flera förbättringar relaterade till verktyget för sajthälsa, ett helt nytt standardtema (TwentyTwenty), förbättringar i Admin-användargränssnittet, bättre stöd för PHP 7.4, förbättrad tillgänglighet och mer.

Det är en massa fantastiska grejer, eller hur? Så, låt oss sätta igång och gräva djupare i WordPress 5.3.

Vad är Nytt i Block-redigeraren

Sedan den lanserades har Blockredigeraren regelbundet förbättrats tack vare bidragsgivarnas engagemang från över hela världen. Nya utgåvor slås dock inte samman till kärnan så snart de är tillgängliga.

Med 5.3 har tretton utgåvor av Gutenberg-pluginet fusionerats i kärnan på en gång. Så, om du inte har använt Gutenberg plugin hittills, och du har inte regelbundet uppdaterat det med tiden, hittar du många förbättringar och nya funktioner i Blockredigeraren med utgåvan av WordPress 5.3.

Övergripande prestandaförbättringar har också rapporterats. Följande benchmark jämför prestandan för ett stort inlägg (36 000 ord/1 000 block) med olika versioner av Gutenberg-pluginet.

Du kanske inte märker skillnaden i laddningstid med vanliga inlägg, men det är helt klart den allmänna förbättringen av redaktörens prestanda.

Version Laddningstid KeyPress-händelse (skriva)
Gutenberg 6.6.0 4.7 s 38.96 ms
Gutenberg 6.5.0 4.68 s 42.96 ms
WordPress 5.2 5.69 s 57.65 ms

Det skulle vara svårt att göra en fullständig lista över alla tillägg, ändringar och buggfixar, så vi valde dem med störst inverkan på användarupplevelsen/utvecklarupplevelsen och grupperade dem enligt följande:

Förbättringar i Redigeringsupplevelsen

Om du inte har installerat Gutenberg-pluginet tidigare hittar du ett helt nytt block: Gruppblocket. Tillagt med utgåvan av Gutenberg 5.5, Gruppblocket är en allsidig container för andra block så att du kan skapa avancerade blockmallar som ska inkluderas på vilken sida som helst på din WordPress-webbplats.

Det nya gruppblocket stöder breda anpassningar och bakgrundsfärger, vilket ger WordPress-användare gott om frihet när de skapar innehåll.

Förutom Gruppblocket tittade vi på tio förbättringar i Blockredigeraren som borde ha stor inverkan på hur du använder redigeraren.

1. Block-bifogaren

Grupp- och Kolumnblocken visar nu en block-bifogare när det är tomt. Bifogaren är bara ett grått område med ett plustecken inuti som gör användargränssnittet tydligare och förbättrar blockanvändbarheten.

Ett tomt gruppblock i WordPress 5.3
Ett tomt gruppblock i WordPress 5.3

2. Gruppera Block efter Gruppinteraktion

Du kan nu skapa gruppblock genom ”grupp”-interaktion, vilket innebär att du kan välja flera block och gruppera dem med bara några klick. Du behöver bara lägga till alla block du behöver till ditt val och klicka sedan på Grupp i ellipsmenyn. Klart!

Skapa block efter gruppinteraktion
Skapa block efter gruppinteraktion

3. Kolumner med Anpassad Bredd

Kolumnblocket stöder nu en slider-kontroll i Blockinställningar så att du kan ställa in en anpassad bredd för varje kolumn (i en framtida utgåva kan vi förvänta oss ytterligare förbättringar av Kolumnblocket med införandet av en dragbar storleksändringskontroll).

Kolumnblocket i WordPress 5.3
Kolumnblocket i WordPress 5.3

4. En Layoutväljare för Kolumnblock

En ytterligare förbättring av Kolumnblocket i WordPress 5.3 är layoutväljaren. Den lades till redigeraren med Gutenberg 6.0, och låter användare välja mellan flera fördefinierade layouter (mönster) eller hoppa till standardlayouten, påskynda redigeringsprocessen lite och göra blocket lättare att använda för mindre tekniskt kunniga användare.

Kolumnblockets layoutväljare
Kolumnblockets layoutväljare

Layoutväljaren är en implementering av Blockmönster API som ger ett sätt att välja mellan en fördefinierad uppsättning alternativ att välja mellan när du lägger till ett block. Bortsett från Kolumnblocket kan vi hitta exempel på Blockmönster i Tabell och Omslagsblocken. Du kan läsa mer om Blockmönster API på GitHub.

Omslagsblockmönster
Omslagsblockmönster

5. Förbättringar Av Tabellblocket

Tabellblocket har förbättrats med flera nya funktioner. Den stöder nu textjusteringar i kolumner, tabellhuvud och sidfot och bakgrundsfärger.

Det nya Tabellblocket stöder textjusteringar, sidhuvud och sidfot och bakgrundsfärger
Det nya Tabellblocket stöder textjusteringar, sidhuvud och sidfot och bakgrundsfärger

6. Blocknavigeringsläge

Gutenberg 6.3 introducerade Navigeringsläget för att navigera mellan block med hjälp av Tab– eller piltangenterna utan att gå in i blockinnehållet. Användare kan växla från Navigeringsläge till Redigeringsläge och tillbaka bara genom att trycka på Enter eller Esc. Denna funktion är en stor förbättring av användbarheten, särskilt när det gäller skärmläsare.

7. Tillagd Rörelse till Blockändringar och Omarrangeringar

En ytterligare förbättring av användbarheten kommer med införandet av rörelse till blockförändringar, skapande, borttagning och omordning. Matías Ventura förklarar varför denna funktion är relevant:

Tänk på en lista som innehåller en uppsättning objekt: åtgärden att flytta, omordna och så vidare påverkar inte bara det enda objektet som åtgärden gäller, utan resten av uppsättningen också, särskilt den som det ”byter plats” med. Logiken säger oss att för att sätta någonting i en annan saks plats måste båda sakerna röra på sig. En förändring i tillståndet för hela gruppen kan vara svårare att hantera. Det tar en stund att omorientera. Övergångar och gestbaserade interaktioner hjälper i allmänhet att ansluta dessa två tillstånd på ett sätt som gör interaktionen (”det som just hände”) mer omedelbart förståelig.

Blockrörelse
Blockrörelse

8. Omordning av Inline-bild i Galleriblock

Galleriblocket har förbättrats med inline-bildomordning. Vi kan nu ordna om bilder i galleriet med ett enkelt klick på Flytta bilden framåt och Flytta bilden bakåt-knappar utan att öppna media-modalskärmen.

Det förbättrade Galleriblocket
Det förbättrade Galleriblocket

9. Förbättringar i Senaste Inlägg-blocket

Senaste inlägg-blocket stöder nu utdrag och inläggsinnehållsiteration (se pull #14627).

Senaste inlägg-widgeten stöder utdrag och inläggsinnehåll
Senaste inlägg-widgeten stöder utdrag och inläggsinnehåll

Blockinställningspanelen innehåller nu ett avsnitt där användaren kan växla inläggsinnehåll av/på. Om Inläggsinnehåll är aktiv, kan du välja mellan Utdrag och Helt inlägg-alternativ. Slutligen kan du styra utdragets längd med en slider om Utdrag är ikryssat.

Denna senaste förändring är en del av en bredare strategi som fokuserar på övergripande gränssnitts-förbättringar. I Iterationer på ”senaste inlägg”-blocket, säger Mel Choyce:

Som förberedelse för att arbeta med sidmallar i Gutenberg vill vi ha en robust uppsättning dynamiska block som kan användas i alla inlägg eller sidor. Att expandera detta block kommer att göra det möjligt för oss att ta itu med mer komplexa dynamiska eller globala block i framtiden.

Användarna ska inte behöva veta hur man skriver egna förfrågningar eller förstå slingan för att lägga till inlägg på deras hemsida. Senaste inläggs-blocket är en bra start, men för att vara en fullt fungerande lösning måste den stödja mer än titlar och inläggsdatum.

10. Förbättringar till Listblocket

Listblocket stöder nu indrag/utdrags-genvägar, startvärde och omvänd ordnings-stöd för ordnade listor.

Ordnad lista-inställningar i listblock
Ordnad lista-inställningar i listblock

Ytterligare Förbättringar av Blockredigeraren

På grund av det stora antalet Gutenberg-pluginversioner som slå samman i kärnan, finns det massor av förändringar, förbättringar och buggfixar som vi inte ens kunde nämna här. Några ytterligare förbättringar och nya funktioner inkluderar:

Intressanta Funktioner för Temautvecklare och Designers

WordPress 5.3 lägger till många funktioner och förbättringar till Blockredigeraren för temautvecklare och designers också.

Tre huvudförändringar involverar temadesigners och är relaterade till CSS och HTML för flera block.

1. Gruppblockets Inre Behållare

Gruppblocket innehåller nu en inre container (wp-block-group__inner-container) som kan sträcka sig bortom huvudblockets container om den inte är noggrant utformad. Detta kan leda till oväntade effekter på hur sidan kommer att se ut.

Gruppblockets inre container i Blockredigeraren
Gruppblockets inre container i Blockredigeraren

Med teman som stöder bred och fullbreddsjusteringar kan en blockcontainter därför kräva ytterligare CSS för den ska visas som förväntat.

Gruppblocks inre behållare på frontenden
Gruppblocks inre behållare på frontenden

Här är ett exempel från Make WordPress Core-bloggen som visar hur du stylar block för att förhindra denna typ av problem:

// Apply entry-content styles to the group block's inner container as well. 
.entry-content,
.wp-block-group__inner-container {
	width: 60vw;
	margin: 0 auto;
}
 
// When a group block has a wide alignment, make sure that its full-width children do not extend beyond the width of the container. 
.alignwide,
.wp-block-group.alignwide .alignfull {
	margin-left: -10vw;
	width: 80vw;
}
 
.alignfull {
	margin-left: -20vw;
	width: 100vw;
}
 
// Ensure wide and full-width children do not extend beyond the width of a standard-aligned Group block.
.wp-block-group:not(.alignwide):not(.alignfull) * {
	max-width: 100%;
	margin-left: 0;
}

2. Nya Klassnamn för Textjusteringar

Innan WordPress 5.3 användes inline-stilar för att ändra justeringen av textblock (rubrik, stycke, citat och vers).

Den höga specificiteten hos inline-stilar kan göra det svårt att anpassa utseendet på dessa block. Men temadesigners kan nu dra nytta av tre nya CSS-klasser som ersätter inline-stilar:

  • has-text-align-right
  • has-text-align-center
  • has-text-align-left

Befintliga block konverteras automatiskt och klasserna tillämpas så snart inlägg öppnas och sparas i Blockredigeraren.

3. Uppdatering av Galleriblock och Tabellblock

Galleri och Tabellblock är nu inslagna i figure element. Elementstilar ändras därefter och teman kan påverkas och kan kräva en uppdatering. Här är ny markup för ett Tabellblock:

<figure class="wp-block-table is-style-stripes">
	<table class="">
		<tbody>
			<tr>
				<td>Left</td>
				<td>Center</td>
				<td>Right</td>
			</tr>
		</tbody>
	</table>
</figure>

 

Se mer information om klassnamn och ytterligare temarelaterade förändringar på bloggen Make WordPress Core.

Funktioner för Block-utvecklare

WordPress 5.3 ger förändringar och förbättringar av Block API:er.

1. Registrera och Avregistrera Blockstilar

Innan 5.3 var utvecklare och designers tvungna att skriva några JavaScript för att registrera/avregistrera stilar.

Med lanseringen av WordPress 5.3, kan vi nu dra nytta av två nya hjälpfunktioner som gör det möjligt att registrera och avregistrera blockstilar via PHP: register_block_style och unregister_block_style.

Funktionen register_block_style registrerar en ny stil för det angivna blocket. Funktionen innehåller två argument:

  • blockets namn.
  • en matris med stilegenskaper.

Matrisen kan innehålla följande parametrar:

  • name: (obligatoriskt) en unik identifierare för stilen.
  • label: (obligatoriskt) mänskligt läsbar etikett.
  • inline_style: (valfritt) en CSS-kod som registrerar CSS-klassen för stilen.
  • style_handle: (valfritt) ett namn till en redan registrerad stil (stilnamnet köar stilen där den behövs).

Vi kan registrera inline-stilar med något som följande kod:

add_action( 'init', 'register_custom_block_style' ); 

function register_custom_block_style() {
	if( ! function_exists( 'register_block_style' ) ) return;

	register_block_style(
		'core/quote',
		array(
			'name'			=> 'blue-quote',
			'label'			=> __( 'Blue Quote' ),
			'inline_style'	=> '.wp-block-quote.is-style-blue-quote { color: blue; }',
		)
	);
};

Den nya stilen är nu tillgänglig i inställningsavsnittet Stilar.

Ett citat med en anpassad stil i Blockredigeraren
Ett citat med en anpassad stil i Blockredigeraren

Istället för att registrera en inline-stil kan vi skicka ett namn till en tidigare registrerad stil:

wp_register_style( 'custom-style', get_template_directory_uri() . '/custom-style.css' );
 
register_block_style(
	'core/quote',
	array(
		'name'			=> 'custom-quote',
		'label'			=> 'Custom Quote',
		'style_handle'	=> 'custom-style',
	)
);

Följande bild visar det blå citatet som registrerats i exemplet ovan.

Ett citat med en anpassad stil på frontenden
Ett citat med en anpassad stil på frontenden

För att avregistrera en stil som tidigare registrerats på servern med register_block_style kan vi använda funktionen unregister_block_style.

Vi kan använda unregister_block_style enligt följande:

unregister_block_style( 'core/quote', 'custom-quote' );

2. Blockexempel API

WordPress 5.3 lägger till en ny JS-egendom som gör det möjligt att förhandsgranska det valda blocket från biblioteket innan du lägger till det i innehållet.

Vi kan lägga till stöd för den här funktionen genom att definiera egendomen example i blockinställningar enligt följande:

const blockSettings = {
	// ... 
 
	example: {
		attributes: { 
			content: __( 'Content of the block' )
		},
		innerBlocks: []
	} 
}
registerBlockType( name, settings );
Blockexempel API
Blockexempel API

Förbättringar i Webbplatshälsokomponenten

WordPress 5.2 introducerade Webbplatshälsoverktyget för att ge information om en webbplats hälsa och för att hjälpa webbplatsadministratörer att återställa sina webbplatser när de upplever tekniska svårigheter. Med lanseringen av WordPress 5.3 får Webbplatshälsoverktyget flera förbättringar och förändringar på båda sidor av komponenten.

1. Borttaget Webbplatshälsobetyg

I WordPress 5.2 visades en procentsats som betyg överst av Webbplatshälso-statussidan. Men vissa människor uttryckte vissa farhågor om betyget och tyckte det var tvetydigt och förvirrande, eftersom användarna kan sträva efter att nå en 100% poäng över vad som är bäst för deras hemsida (Läs mer i denna biljett).

Webbplatshälso-statussida i WordPress 5.2
Webbplatshälso-statussida i WordPress 5.2

Indikatorn visar hur många tester en webbplats har fått godkänt i, men inte dess nivå av ”hälsa”. Av denna anledning har procentsatsen tagits bort och Webbplatshälsoverktyget visar nu ett av två tillstånd, som kan betraktas som mer som påminnelser än exakta indikatorer på en webbplats prestanda och säkerhet:

  • Bör förbättras
  • Bra
Webbplatshälso-statussida i WordPress 5.3
Webbplatshälso-statussida i WordPress 5.3

2. Förbättrade Återställningsmeddelanden

När ett fel inträffar försöker WordPress att skicka ett återställningsmeddelande till webbplatsadministratören. Tyvärr ger dessa e-postmeddelanden inte användbar information för felsökning, och vi är bara informerade om att något gick fel med vår hemsida.

För att ge mer användbar information för att återställa din WordPress-webbplats introducerar WordPress 5.3 recovery_email_debug_info-filtret, vilket är en associerad array av felsökningsinformation. Återställningsmeddelandet innehåller nu den grundläggande information som ska hjälpa dig att felsöka din webbplats eller åtminstone få hjälp från andra.

Felmeddelanden kommer att innehålla en ytterligare sektion som börjar med följande sträng:

When seeking help with this issue, you may be asked for some of the following information:

Följande information tillhandahålls:

  • WordPress-version.
  • PHP-version.
  • Aktuellt tema och version.
  • Namnet och versionen av pluginet som orsakar problemet.

Information är avsiktligt reducerad till ett minimum för att undvika förvirring för slutanvändare, men utvecklare kan använda recovery_email_debug_info-filter för att lägga till mer information när det behövs (se biljett #48090 för ytterligare information).

3. Filter för Genomförda Webbplatshälso-statustester

Det nya site_status_test_result-filtret gör det möjligt för utvecklare att filtrera output av ett färdigt statustest för att förlänga resultatet av ett test.

Utvecklare kan också använda detta filter för att ge ytterligare åtgärder. Här är ett bra exempel på användning (se biljett #47864):

Ett exempel kan vara en hostingleverantör, PHP-tillägg saknas, så de lägger in en aktiv länk till PHP-tilläggshanteraren för deras kontrollpanel.
Kanske ville de vara mer direkta, de ville ha PHP-versionskontrollen, som rekommenderar användaruppdateringen, så de lägger till en Ajax-knapp som byter PHP-versionen åt dem direkt.

Detta filter är tillgängligt både i PHP, för direkta tester och som JavaScript-implementering, för asynkrona test.

Förbättringar till Admin-upplevelsen

Förutom Webbplatshälsoverktyget ger WordPress 5.3 flera förbättringar till admin-gränssnittet som bör avsevärt förbättra den övergripande upplevelsen av hela WordPress-panelen.

1. Förbättrad Färgkontrast

Färgkontrasten har förbättrats och många tillgänglighetsproblem har åtgärdats.

Inläggsskärmen i WordPress 5.2
Inläggsskärmen i WordPress 5.2
Inläggsskärmen i WordPress 5.3
Inläggsskärmen i WordPress 5.3

2. Admin-epostverifiering

En admin-epostverifiering utlöses nu när en administratör inte har loggat in under en tidsperiod. Som standard är detta intervall inställt på sex månader, men utvecklare kan ställa in ett annat intervall med hjälp av admin_email_check_interval-filtret (se biljetter #46349 och #48144).

Verifiering av e-postadministratör via WordPress
Verifiering av e-postadministratör via WordPress

För att inaktivera administratörens e-postverifieringar kan du använda följande filter:

add_filter( 'admin_email_check_interval', '__return_false' );

3. Återuppta Uppladdningar

Att ladda upp stora bilder från en smartphone kommer inte att avbrytas i mitten av processen eftersom WordPress nu stöder återupptagandet av uppladdningar när de misslyckas.

4. Bildrotation

Bilderna roteras nu korrekt vid uppladdning enligt EXIF-orientering metadata.

Ett Helt Nytt Standardtema: Twenty Twenty

WordPress 5.3 levereras med ett helt nytt standardtema: Twenty Twenty. Det är ett minimalt tema utformat för flexibilitet, tydlighet och läsbarhet, med ett stort fokus på Blockredigeraren.

Twenty Twenty WordPress-tema
Twenty Twenty WordPress-tema

Twenty Twenty har byggts på ett befintlig gratistema från communityt, Chaplin av Anders Noren, och har ett gratis och öppen källkods-typsnitt med stark personlighet: Inter av Rasmus Andersson.

Du kan läsa mer om Twenty Twenty i vårt djupgående blogginlägg: Twenty Twenty: En introduktion till WordPress nya standardtema.

Ändringar för WordPress-utvecklare

WordPress 5.3 levereras med flera ändringar och förbättringar för WordPress-utvecklare. Bland de många förändringarna tycker vi att dessa är värda att nämna:

Datum/Tid-kärnkomponentsförbättringar

Datum/tid-kärnkomponenten behandlar allt är relaterat till datum, tid och tidszoner i WordPress. Som Andrey ”Rarst” Savchenko förklarar:

Datum/tid-komponenten förlitade sig på den så kallade ”WordPress tidsstämpel” — en summa av Unix-tidsstämpel med en tidszonsjustering. Detta orsakade många buggar och brist på interoperabilitet med uppströms-PHP eller externa system. Inline-dokumentation hänvisade felaktigt till dessa som Unix-tidsstämplar.

Även om det var omöjligt att helt ta bort WordPress-tidsstämplar utan bakåtkompatibilitetsproblem, har komponentkoden förbättrats med flera buggfixar, och inline-dokumentationen har uppdaterats och korrigerats där det behövs.

Dessutom, med lanseringen av WordPress 5.3 har vi tillgång till flera nya API Datum/Tids-funktioner:

  • wp_timezone_string() – denna funktion hämtar webbplatsens tidszon som sträng. Det kan returnera PHP tidszonssträng eller en ±HH:MM offset.
  • wp_timezone() – den här funktionen hämtar webbplatsens tidszon som datetimezone-objekt.
  • wp_date() – detta är en ny funktion för datumlokalisering. Den är avsedd att ersätta date_i18n().
  • current_datetime() – den här funktionen hämtar aktuell tid som DateTimeImmutable-objekt med tidszonen från inställningar.
  • get_post_datetime() – Hämtar publiceringstid som DateTimeImmutable-objekt.
  • get_post_timestamp() – hämtar publiceringstid som-Unix tidsstämpel.

Alla dessa funktioner definieras och dokumenteras i wp-includes/functions.php.

Användningen av current_time(), get_post_time() och date_i18n() avrådes nu.

Se även datum/tidskomponentförbättringar i WordPress 5.3 och nya funktioner till API på GitHub.

Nytt Aria-current Attribut

När en ny sida eller ett inlägg publiceras visas dess namn i flera menyer och widgets. Innan WordPress 5.3, skulle många användare inte ha känt igen den länken och detta kunde ha varit förvirrande särskilt för användare med funktionshinder och/eller skärmläsar-användare.

Med lanseringen av WordPress 5.3 läggs ett nytt Aria-current="page"-attribut till programmatiskt för att peka ut länkar till samma sida och temautvecklare uppmuntras att lägga till specifika stilar till dessa länkar. Denna förändring påverkar följande kärn-widgets:

  • Senaste inlägg.
  • Navigeringsmeny.
  • Sidor.
  • Kategori.
  • Arkiv.

Här är ett exempel på användning:

a[aria-current] {
	/* CSS styles for current link */
}

Nya Aria-label-attribut i Navigeringsmenyer

Landmärken ger ett kraftfullt sätt att identifiera organisationen och strukturen på en webbsida” och låta temautvecklare lägga till stöd för tangentbordsnavigering på webbsidor med hjälp av landmärkesroller.

ARIA-landmärken ger ett sammanhang för webbinnehåll och är särskilt användbara för handikapphjälpmedelsanvändare.

På grund av betydelsen av ARIA-landmärken för tillgänglighet, lägger WordPress 5.3 nu till stöd för aria-label-attribut i inläggs- och kommentarsnavigering.

Temautvecklare och designers kan lägga till ARIA-landmärken till inläggs- och kommentarsnavigeringsmenyer genom att lägga till en ny aria_label-parameter till följande funktioner:

  • _navigation_markup()
  • get_the_post_navigation()
  • get_the_posts_navigation()
  • get_the_posts_pagination()
  • get_the_comments_navigation()
  • get_the_comments_pagination()
  • the_post_navigation()
  • the_posts_navigation()
  • the_posts_pagination()
  • the_comments_navigation()
  • the_comments_pagination()

Läs mer om aria-label-attribut i inläggs- och kommentarsnavigering på Make WordPress Core.

Funktioner för Att Lägga till UGC-värde till Rel-attribut i Länkar

I September 2019 tillkännagav Google två nya attribut som ger ett sätt att identifiera länkarnas natur: rel="sponsered" och rel="ugc":

rel=”ugc”: UGC står för användargenererat innehåll, och attributvärdet ugc rekommenderas för länkar inom användargenererat innehåll, såsom kommentarer och foruminlägg.

WordPress 5.3 lägger till stöd för rel="ugc"-attribut i kommentarer. Denna förändring har genomförts på några timmar och det är intressant att se hur snabbt utvecklingsteamet reagerade på Googles meddelande (se biljett #48022).

Dessutom introducerar WordPress 5.3 två nya funktioner som gör det möjligt för utvecklare att lägga till nofollow– och ugc-värden till rel-attribut i länkar:

  • wp_rel_callback() används för att lägga till värden till rel-attribut till angivna länkar, och ersätter nu föråldrade wp_rel_nofollow_callback() funktion.
    Funktionen definieras i wp-includes/formatting.php:
  • /**
    	 * Callback to add a rel attribute to HTML A element.
    	 *
    	 * Will remove already existing string before adding to prevent invalidating (X)HTML.
    	 *
    	 * @since 5.3.0
    	 *
    	 * @param array  $matches Single match.
    	 * @param string $rel     The rel attribute to add.
    	 * @return string HTML A element with the added rel attribute.
    	 */
    	function wp_rel_callback( $matches, $rel ) {}
  • wp_rel_ugc() lägger till både nofollow och ugc-värden till  rel -attribut i länkar.
    Funktionen definieras i wp-includes/formatting.php:
    /**
    		 * Adds `rel="nofollow ugc"` string to all HTML A elements in content.
    		 *
    		 * @since 5.3.0
    		 *
    		 * @param string $text Content that may contain HTML A elements.
    		 * @return string Converted content.
    		 */
    		function wp_rel_ugc( $text ) {
    			// This is a pre-save filter, so text is already escaped.
    			$text = stripslashes( $text );
    			$text = preg_replace_callback(
    				'||i',
    				function( $matches ) {
    					return wp_rel_callback( $matches, 'nofollow ugc' );
    				},
    				$text
    			);
    			return wp_slash( $text );
    		}

Så från och med nu kan utvecklare lägga till rel="nofollow ugc"-attribut till länkar enligt följande:

$link = 'User generated link example';
$ugc_link = wp_rel_ugc( $link );
echo $ugc_link;
// output: User generated link example

REST API i WordPress 5.3

WordPress 5.3 ger flera ändringar och förbättringar till REST API.

En av de mest relevanta ändringarna är stöd för 'object' och 'array'-datatyper till register_meta funktioner.

Med denna förbättring stöder REST API nu inbyggt komplexa metadatatyper. Detta gör det möjligt för oss att använda API för att utföra schemabaserad validering och kan förenkla klientkodinteraktionen med komplexa värden och i slutändan låta utvecklare skapa komplexa metabaserade block via REST API.

För en mer djupgående syn av detta ämne, se WP 5.3 stöder Object och Array-metatyper i REST API

En andra signifikant förbättring påverkar parametern _fields som gör det möjligt att begränsa de fält som ingår i JSON-objekten som returneras från REST API. Se följande exempel:

/wp/v2/posts?_fields=id,title,author

Sedan WordPress 5.3 kan parametern _fields användas för att filtrera REST API-responsobjektet med kapslade fält, så att vi kan be om specifika metafält eller egenskaper inom ett komplext objekt. Vi kan använda parametern _fields enligt följande:

?_fields=meta.meta-key-1,meta.meta-key-2,meta.meta-key-3.nested-prop

För en mer omfattande översikt över REST API-förbättringarna som kommer med WordPress 5.3, se REST API i WordPress 5.3.

Så här Uppdaterar du till WordPress 5.3

WordPress 5.3 släpptes den 12:e November 2019. Du kan följa instruktionerna nedan om hur du uppdaterar din webbplats.

Eftersom varje kunds webbplats är olika, bör du alltid använda den standard-iscensättningsmiljö som Kinsta tillhandahåller (eller lägga till en ny Premium-iscensättningsmiljö om din befintliga iscensättning redan används). Du kan klona din live-webbplats på några sekunder och sedan testa WordPress 5.3 med ditt befintliga tema och plugins för att kontrollera kompatibilitet. Du kan naturligtvis också ta en manuell säkerhetskopiering innan du uppdaterar din live-site, bara för att vara på den säkra sidan.

För att uppdatera WordPress till 5.3 klickar du bara på uppdateringsikonen i WordPress-panelen. Och klicka på knappen ”Uppdatera nu”. Medan din webbplats uppdateras kommer den att vara i underhållsläge. Så snart dina uppdateringar är klara kommer din webbplats att återgå till det normala.

Uppdatera till WordPress 5.2 i instrumentpanelen
Uppdatera till WordPress 5.2 i instrumentpanelen

Så länge allt går bra med uppdateringen bör du se skärmen ”Välkommen till WordPress 5.3”. Och det var allt! Snabbt och enkelt.

WordPress 5.3 välkomstskärm
WordPress 5.3 välkomstskärm

Efter att ha klickat runt i instrumentpanelen får du också ett meddelande för att uppdatera din databas till den senaste versionen. Klicka bara på knappen ”Uppdatera WordPress-databas” och du är klar.

Databasuppdatering krävs
Databasuppdatering krävs

Felsöka Problem med WordPress-uppdateringar

När folk uppdaterar en större version av WordPress, finns det alltid några som upplever problem, och det beror på de tusentals olika plugins och teman som för närvarande existerar på marknaden. Här är några sätt att felsöka vanliga problem.

  • Din webbplats kan fortfarande vara delvis cachad. Du kan lösa detta genom att rensa helsidescachen på din WordPress-webbplats.
  • Försök att inaktivera alla dina plugins för att se om det åtgärdar problemet. Återaktivera dem sedan ett efter ett tills du hittar vilket plugin som kan behöva en uppdatering från utvecklaren.
  • Försök att byta till ett standard WordPress-tema, till exempel Twenty Twenty. Om detta åtgärdar ditt problem kanske du vill nå ut till din temautvecklare.
  • Felsöka och diagnostisera JavaScript-problem i din webbläsare.

Sammanfattning

Vi har berättat om de mest spännande funktionerna och förbättringarna i WordPress 5.3.

Med tretton versioner av Gutenberg-pluginet som förs samman i kärnan, flera förbättringar av Webbplatshälsoverktyget, ett helt nytt standardtema, förbättringar i admin-gränssnittet, nya funktioner för utvecklare och temadesigners, bättre stöd för PHP 7.4, och ett otroligt antal små förändringar, buggfixar och avskrivningar, är WordPress 5.3 en viktig milstolpe i utvecklingen av innehållshanteringssystemet.

Vilka är dina favoritfunktioner/förbättringar? Missade vi nåt viktigt? Dela dina tankar med oss i kommentarfältet.

Carlo Daniele Kinsta

Carlo is a passionate lover of webdesign and front-end development. He has been playing with WordPress for more than 20 years, also in collaboration with Italian and European universities and educational institutions. He has written hundreds of articles and guides about WordPress, published both on Italian and international websites, as well as on printed magazines. You can find him on LinkedIn.