Minimal 15.02.2011 14:41
Урок, пишем свой движок блога. — Урок 2: Обзор папок themes, lang. Детали папки include.
Начнем второй урок. Сразу предупреждаю что буду отвечать только на здоровые комментарии, относящиеся строго к сути статьи, остальные комменты типа "зачем велосипед" будут игнорироваться, давайте не будем захламлять флеймом.ПРОДОЛЖАЕМ!
Начнем с обзора папки themes - эта папка служит для хранения шаблонов нашего сайта.
Создаем в ней папку будущего шаблона назовем ее test (название может быть любым), также туже создаем пустой файл index.html он потребуется для скрытия просмотра папки, есть и второй способ ограничения доступа, делается через файл .htaccess, я воспользовался на данном этапе index файлом, считаю что на данном этапе этого пока достаточно.
Переходим к обзору созданной папки в моем случае это папка test.
Создаем в ней файл main.tpl - этот файл будет отвечать за внешний вид нашего сайта, точнее будет хранить макет шаблона, создаем файл style.css - этот файл отвечает за стили нашего шаблона, создаем файл function_show_list.tpl - этот файл отвечает внешний вид (шаблон) функции function_show_list - эта функция будет отвечать за вывод списка постов, создаем файл пустой index.html.
Заполняем созданные файлы:
Файл main.tpl - содержит в себе html, для заполнения файла можно воспользоваться готовыми шаблонами, или написать свой, четких правил для написания этого шаблона нет, все в произвольной форме, только главное не забудьте указать теги для вывода, а то на выводе получите все тот же голый шаблон.
Служебные теги:
{blog_name} - выводит название блога
{blog_slogan} - выводит слоган блога
{blog_url} - выводит адрес блога
{page_title} - заголовок страницы
{config_keywords} - ключевые слова блога
{post_keywords} - ключевые слова поста
{config_description} - краткое описание блога
{post_description} - - краткое описание поста
{content} - выводи контент
{menu_category} - выводит меню категорий
{counter} - выводит счетчики
{copyright} - выводит авторские права
Я быстренько набросал простейший шаблончик, вот что получилось main.tpl:
Файл style.css Также быстро набросал файл стиля:
Файл function_show_list.tpl также как и main.tpl содержит в себе html, этот файл нужен для настройки вывода листа постов.
Служебные теги:
{title_category} - вывод заголовка категории
{url_category} - вывод адреса категории
{title_post} - вывод заголовка поста
{url_post} - вывод адреса поста
{date_post} - вывод даты
{time_post} - вывод времени
{text_short_post} - вывод краткой версии поста
Быстренько набросал простейший шаблончик, вот что получилось function_show_list.tpl:
На этом пока все с папкой themes.
Переходим к обзору папки lang - папка отвечает за локализацию ядра.
Создаем в папке lang папку ru - в этой папке будет хранится наша локаль, и все тот же пустой index.html.
Переходим в папку ru и создаем там файл lang.php - файл с локалью, и тот же пустой index.html.
Файл lang.php - пока в этом файле всего одна запись, в будущем будем заполнять его.
define( name, value ); - определяет именованную константу, имя константы задаётся параметром name; значение - параметром value.
На этом пока все с папкой lang.
Переходим к обзору папки include - тут находятся подключаемые файлы.
Создаем в папке include следующие файлы config.php - отвечает за конфигурацию блога, core.php - ядро блога, filter.php - класс фильтрации данных, function.php - все функции блога, mysql.php - конфигурация базы данных и соединение, tags.php - содержит в себе функции всех служебных тегов, index.html - все тот же и пустой, и папку function - подключает функции блога.
Надо срочно бежать, продолжу вечером.
ПРОДОЛЖЕНИЕ СЛЕДУЕТ!
Урок 1 / Урок 3
я этот шаблон с генерировал на скорую руку на css генераторе, особого него не правил по этому как есть, на данном этапе шаблон не столь важен.
а по поводу классов или id мой валидатор не показал ошибки по этому так )
можно поправить всегда, это мелочи
П.С. за нормальные комменты получаешь +1
а по поводу классов или id мой валидатор не показал ошибки по этому так )
можно поправить всегда, это мелочи
П.С. за нормальные комменты получаешь +1
Лучше сразу делать правильно. Потому что потом все начинает скатываться в снежный ком в котором лень разбираться.
Он не показал ошибки, потому что ты наверное пока выводишь только 1 элемент с id="post". Когда это дело будет в цикле будет уже куча элементов с id="post", это уже ошибка.
Надеюсь, что твой валидатор - http://validator.w3.org/
P.S. Нормальных комментов у меня много.
Он не показал ошибки, потому что ты наверное пока выводишь только 1 элемент с id="post". Когда это дело будет в цикле будет уже куча элементов с id="post", это уже ошибка.
Надеюсь, что твой валидатор - http://validator.w3.org/
P.S. Нормальных комментов у меня много.
XHTML написать написали, но его стандартов не придерживаетесь. Отсюда подозрения...
Так же и тег h1 должен быть один на странице.
Ведь id нельзя употреблять больше 1 раза на странице.
Так же и тег h1 должен быть один на странице.
Я бы хотел видеть уроки так:
1. Работает совсем чуть-чуть, но работает. Это УЖЕ блог.
2. Больше рюшечек
3. Больше рюшечек
4. Больше рюшечек
???
PROFIT!
1. Работает совсем чуть-чуть, но работает. Это УЖЕ блог.
2. Больше рюшечек
3. Больше рюшечек
4. Больше рюшечек
???
PROFIT!
Думаю, что если скептики и дальше будут ему выносить мозг то до ожидаемых тобой частей не дойдёт.
Про то и речь. А так хоть с первой же части уже было бы на что посмотреть...
Может ты слишком быстр? =)
Куда спешить... Я понимаю тут у насКУРЫ ГУРЫ кодинга вокруг... Подождать нужно.
Куда спешить... Я понимаю тут у нас
2. Больше рюшечек
3. Больше рюшечек
4. Больше рюшечек
3. Больше рюшечек
4. Больше рюшечек
ой, это уже БИТРИКС получился =))
В основном придирки по форме:
Кроме запятых, в тексте стоит использовать и точки - для разделения на предложения.
также туже создаем
создаем файл function_show_list.tpl - этот файл отвечает внешний вид (шаблон) функции function_show_list - эта функция будет отвечать за вывод списка постов
Кто за что отвечает ???
{copyright} - выводит авторское право
хм-м-м...
BIGIN
пака хранит
бывает понимаюКроме запятых, в тексте стоит использовать и точки - для разделения на предложения.
Слушай, я пишу исключительно в свое удовольствие, могу накодить чтоб пользователей с именем КиRилл )))) при написание коммента "посылали лесом".
За этот блог мне не кто не платит, он бесплатный сыр.
По этому нет смысла мне его выводить и шлифовать до идеала.
Этот блог будет ка заготовка, которую каждый будет подгонять под себя, если конечно пожелает.
Надеюсь фрилансеры меня понимают ;)
За этот блог мне не кто не платит, он бесплатный сыр.
По этому нет смысла мне его выводить и шлифовать до идеала.
Этот блог будет ка заготовка, которую каждый будет подгонять под себя, если конечно пожелает.
Надеюсь фрилансеры меня понимают ;)
За этот блог мне не кто не платит, он бесплатный сыр.
По этому нет смысла мне его выводить и шлифовать до идеала.
Если так рассуждать, то и за Linux никто не платит, так что никто не должен доводить его до идеала.
По этому нет смысла мне его выводить и шлифовать до идеала.
И всё бегом, бегом, впопыхах.
А ведь придумали же людиWordWriter для таких вещей.
А ведь придумали же люди
От чего не использовать Smarty или что-то еще? Зачем делать функцию отвечающую за вывод списка? Здоровый лоб, неужели не понимаешь что это идиотизм. Твой код пропитан смрадом Data Life Engine. Пойми, есть в мире веб-разработки вещи более качественные и достойные внимания. Обрати свой взор к ним.
Кто говорит что я не вижу их?
Бесплатный сыр - пишу в свое удовольствие как хочу и что хочу, не нравится проходи мимо.
Бесплатный сыр - пишу в свое удовольствие как хочу и что хочу, не нравится проходи мимо.
Отвечу немного по-другому.
Есть и Joomla и Bitrix и Drupal. Но во-первых статья называется "пишем сами", во вторых - расширение кругозора даже, если кто-то захочет написать свою ОСь - не будет лишним, хотя вон они - ОСи - десятки - выбирай любую.
Есть и Joomla и Bitrix и Drupal. Но во-первых статья называется "пишем сами", во вторых - расширение кругозора даже, если кто-то захочет написать свою ОСь - не будет лишним, хотя вон они - ОСи - десятки - выбирай любую.
да автор цикла статей в самом начале сказал - покажу как писать свою ЦМС, потому что вордпресс говно, а больше ничего нет :)
То, что пытается писать с нуля, это конечно же хорошо! :) но аргументация...
Кстати, интересно было бы так же нечто подобное на базе фреймворка... Правда, без знаний чистого пыха, пожалуй, с фреймворками пока лучше работать...
То, что пытается писать с нуля, это конечно же хорошо! :) но аргументация...
Кстати, интересно было бы так же нечто подобное на базе фреймворка... Правда, без знаний чистого пыха, пожалуй, с фреймворками пока лучше работать...
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
Почему бы не
<!doctype html>
<html lang="ru">
И почему не
class="post"
Ведь id нельзя употреблять больше 1 раза на странице.