WordPress オリジナルテーマ 【Code Tips minimum Theme】

  Code Tips minimum Theme

Code Tips minimum Theme

オリジナルテーマ「Code Tips minimum Theme」をゼロ(白紙の状態)から作成してきましたが、今回でひとまず完成とします。
WordPressのテーマの基本的な機能は確認できたかなと思います。

 

追記:2016.12. GitHub で公開しました。
https://github.com/ctips/ctips-minTheme
 Clone or download  からダウンロードできます。

 

WordPressには、まだまだ使用していないテンプレートタグやテンプレートファイル、その他の機能がたくさんあるので、機会があったらさらにトライしてみようかなと思います。

※WordPressのテーマの構造や動作を確認しながら理解を深めることが目的だったので、スタイルシートによるデザイン・装飾はしていません。

 

404.php
<?php get_header(); ?>
<h2>404 Page Not Found</h2>
<h3>申し訳ございません、お探しのページは見つかりませんでした。</h3>
<p>
  入力したURLが誤っているか、URLが変更・削除された可能性があります。
  <br>
  URLをご確認の上、再読み込みするかトップページへお戻りください。
  またはサイト内検索をご活用ください。
</p>
<?php get_search_form(); ?>
& class="mokuji"ter(); ?>

 

footer.php
<?php
  $last_year = '';
  $last_year_query = new WP_Query();
  $last_year_param = array(
    'posts_per_page' => '1'
  );
  $last_year_query->query($last_year_param);
  if ($last_year_query->have_posts()) : while ($last_year_query->have_posts()) : $last_year_query->the_post();
    $last_year = get_the_date('Y');
  endwhile;
  endif;
  wp_reset_postdata();

  $start_year = '';
  $start_year_query = new WP_Query();
  $start_year_param = array(
    'posts_per_page' => '1',
    'orderby' => 'date',
    'order' => 'ASC'
  );
  $start_year_query->query($start_year_param);
  if ($start_year_query->have_posts()) : while ($start_year_query->have_posts()) : $start_year_query->the_post();
    if (get_the_date('Y') != $last_year) {
      $start_year = get_the_date('Y') . ' - ';
    }
  endwhile;
  endif;
  wp_reset_postdata();
?>

<footer>&copy; <?php bloginfo('name'); echo '&nbsp;' . $start_year . $last_year; ?>.</footer>
<?php wp_footer(); ?>
</body>
</html>

 

functions.php
<?php
// css
function register_style() {
  wp_register_style('style', get_stylesheet_uri(), array(), false, 'all');
}
function add_stylesheet() {
  register_style();
  wp_enqueue_style('style');
}
add_action('wp_enqueue_scripts', 'add_stylesheet');
// sidebar
function my_widgets_init() {
    $my_widgets_param = array(
    'name' => 'Sidebar',
    'id' => 'sidebar-1'
  );
  register_sidebar( $my_widgets_param );
}
add_action('widgets_init', 'my_widgets_init');
// custom menu
function register_my_menu() {
  register_nav_menu('primary', 'Primary Menu');
}
add_action('after_setup_theme', 'register_my_menu');
// custom background
$background_param = array(
  'default-color' => 'ffffff'
);
add_theme_support( 'custom-background', $background_param );
// custom header
$header_params = array(
    'width' => 1140,
    'height' => 250,
    'header-text' => false
  );
add_theme_support( 'custom-header', $header_params );
// thumbnails
add_theme_support('post-thumbnails');
// search-form >> html5
add_theme_support('html5', array('search-form'));
?>

 

header.php
<!DOCTYPE html>
<html <?php language_attributes(); ?>>
<head>
  <meta charset="<?php bloginfo( 'charset' ); ?>">
  <title><?php wp_title('|', true, 'right'); ?><?php bloginfo('name'); ?></title>
  <?php wp_head(); ?>
</head>
<body <?php body_class(); ?>>
  <h1><a href="<?php bloginfo('url'); ?>/"><?php bloginfo('name'); ?></a></h1>
  <?php wp_nav_menu(); ?>
  <?php if (get_header_image()) : ?>
  <a href="<?php echo esc_url( home_url( '/' ) ); ?>" rel="home"><img src="<?php header_image(); ?>" alt="<?php bloginfo('name'); ?>"></a>
  <?php endif; ?>

 

home.php
<?php get_header(); ?>
  <?php if (have_posts()) : while (have_posts()) : the_post(); ?>

  <?php the_title( '<h2><a href="' . esc_url( get_permalink() ) . '">', '</a></h2>' ); ?>
  <?php if(has_post_thumbnail()) : ?>
  <?php the_post_thumbnail(); ?>
  <?php endif; ?>
  <?php the_content('続きを読む…'); ?>
  <?php echo get_the_date(); ?>

  <?php endwhile; ?>
  <?php
    $pagination_param = array(
      'mid_size' => 2,
      'prev_text' => '&lt;',
      'next_text' => '&gt;',
      'screen_reader_text' => 'Page Navigation'
    );
    the_posts_pagination($pagination_param);
  ?>
  <?php endif; ?>

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

 

index.php
<?php get_header(); ?>

  <?php if (is_category()) : ?>
  <?php
    $category = get_the_category();
    $cat_name = $category[0]->cat_name;
    echo '<h2>' . $cat_name . '</h2>';
  ?>

  <?php elseif (is_tag()) : ?>
  <h2><?php single_tag_title('TAG : '); ?></h2>

  <?php elseif (is_search()) : ?>
  <h2>SEARCH KEY WORDS : <?php the_search_query() ?></h2>
  <?php endif ?>

  <?php if (have_posts()) : while (have_posts()) : the_post(); ?>

  <?php the_title( '<h3><a href="' . esc_url( get_permalink() ) . '">', '</a></h3>' ); ?>

  <?php if(has_post_thumbnail()) : ?>
  <?php the_post_thumbnail(); ?>
  <?php endif; ?>

  <?php echo get_the_date(); ?>

  <?php endwhile; ?>
  <?php
    $pagination_param = array(
      'mid_size' => 2,
      'prev_text' => '&lt;',
      'next_text' => '&gt;',
      'screen_reader_text' => 'Page Navigation'
    );
    the_posts_pagination($pagination_param);
  ?>
  <?php endif; ?>

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

 

sidebar.php
<?php if(is_active_sidebar('sidebar-1')) : ?>
<ul>
<?php dynamic_sidebar('sidebar-1'); ?>
</ul>
<?php endif; ?>

 

single.php
<?php get_header(); ?>
  <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
 
  <?php the_title( '<h2>', '</h2>' ); ?>
  <?php the_category(' , ') ?><?php echo get_the_date(); ?>
  <?php if(has_post_thumbnail()) : ?>
  <?php the_post_thumbnail('large'); ?>
  <?php endif; ?>
  <?php the_content(); ?>
  <?php previous_post_link('%link','&lt; PREVIOUS'); ?> | <?php next_post_link('%link','NEXT &gt;'); ?>

  <?php endwhile; ?>
  <?php endif; ?>

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

 

style.css
/*
Theme Name: ctips-minTheme
Theme URI: https://ctips.slackhack.net/wordpress/ctips-mintheme/
Author: code tips
Author URI: https://ctips.slackhack.net
Description: Code Tips minimum Theme. minimum & without style
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

※WordPressのテーマの構造や動作を確認しながら理解を深めることが目的だったので、スタイルシートによるデザイン・装飾はしていません。

 

Code Tips minimum Theme の記事一覧