wordpress backend customizen

waarom?

  • WordPress is erg flexibel
  • Voor custom thema's te uitgebreid
  • Bijvoorbeeld bepaalde output of functies
  • Goed thema maakt keuzes voor de gebruiker

Code editor

  • Waarom moeten klanten dit kunnen aanpassen?
  • Dingen kunnen stuk gaan
  • Beveiligingsrisico voor hackerts
  • Thema en plugin editor uitschakelen

 

​define( 'DISALLOW_FILE_EDIT', true );

wysiwyg

  • Visual editor heeft veel mogelijkheden
  • Knutselen met tekst-kleuren en font-groottes
  • Opmaak van de site kan erop achteruitgaan
  • Uitzetten?
  • Ook geen HTML viewer meer...

 

function iv_disable_editor(){
    return false;
}
add_filter('user_can_richedit', 'iv_disable_editor', 50);

wysiwyg

  • Kom je een heel eind
  • Basis styling nog beschikbaar
  • Ook weg?


# '' werkt niet, ',' wel
function iv_show_quicktags( $qtInit ) {
    $qtInit['buttons'] = 'strong,em,block';
    return $qtInit;
}
add_filter('quicktags_settings', 'iv_show_quicktags');

Media in berichten

  • Bijvoorbeeld custom post types
  • Vaak zijn bijv. afbeeldingen onnodig
  • Featured image / ACF als alternatief
  • 'Add media' kan verward worden met featured image

 

function iv_remove_add_media(){
    remove_action( 'media_buttons', 'media_buttons' );
}
add_action('admin_head', 'iv_remove_add_media');

Customizer

  • Veel gebruikt voor standaard thema's
  • Wellicht te flexibel
  • Mogelijk conflicten met custom thema

 

function iv_remove_customizer_options( $wp_customize ) {
    // $wp_customize->remove_section( 'static_front_page' );
    // $wp_customize->remove_section( 'title_tagline' );
    $wp_customize->remove_section( 'colors' );
    $wp_customize->remove_section( 'header_image' );
    $wp_customize->remove_section( 'background_image' );
    // $wp_customize->remove_section( 'nav' );
    // $wp_customize->remove_section( 'themes' );
    $wp_customize->remove_section( 'featured_content' );
    $wp_customize->remove_panel( 'widgets' );
}
add_action( 'customize_register', 'iv_remove_customizer_options', 30);

Menu items

  • Ongebruikte items
  • Bijvoorbeeld sites zonder comments
  • Doet niks; waarom tonen?

 

function iv_custom_menu_page_removing() {
  // remove_menu_page( 'index.php' );                  // Dashboard
  // remove_menu_page( 'edit.php' );                   // Posts
  // remove_menu_page( 'upload.php' );                 // Media
  // remove_menu_page( 'edit.php?post_type=page' );    // Pagina's
  remove_menu_page( 'edit-comments.php' );             // Reacties
  // remove_menu_page( 'themes.php' );                 // Appearance
  // remove_menu_page( 'plugins.php' );                // Plugins
  // remove_menu_page( 'users.php' );                  // Gebruikers
  // remove_menu_page( 'tools.php' );                  // Tools
  // remove_menu_page( 'options-general.php' );        // Instellingen
}
add_action( 'admin_menu', 'iv_custom_menu_page_removing' );

Paragrafen in tinymce

  • Enter == nieuwe paragraaf
  • Veel ruimte tussen zinnen
  • Shift + enter is een nieuwe regel
  • Welke gebruiker weet dat?
  • HINT HINT


function iv_edit_form_after_title() {
    $hint = '<strong>HINT:</strong> Gebruik SHIFT + ENTER voor een nieuwe regel. ENTER maakt een nieuwe paragraaf.';
    echo '<p>'.$hint.'</p>';
}
add_action( 'edit_form_after_title', 'iv_edit_form_after_title' );

Paragrafen in tinymce

mu-plugins

  • Must-use plugins
  • Alternatieve plugin directory
  • mu-plugins/
  • Automatisch actief
  • Niet uitgeschakeld
  • Voor andere plugins geladen
  • Kan ook voor bijvoorbeeld CPT's?
  • Oorspronkelijk gebruikt voor WPMU

mu-plugins

  • Geen update notificaties
  • Geen update status
  • Activation hooks werken niet, kans op fouten
  • Alleen PHP files direct in de directory
  • Hiervoor is een loader wel mogelijk

 

// mu-plugins/load.php
require WPMU_PLUGIN_DIR . '/my-plugin/my-plugin.php';

mu-plugins

Nuttig?

  • Verschilt per site
  • Ik zou bijv. de HTML editor niet weghalen
  • Code editor & menu items weghalen

deck

By Dimitri Snijder

deck

  • 33