1. Creare child theme
În directorul cu tema nouă se crează un fişier style.css cu codul:
/* Theme Name: Twentytwelve Child Author: Description: Child theme for the twentytwelve theme Template: twentytwelve */ @import url("../twentytwelve/style.css");
2. Înregistrare widget
În acelaşi director cu tema nouă se adaugă fişierul function.php:
<?php function twentytwelvechild_widgets_init() { register_sidebar( array( 'name' => __( 'Denumire widget', 'twentytwelve' ), 'id' => 'sidebar-9', 'description' => __( 'Descriere widget', 'twentytwelve' ), 'before_widget' => '<aside id="%1$s" class="widget %2$s">', 'after_widget' => '</aside>', 'before_title' => '<h3 class="widget-title">', 'after_title' => '</h3>', ) ); } add_action( 'widgets_init', 'twentytwelvechild_widgets_init' );
3. Creare template pagină personalizată
Se copiază page.php în folderul cu tema nouă cu un alt nume (pagechild.php de exemplu) şi se modifică începutul fişierului cu codul de mai jos:
<?php /* Template Name: Denumire template */
Pentru o clonă twentytwelve se copiază cu o denumire nouă (contentchild-page.php) şi fişierul content-page.php responsabil cu afişarea conţinutului paginii personalizate. Referinţa în pagechild.php va fi:
<?php get_template_part( 'contentchild', 'page' ); ?>
4. Adăugare widget în conţinut
Widget-ul se afişează prin inserarea codului următor într-un bloc div de conţinut (cum ar fi clasa CSS entry-content) din pagina personalizată.
<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('sidebar-9') ) : ?> <?php endif; ?>
Widget-ul se configurează din panoul de control, iar afişarea se va face doar în paginile cu template-ul nou creat.