WordPressAan de slag met WordPress


Opmerkingen

voer hier de afbeeldingsbeschrijving in WordPress is een open source Content Management Systeem (CMS) dat wordt gebruikt om websites te bouwen en te beheren. WordPress is het populairste CMS op internet met een mijl van een land, en voedt ongeveer de helft van alle CMS-websites op het moment van schrijven en ongeveer een kwart van alle websites op internet.

WordPress begon zijn leven als platform voor bloggen, maar is in de loop der jaren geëvolueerd om geschikt te zijn voor de meeste soorten websites. De interface kan worden gebruikt zonder kennis van codering, waardoor deze populair is voor beginners en ontwikkelaars die hun klanten in staat willen stellen hun eigen website te beheren.

Een andere grote factor in de populariteit van WordPress is zijn flexibiliteit, vooral vanwege de plug-in en de themasystemen van de kern. Het plug-insysteem maakt het gemakkelijk om de kernfunctionaliteit uit te breiden zonder de kerncode te wijzigen. Op dezelfde manier maakt het themasysteem het gemakkelijk om de lay-out en esthetiek van de website te wijzigen. Er zijn nu duizenden gratis en premium WordPress-plug-ins en thema's beschikbaar. Veel van deze bevinden zich respectievelijk in de wordpress.org plugin repository en de themarepository .

WordPress is ontwikkeld door zijn eigen gemeenschap, maar is sterk verbonden met het bedrijf Automattic , dat veel van de kernontwikkelaars van WordPress in dienst heeft.

Code

WordPress is gebaseerd op de scripttaal van de PHP- server en de MySQL- zoektaal. WordPress gebruikt MySQL als gegevensopslag voor gebruikersinhoud en -configuratie. De PHP wringt de inhoudsgegevens tot een HTML- webpagina met alle benodigde middelen.

wordpress.com versus wordpress.org

U kunt WordPress gebruiken door u aan te melden voor de wordpress.com- service van Automattic en uw website op hun servers te hosten, of u kunt de WordPress-software downloaden van wordpress.org en uw website hosten op een server onder uw controle. De eerste optie is eenvoudig, maar u kunt geen sitecode bewerken. U kunt alleen wijzigingen aanbrengen via de WordPress-interface. De tweede optie vereist meer werk, maar geeft u de flexibiliteit om te doen wat u wilt met uw websitecode. Als u een StackOverflow-gebruiker bent, gaat u waarschijnlijk met de tweede optie.

Open source

WordPress is open source software, wat betekent dat het gratis te gebruiken is en dat iedereen de broncode kan bekijken en eraan kan bijdragen. Potentiële bijdragers kunnen aan de slag gaan door de bijdragepagina van de WordPress-codex te lezen. .

Bugs kunnen worden gemeld door een bug in te dienen op de WordPress ticket tracker .

Documentatie

WordPress is officieel gedocumenteerd in de WordPress Codex op WordPress.org . Ontwikkelaars die met WordPress werken, zullen vooral geïnteresseerd zijn in de sectie Developer Codex en de sectie Developer Reference van wordpress.org .

versies

Versie Publicatiedatum
1.0 2004-01-03
1.2 2004-05-22
1.5 2005-02-17
2.0 2005-12-26
2.1 2007-01-22
2.2 2007-05-16
2.3 2007-09-24
2.5 2008-03-29
2.6 2008-07-15
2.7 2008-12-10
2.8 2009-06-10
2.9 2009-12-18
3.0 2010-06-17
3.1 2011-02-23
3.2 2011-07-04
3.3 2011-12-12
3.4 2012-06-13
3.5 2012/12/11
3.6 2013/08/01
3.7 2013/10/24
3.8 2013/12/12
3.9 2014/04/16
4.0 2014/09/04
4.1 2014/12/17
4.2 2015/04/23
4.3 2015/08/18
4.4 2015/12/08
4.5 2016/04/12
4.6 2016/08/16
4.7 2016/12/06
4.8 2017/06/08

Inleiding tot WordPress

WordPress [WP] is een open source Content Management Systeem voor het bouwen van apps, websites en blogs. WP is geschreven in PHP en gebruikt MySQL als gegevensopslag voor de gebruikersinhoud en -configuratie. Het heeft een rijk ecosysteem van plug-ins en thema's en geniet van een levendige open source-gemeenschap, goede documentatie en lage toegangsdrempels. Bruikbaarheid en ontwikkelaarsdocumentatie zijn te vinden in de WP Codex .

Een onderdeel van WordPress dat het anders maakt dan de meeste andere CMS-producten is de Event Driven Programming . Dit is een andere manier van programmeren en logische weergave dan de MVC-architectuur (Model View Controller) die door de meeste CMS-systemen wordt gebruikt. WordPress gebruikt de concepten Acties en Filters. Ze vormen een wachtrij met gebeurtenissen waarmee plug-ins en thema's delen van de uiteindelijke webtoepassingspagina en / of delen kunnen invoegen, wijzigen of zelfs verwijderen. Een soortgelijk concept is JIT of Just-In-Time compileren.

Hoewel WordPress historisch bekend staat als een blogplatform, en dit stigma misschien nooit verliest, is de focus van het kernteam van WordPress duidelijk veranderd. Met de State of the Word 2016 , door oprichter Matthew Mullenweg , zien we een duidelijke verschuiving in doelen, visie en inspanningen. In 2016 zagen we verbazingwekkende vooruitgang toen de WordPress-kern het grootste deel van de zeer populaire REST API-plug-in overnam . Dit was duidelijk de bedoeling van het kernteam in het begin toen ze een gedurfde poging begonnen om een front-end JavaScript CMS-beheerpaneel te bouwen, dat breekt met de gouden standaard die we al zoveel jaren hebben gezien; ze noemden het Calpyso .

WordPress-thema's

URL's toewijzen aan specifieke sjablonen

Om WordPress-thema's volledig te begrijpen, moet u twee primaire concepten begrijpen:

  1. Permalinks
  2. De sjabloonhiërarchie

Een permalink is een permanente, niet-veranderende URL (of link naar een specifieke bron. Bijvoorbeeld:

  • voorbeeld.com/about-us/ (een pagina in WP)
  • example.com/services/ (een lijst met meerdere items, ook wel een "archief" genoemd in WP-lingo)
  • example.com/services/we-can-do-that-for-you/ (een afzonderlijk item)

Wanneer een gebruiker om een URL vraagt, maakt WordPress een reverse-engineering van de permalink om erachter te komen welke sjabloon de lay-out moet besturen. WordPress zoekt naar de verschillende sjabloonbestanden die dit specifieke stuk inhoud kunnen besturen, en geeft uiteindelijk de voorkeur aan de meest specifieke die het vindt. Dit staat bekend als de sjabloonhiërarchie.

Zodra WP de overeenkomende weergavesjabloon in de hiërarchie vindt, gebruikt het dat bestand om de pagina te verwerken en weer te geven.

Bijvoorbeeld: index.php (de standaardsjabloon 'catch-all') wordt overschreven door archive.php (de standaardsjabloon voor op inhoud gebaseerde lijst), die op zijn beurt wordt overschreven door archive-services.php (een sjabloon bestand specifiek voor het archief genaamd "services").

Hier is een geweldige visuele referentie voor de sjabloonhiërarchie

Basisthema Directorystructuur

Een eenvoudig thema ziet er ongeveer zo uit:

    // Theme CSS
    style.css

    // Custom functionality for your theme
    functions.php

    // Partials to include in subsequent theme files
    header.php
    footer.php
    sidebar.php
    comments.php

    // "Archives", (listing views that contain multiple posts)
    archive.php
    author.php
    date.php
    taxonomy.php
    tag.php
    category.php

    // Individual content pages
    // Note that home and frontpage templates are not recommended
    // and they should be replaced by page templates
    singular.php
    single.php
    page.php
    front-page.php
    home.php

    // Misc. Utility Pages
    index.php (a catch-all if nothing else matches)
    search.php
    attachment.php
    image.php
    404.php
 

Voorbeeld van een "Single" (sjabloon voor een afzonderlijke post)

<?php get_header(); ?>

<?php if ( have_posts() ) while ( have_posts() ) : the_post(); ?>
    <h1><?php the_title(); ?></h1>
    <?php the_content(); ?>
    <?php comments_template( '', true ); ?>
<?php endwhile; ?>

<?php get_sidebar(); ?>
<?php get_footer(); ?>
 

Wat gebeurt er hier? Eerst laadt het header.php (vergelijkbaar met een PHP include of nodig), stelt The Loop in, toont the_title en the_content en bevat vervolgens comments.php , sidebar.php en footer.php . De Loop doet het zware werk, het opzetten van een Post object, dat alle informatie voor de momenteel bekeken inhoud bevat.

Voorbeeld van een "archief" (sjabloon voor een lijst met meerdere berichten)

<?php get_header(); ?>

<?php if ( have_posts() ) while ( have_posts() ) : the_post(); ?>
    <a href="<?php the_permalink(); ?>"<?php the_title(); ?></a>
    <?php the_excerpt(); ?>
<?php endwhile; ?>

<?php
    next_posts_link( 'Older Entries', $the_query->max_num_pages );
    previous_posts_link( 'Newer Entries' );
?>

<?php get_sidebar(); ?>
<?php get_footer(); ?>
 

Ten eerste bevat het header.php , stelt The Loop in en bevat sidebar.php en footer.php . Maar in dit geval zijn er meerdere berichten in de lus, dus in plaats daarvan wordt een fragment getoond met een link naar het individuele bericht. next_posts_link en previous_posts_link zijn ook opgenomen zodat het archief resultaten kan pagineren.

Berichten, pagina's, aangepaste berichttypen en aangepaste velden

Out of the box ondersteunt WordPress twee soorten inhoud: Posts en Pages . Berichten worden meestal gebruikt voor niet-hiërarchische inhoud zoals blogberichten. Pagina's worden gebruikt voor statische, zelfstandige inhoud, zoals een pagina Over ons of de pagina Services van een bedrijf met daaronder geneste subpagina's.

Vanaf versie 3.0 kunnen ontwikkelaars hun eigen aangepaste berichttypen definiëren om de functionaliteit van WordPress verder te brengen dan alleen de basis. Naast aangepaste berichttypen, kunt u ook uw eigen aangepaste velden maken om toe te voegen aan uw berichten / pagina's / aangepaste berichttypen, zodat u een gestructureerde manier kunt bieden voor het toevoegen en openen van metagegevens binnen uw sjablonen. Zie: Geavanceerde aangepaste velden .