Урок 7. Функции файла index.php
Мы протестировали тему, убедились что все файлы содержат верную кодировку и
теперь доведем до конца создание файла index.php, а именно пропишем функции для
вывода содержания блога.
Файл index.php предназначен для вывода страниц и постов блога. Начнём с того,
что заключим всё содержание выводимой информации в один блок:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title><?php bloginfo(’name’); ?><?php wp_title(); ?></title>
<style type="text/css" media="screen">
@import url( <?php bloginfo(’stylesheet_url’); ?> );
</style>
<?php wp_head(); ?>
<link href="<?php bloginfo('url'); ?>/wp-content/themes/free_subject/favicon.ico"
rel="shortcut icon">
</head>
<body>
<div align="center">
<table border="0" cellpadding="8" cellspacing="0" width="900" id="page">
<tr>
<td colspan="3">
<!-- Выводим на страницу header -->
<?php get_header(); ?>
<!-- Конец вывода header -->
</td>
</tr>
<tr>
<td width="200" valign="top">
<!-- Выводим на страницу sidebar -->
<?php get_sidebar(); ?>
<!-- Конец вывода sidebar -->
</td>
<td width="500" valign="top">
<!-- Выводим на страницу index -->
<div id="index">
Контент, файл index.php, тут будут разные функции.
</div><!– /index –>
<!-- Конец вывода index -->
</td>
<td width="200" valign="top">
<!-- Выводим на страницу sidebar_right -->
<?php include(TEMPLATEPATH . ‘/sidebar_right.php’); ?>
<!-- Конец вывода sidebar_right -->
</td>
</tr>
<tr>
<td colspan="3">
<!-- Выводим на страницу footer -->
<?php get_footer(); ?>
<!-- Конец вывода footer -->
</td>
</tr>
</table>
</div>
</body>
</html>
Чтобы не запутаться в закрывающих тегах для </div> допишем пояснения вида
<!-- /index -->
Итак, начнём, для вывода постов (записей) необходим следующий цикл:
<div id="index">
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<?php endwhile; else: ?>
<?php endif; ?>
</div><!-- /index -->
Теперь будем работать внутри этого цикла, добавим вывод заголовка поста и
выделим его тегом
<h1><div id="index">
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<h1><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h1>
<?php endwhile; else: ?>
<?php endif; ?>
</div><!-- /index -->
Выводим содержание статьи:
<div id="index">
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<h1><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h1>
<?php the_content(__(’(more…)’)); ?>
<?php endwhile; else: ?>
<?php endif; ?>
</div><!-- /index -->
Можно вывести ещё информацию об авторе статьи, дату и время публикации, мы этого
делать не будем. Выведем информацию о том в какой рубрике написан пост:
<div id="index">
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<h1><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h1>
<?php the_content(__(’(more…)’)); ?>
<?php _e("Написано в рубрике:"); ?> <?php the_category(’,') ?>
<?php endwhile; else: ?>
<?php endif; ?>
</div><!-- /index -->
Выводим список использованных меток:
<div id="index">
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<h1><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h1>
<?php the_content(__(’(more…)’)); ?>
<?php _e(”Написано в рубрике:"); ?> <?php the_category(’,') ?>
<?php the_tags(’Метки:’); ?>
<?php endwhile; else: ?>
<?php endif; ?>
</div><!-- /index -->
Функция для редактирования записи:
<div id="index">
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<h1><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h1>
<?php the_content(__(’(more…)’)); ?>
<?php _e("Написано в рубрике:"); ?> <?php the_category(’,') ?>
<?php the_tags(’Метки:’); ?>
<?php edit_post_link(’Редактировать’); ?>
<?php endwhile; else: ?>
<?php endif; ?>
</div><!-- /index -->
Выводим функции для навигации по страницам блога:
<div id="index">
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<h1><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h1>
<?php the_content(__(’(more…)’)); ?>
<?php _e("Написано в рубрике:"); ?> <?php the_category(’,') ?>
<?php the_tags(’Метки:’); ?>
<?php edit_post_link(’Редактировать’); ?>
<?php next_posts_link(__(’Предыдущая запись’)) ?>
<?php previous_posts_link(__(’Следующая запись’)) ?>
<?php endwhile; else: ?>
<?php endif; ?>
</div><!-- /index -->
Вызываем информацию о комментариях:
<div id="index">
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<h1><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h1>
<?php the_content(__(’(more…)’)); ?>
<?php _e("Написано в рубрике:"); ?> <?php the_category(’,') ?>
<?php the_tags(’Метки:’); ?>
<?php edit_post_link(’Редактировать’); ?>
<?php next_posts_link(__(’Предыдущая запись’)) ?>
<?php previous_posts_link(__(’Следующая запись’)) ?>
<?php comments_popup_link(’Нет комментариев’, ‘1 Комментарий’, ‘%
Комментариев’); ?>
<?php comments_template(); ?>
<?php endwhile; else: ?>
<?php endif; ?>
</div><!-- /index -->
Наконец выводим сообщение об ошибке если запрошенной страницы не существует,
обратите внимание куда правильно вставлять этот код:
<div id="index">
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<h1><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h1>
<?php the_content(__(’(more…)’)); ?>
<?php _e("Написано в рубрике:"); ?> <?php the_category(’,') ?>
<?php the_tags(’Метки:’); ?>
<?php edit_post_link(’Редактировать’); ?>
<?php next_posts_link(__(’Предыдущая запись’)) ?>
<?php previous_posts_link(__(’Следующая запись’)) ?>
<?php comments_popup_link(’Нет комментариев’, ‘1 Комментарий’, ‘%
Комментариев’); ?>
<?php comments_template(); ?>
<?php endwhile; else: ?>
<?php _e(’Sorry, no posts matched your criteria.’); ?>
<?php endif; ?>
</div><!-- /index -->
На этом с основными функциями файла
index.php мы закончили.
Переходим к функциям файла комментариев comments.php