Создание простой темы для WordPress. Зачем нужны темы WordPress Создание шаблона для wordpress с нуля

В этой статье я расскажу о способах создания шаблонов для постоянных страниц WordPress. Каждый способ несет в себе плюсы и минусы. Но прежде чем начать, коротко о том, что такое страницы и чем они отличаются от записей.

В WordPress можно создавать страницы (page) и записи (post). Отличаются они тем, что записи: попадают в ленту на главной странице; для записей указываются категории; записи не могут быть древовидными, а страницы: используются для такого содержимого как "Обо мне", "Контакты", "Карта сайта"; не имеют категорий, а имеют древовидную структуру. Записи обычно предназначены для хронологической информации (по времени добавления), а страницы для древовидной структуры не зависимой от времени. Для примера, эта статья опубликована как "запись" в рубрике "Кодекс", а ссылки в меню шапки ведут на страницы: Функции .

Страницы похожи на записи - они расположены в одной таблице базы данных и данные у них почти одинаковы: заголовок, текст, дополнительные поля и т.д. И то и другое - это записи, но разных типов: страницы древовидные и организуются путем создания родительских и дочерних страниц, а записи объединяются рубриками и метками. В WordPress можно создавать дополнительные типы записей древовидные или нет.

Создание страниц в WordPress

Часто нужно создать отдельный шаблон страницы, чтобы вывод информации отличался от остальных страниц. Создавая шаблон страницы в WordPress, можно совершенно изменить страницу: удалить сайдбар, подвал, шапку, можно изменить страницу до неузнаваемости. Например, на этом сайте так изменяется страница на которой выводятся коды файлов WordPress .

Способ 1: шаблон страницы через файл с произвольным названием и подключением его в админ-панели (классический способ)

Это самый распространенный способ создать шаблон страницы в WordPress. Для этого нужно создать.php файл, например, tpl_my-page.php в папке темы и в самом начале файла вписать пометку, что созданный файл является шаблоном для страниц:

Теперь при создании страницы в админ-панели в блоке «Свойства страницы» мы сможем выбрать "шаблон":

С версии WordPress 4.7. такие шаблоны страниц можно создать для любого типа записи, а не только для page. Для этого дополните комментарии строкой: Template Post Type: post, page , где post, page - это названия типов записей к которым относится шаблон.

/* Template Name: Мой шаблон страницы Template Post Type: post, page, product */

Преимущества:

    Создав один шаблон, мы можем удобно применять его для разных страниц. Например, можно создать шаблон без боковой панели и использовать его на разных страницах.

  • Можно получить только записи с указанным шаблоном. Например, можно вывести все страницы с шаблоном «Услуги» (файл servises.php). Иногда это удобно. Название файла шаблона хранится в метаполе _wp_page_template , поэтому чтобы вывести страницы с указанным шаблоном нужно создать запрос по метаполю (см. WP_Query).

Недостатки:

После создания файла шаблона в папке темы, нужно зайти в админ-панель и установить шаблон для страницы. При разработке это не всегда удобно. Поэтому если подразумевается использовать шаблон только для одной страницы, используйте второй метод.

Как это работает:

Когда вы заходите в админ-панель на страницу редактирования записи древовидного типа, WordPress просматривает все файлы шаблона на наличие в них строки:

Template Name: ***

Строка может располагаться где угодно и как угодно в файле.

Все файлы с подобными строками собираются и выводятся в выбор шаблона в блок "Атрибуты страницы".

При публикации страницы, в произвольное поле _wp_page_template записывается название файла шаблона или default , если шаблон не указан:

Wp_page_template = default
_wp_page_template = tpl_my-page.php

Далее, когда пользователь посещает страницу, WordPress проверят метаполе _wp_page_template , если шаблон установлен, то используется файл шаблона. В противном случае поиск шаблона страницы продолжается по иерархии .

Способ 2: шаблон страницы через файл с конкретным названием (иерархия файлов шаблона)

При создании страницы ей устанавливается ярлык (слаг, альтернативное название). Он используется в УРЛ страницы. И его можно изменить:


Для создание шаблона этим способом, вам нужно узнать слаг страницы и создать файл в папке темы. Допустим, наш слаг как на картинке равен contacts , тогда создадим в теме файл page-contacts.php . и заполним его нужным кодом (можно скопировать содержимое из файла шаблона page.php и отредактировать под себя). Все, теперь при посещении страницы мы должны увидеть новый шаблон. Аналогично можно взять ID (пусть 12) страницы и создать файл page-12.php .

Достоинства:

Нет необходимости заходить в админ-панель и устанавливать файл шаблона. Шаблон начинает работать сразу после создания файла. Удобно при разработке.

Недостатки:

Шаблон создается только для одной, конкретной страницы. Зависит от слага страницы, если он изменится шаблон работать не будет. Если использовать ID, то зависимость от слага пропадает, но становится непонятно в файла темы, к какой странице относится шаблон (если несколько шаблонов с ID).

Практически бесполезен при написании шаблонов, а тем-более плагинов. Его можно использовать, когда правишь свой сайт, в котором слаг или ID страницы известны заранее.

Как это работает:

WordPeress подбирает какой файл использовать в следующем порядке (файлы должны быть в корне темы):

  • {любое_название}.php (когда используется шаблон страницы)
  • page-{ярлык_записи}.php
  • page-{ID_записи}.php
  • page.php
  • singular.php
  • index.php

Способ 3: шаблон страницы через фильтр "template_include" (коддинг)

Это продвинутый способ, он более сложный, но вместе со сложностью он открывает широкие возможности. С помощью этого способа можно задать шаблон любой странице, записи, категории, любой публикации на сайте или вообще группе любых публикаций. Смотрите примеры с описанием:

// фильтр передает переменную $template - путь до файла шаблона. // Изменяя этот путь мы изменяем файл шаблона. add_filter("template_include", "my_template"); function my_template($template) { # аналог второго способа // если это страница со слагом portfolio, используем файл шаблона page-portfolio.php // используем условный тег is_page() if(is_page("portfolio")){ if ($new_template = locate_template(array("page-portfolio.php"))) return $new_template ; } # шаблон для группы рубрик // этот пример будет использовать файл из папки темы tpl_special-cats.php, // как шаблон для рубрик с ID 9, названием "Без рубрики" и слагом "php" if(is_category(array(9, "Без рубрики", "php"))){ return get_stylesheet_directory() . "/tpl_special-cats.php"; } # шаблон для записи по ID // файл шаблона расположен в папке плагина /my-plugin/site-template.php global $post; if($post->ID == 12){ return wp_normalize_path(WP_PLUGIN_DIR) . "/my-plugin/site-template.php"; } # шаблон для страниц произвольного типа "book" // предполагается, что файл шаблона book-tpl.php лежит в папке темы global $post; if($post->post_type == "book"){ return get_stylesheet_directory() . "/book-tpl.php"; } return $template; }

Такой код нужно разместить в файл темы functions.php или в плагин, или подключить как-то еще. Как видно из примера во время фильтра template_include уже работают условные теги, установлены глобальные переменные: $wp_query , $post и т.д.

Достоинства:

    Можно установить шаблон для любой страницы или группы страниц. Практически полный карт-бланш в действиях.

  • Можно создать шаблон при написании плагина.

Недостатки:

Необходимость писать код и отдельно его подключать (например, в functions.php темы).

Чтобы сделать свой сайт на WordPress, вам обязательно нужно будет добавить тему. Их еще называют шаблонами. Это основа любого веб-ресурса.

В данной статье будут рассмотрены этапы создания шаблона, описана верстка файлов psd.

Также вы узнаете об основных технических требованиях к темам WordPress, каким должен быть шаблон, чтобы он заработал на ядре Вордпресс. В итоге, вы сможете создать сайт с собственной темой, которая в точности будет соответствовать вашим требованиям.

Учтите, что данное руководство не включает описания добавления уже готовой темы – это мануал по генерации собственного шаблона. Если вы скачали тему и не знаете как ее установить, тогда зайдите в админку WordPress, в раздел “Внешний вид” и добавьте там одно из доступных оформлений. А теперь разберем подробнее что такое тема, для чего она нужна и как ее создать самостоятельно.

Для каких целей создается тема вручную

Тема (шаблон) – это совокупность функциональных и стилевых файлов, которые в сумме определяют дизайн ресурса. От темы зависит то, как будет выглядеть сайт, потому очень важно правильно подойти к процессу создания шаблона. Многие сейчас задаются вопросом: “А зачем создавать свою тему, если можно скачать уже готовую в Интернете, причем бесплатно?”. Это логичный вопрос и на него есть вполне исчерпывающий ответ: “Чтобы сделать идеальный шаблон, который полностью отвечает вашим требованиям”.

Когда вы покупаете оформление или скачиваете его из каталога бесплатных шаблонов WordPress, вы обычно жертвуете качеством. Как правило, у таких шаблонов не все подходит для вас. Но вы смиряетесь, думаю, что один-два нюанса – это еще не целая картина, и что позже вы отредактируете тему. Но на деле оказывается, что сайт так и остается с недоделанной темой, которая вам не нравится. Потому лучше сразу делать свое. И хоть верстка сначала может показаться сложной, зато потом, когда научитесь, сможете даже создавать шаблоны под заказ.

Кроме того, после создания шаблона вы ощутите себя “медиком” WordPress – будете знать, что у сайта находится внутри. Поймете, какие элементы за что отвечают. Тогда сайт и вы будете разговаривать на Ты. Ознакомитесь с тегами, структурой и циклами WordPress. А быть может, вам захочется заняться этим профессионально, и вы начнете зарабатывать на жизнь созданием шаблонов.

Итак, вот основные причины, почему вам стоит самостоятельно сделать шаблон для сайта:

  • узнаете все о HTML, CSS и кое-что о PHP;
  • сможете творить, ведь веб-дизайн – это тоже искусство;
  • можно будет зарабатывать на продаже тем;
  • откроете для себя новый навык;
  • создадите оформление, которое 100 % будет подходить под ваш будущий сайт.

Каким стандартам отвечает тема

При написании шаблона очень важно следовать официальным правилам. Нарушение кода, вставка тега в неположенном месте и пропуск его – это может навредить оформлению и полностью испортить его вид. Вам следует хорошо ознакомиться с правилами написания PHP-код, а также HTML, если вы еще не знакомы с этими языками. Кроме того, вам предстоит иметь дело с каскадными таблицами стилей CSS, так что вспомните и их основы – в Интернете много информации по этому поводу. Ну, и самое последнее наименее важное требование – создавайте сайт, как дизайнер, а не как школьник, чтобы у вас получился серьезный проект. Иначе нет смысла браться за это дело.

Все темы WordPress содержатся на хостинге в папке wp-content/themes/. Внутри этой папки есть другие папки с отдельными темами, файл с дополнительными функциями (functions.php), стилевые файлы и изображения. Чтобы найти данные по отдельной теме, вам необходимо зайти в соответственную директорию. Так тема “Vestern” будет размещена в папке wp-content/themes/vestern/.

Прежде чем начать, вам следует хотя бы несколько раз взглянуть на структуру уже готовых тем. Сайт WordPress по умолчанию содержит два стандартных шаблона, которые вы можете просмотреть. Это шаблон Default и Classic. Откройте их файлы в нужной директории на сервере и сравняйте их отличия.

Вы заметите, что шаблон, как правило, состоит из файлов трех форматов:

  1. Style.css – стилевой файл, ответственный за внешнее оформление сайта.
  2. Functions.php – функциональный файл, добавляющий на страницы различные возможности.
  3. Другие php-файлы, которые отвечают за особенности вывода шаблона на сайте, интеграцию темы с WordPress. Именно эти файлы позволяют перевести psd макет в полноценный шаблон.

Разберем каждый их этих файлов детальнее, чтобы понять как проходит верстка темы WordPress.

Правила создания файла style.css

Во-первых, он должен отвечать всем особенностям разметки CSS. От этого файла зависит то, как будет выглядеть ваш сайт. Но он не заработает, если вы не добавите в него описание созданного шаблона. Эта первая особенность WordPress, которую необходимо учитывать при переносе макета psd на движок Вордпресс. Вам предстоит указать следующие параметры:

  1. Имя шаблона.
  2. URL, который ведет к теме.
  3. Описание с указанием основных особенностей шаблона. Кратко.
  4. Имя автора. В данном случае укажите свое имя.
  5. Ссылка на автора, то есть на вас. Можете указать ссылку на профиль в социальных сетях.
  6. Название родительской темы – это указывать необязательно.
  7. Версия темы. Если только создали, тогда v. 1.0.
  8. Полное описание шаблона. Можно писать развернуто.

Чтобы создать самую простую тему WordPress, достаточно добавить редактированную версию с одним файлом style.css. В этом файле возле строки “template” укажите имя родительской темы. К примеру, Classic, если вы редактируете стандартный шаблон. Теперь созданная тема будет полностью соответствовать шаблону Classic. Потому файлы вам нужно будет загружать именно в директорию wp-content/themes/classic.

Таким образом, вы сможете создать свою первую, самую простую тему, которая будет являться “потомком” уже готового шаблона. Но это не будет полноценным оформлением сайта, а лишь попыткой сверстать его, потому вам стоит продолжить исследования.

Особенности файла дополнительного функционала functions.php

Шаблоны не всегда используют файл functions.php, но в большинстве случае он необходим. Его необходимо размещать в директории с соответственной темой. Учтите, что если этот файл имеется в папке с шаблоном, то он будет учитываться при инициализации темы. Он работает как плагин. И будет выполнять такие функции, какими вы его наделите.

Основное предназначение файла functions.php – это определение доступных функций настройки в админке для данной темы. То есть все функции, которые вы впишите в functions.php будут отображаться в админпанели, либо на странице для пользователя. Обычно, это смена цветового решения для сайта WordPress, изменение шрифта и многое другое. Но есть множество вариантов использования этого файла. Однако, это уже совсем другая история…

Особенности php файлов шаблона

Файлы формата php будут отвечать за отдельные части сайта. Они определяют как составляющие страницы, так и рубрики, категории и другие разделы, которые будут выводиться перед пользователем. Поскольку сейчас вы создатель темы, то только вы будете определять какие и сколько файлов шаблонов выбрать. После их выбора в вашей админки появятся новые функции. Чем меньше файлов вы выберете, тем быстрее будет работать сайт, но тем меньше будет у него функционала. Хорошенько подумайте какие файлы вам необходимы, а без каких можно и обойтись.

Если хотите добавить на сайт минимальную тему, или испытать свой psd макет, тогда вам понадобится только два файла в директории шаблона:

  1. Style.css.
  2. Index.php.

Опытные вебмастера умудряются так изменять файл index.php, что только его достаточно для того, чтобы внести настройки футера, сайдбара, поиска, архива, рубрик, страниц и т. д. Но вам лучше попробовать сделать такой шаблон WordPress, в котором каждый файл будет выполнять соответственную функцию.

Даже если вы случайно не укажите какой-либо файл шаблона, WordPress автоматически внесет на сайт собственные стандартные параметры настроек. Например, если не добавить файл, ответственный за комментарии, то движок отыщет в директориях свои варианты этой функции – к примеру, wp-comments.php. Тогда в структуру вашего сайта врежется “чужеродные” комментарии, которые не будут отвечать требованиям шаблона. Чтобы такого не случилось, вам необходимо добавить все основные файлы для отображения разных составляющих страницы:

  • header.php – отвечает за шапку сайта;
  • sidebar.php – боковые колонки;
  • footer.php – подвал ресурса (его нижняя часть);
  • comments.php и comments-popup.php – комментарии.

После генерации каждого из этих файлов, чтобы сайт начал их отображать, вам необходимо внести данные по ним в главный файл шаблона index.php. Для этого укажите в index.php теги, которые ведут к названным файлам. Например:

  • чтобы добавить файл шапки сайта (header.php) пропишите тег

    get_header () tamplate tag;

  • для футера аналогично, только вместо header укажите footer и т. д.

Пример включения одного из файлов шаблона в index.php будет выглядеть следующим образом: . Вам придется искать по каждому из указанных ключевых файлов шаблона отдельную информацию. Найдите мануалы по каждому из файлов, а также образцы, чтобы вы понимали все функции, прописанные в шаблонах.

Выбор функционала шаблона

Со временем вы столкнетесь с дилеммой – какой тип шаблона выбрать. Движок предоставляет выбор. Либо вы сможете выбрать шаблон с подключенной иерархией Template Hierarchy, либо макет с тегами Conditional Tags.

Первый вариант уже был рассмотрен. Все файлы php шаблона – это и есть иерархия Template Hierarchy. То есть следуя правилам этой иерархии, вы постепенно генерируете отдельные файлы макета. Таким образом, у вас создастся полноценный шаблон из ряда функциональных php-составляющих. Иерархия в этом случае работает по принципу загрузки по запросу. К примеру, если у вас есть файл категорий (category.php) и пользователь запросил его, то в браузере загрузится именно эта составляющая сайта. Если же его нет, тогда будет загружен ключевой файл шаблона index.php.

Таким образом, вы сможете изменять внешний вид для отдельных частей сайта при помощи принципа Template Hierarchy. У каждой страницы есть свой определенный ID. Добавьте в директорию с темой файл category-6.php и при запросе рубрики с ID, равным 6, откроется именно это оформление. Если же его не будет, то настройки останутся стандартными – развернется index.php.

Порой принципа Template Hierarchy оказывается недостаточно, чтобы обеспечить максимально комфортное отображение шаблона. В таком случае программисты прибегают к использованию второго принципа – они вводят условные теги Conditional Tags. Эти теги проверяют сайта на соблюдение определенных условий, и если таковые не соблюдаются, они изменяют его внешний вид. То есть эти теги работают по принципу if/else (если/тогда). Так вам не придется добавлять море файлов php с номером каждой категории, а сможете единожды прописать условия для каждого ID.

Как происходит верстка psd макета в Вордпрессе

Некоторые любят прежде создать макет будущего дизайна при помощи различных программ, и только потом его переносить на определенный движок. Это и правда удобно, ведь некоторые приложения позволяют без каких-либо умений сгенерировать отличный дизайн. Если у вас уже есть файл формата psd, и вы хотите его сверстать под движок Вордпресс без использования кода, тогда можете воспользоваться помощью одного из популярных сервисов.

Учтите, что это платная услуга, потому шаблон будет ваш только наполовину. Заказывайте такую услугу только в крайнем случае, если макет кажется вам хорошим, а сил верстать его уже нет. Есть множество программистов, готовых по низкой цене и буквально за одну ночь перенести psd в Вордпресс.

PSD – это файл из приложения Photoshop. Это как бы графическое изображение вашего дизайна. Чтобы его сверстать, необходимо в текстовом редакторе добавить html-разметку. Постепенно вы будете изменять каждый из пунктов этой разметки, добиваясь конечного результата, который изображен на макете. Сразу укажите центрирование вашего шаблона, а также размеры разных его частей.

Следующий шаг – это добавление фоновых изображений. Вы также их можете сделать самостоятельно при помощи того самого приложения Photoshop. Самый простой вариант – это создание градиентных фоновых изображений. Далее займитесь создание логотипа. Постепенно решайте все возникшие запросы – регулируйте шапку сайта, подвал, сайдбар и все его части, согласно сделанному макету. Не забудьте добавить важные файлы шаблона в его директорию, чтобы сайт загружался согласно вашим требованиям.

Только так, постепенно познавая основы разных языков программирования, вы сможете самостоятельно научиться верстать сайт. Никто не говорит, что это получится у вас уже сегодня или завтра. Возможно, на понимание всех особенностей процесса верстки у вас уйдут месяцы. Но не переживайте – у некоторых на это уходят годы. Теперь вы знаете примерную процедуру создания шаблона с нуля, а также перенесения макета psd в готовую тему для интернет-ресурса на движке Вордпресс.

В этой статье мы узнаем, как создать wordpress тему. Для начала мы создадим HTML + CSS шаблон, который поместим в структуру wordpress темы. После того, как вы дочитаете эту статью, вы сможете создать собственный шаблон для wordpress, а точнее вы его создадите по ходу чтения и выполнения практических заданий. Вы будете знать как устроена тема и сможете самостоятельно реализовать ядро wordpress темы из других HTML/CSS шаблонов. Начнем?

Вступление – структура wordpress темы

Структура wordpress темы, предельно проста. В теме мы имеем файл index. php, он отвечает за сборку кусков шаблона. К этому файлу подключены другие: header. php, footer. php . Эти файлы (куски шаблона) используются на любой странице сайта. Мы знаем, что не все страницы строятся по единому шаблону, поэтому wordpress тема имеет другие файлы, такие как archives. php или single. php . Также можно создать свой тип страниц, если вы хотите, чтобы он категорически отличался от других на сайте. Это очень удобно.

Если вы внимательно рассмотрите структуру темы, и прочитаете содержимое файлов, то интуитивно поймете что к чему. Но все же имеются некоторые моменты, которые мы рассмотрим. Вы всегда сможете вернуться к этой странице и прочитать, как все делается.

А теперь рассмотрим создание шаблона поэтапно:

Шаг 1 – style.css

CSS файл, это файл параметров и дизайнерских решений для HTML элементов шаблона. Вы должны переименовать главный css файл (если он у вас не один) на style. css . Далее вам необходимо добавить в начале этого файла следующую закомментированную информацию:

/* Theme Name: Typography Paramount Theme URI: http://сайт/ Description: An image-less template focusing on Typography..0 . General comments/License Statement if any. . */

Этот код будет показывать информацию о теме для администраторов. Убедитесь что он в начале файла, и нету никаких пробельных символов перед ним!

Далее я создал еще один файл, под именем 1. css , и поместил его в папку typography-paramount , которую создал в папке wordpress темы. Нужно четко соблюдать эту структуру, чтобы wordpress смог видеть этот файл.

Шаг 2 – header и footer

На этом этапе мы создадим два файла: header. php и footer. php , о которых упоминалось раньше. Хотя они не основные и включены в тему опционально, они используются в большинстве шаблонов, поэтому мы их создадим.

Header.php

Начнем с этого файла. Создайте файл и присвойте ему имя header. php , после чего вставьте в него поданный код и сохраните. Этот файл будет отображаться на всех страницах нашего шаблона.

-

До сих пор, не было ничего особенного в отличии от простой html/css темы. Но теперь мы заменим некоторые элементы на wordpress теги.

> <?php bloginfo("name"); ?> <?php wp_title(); ?> ; charset=" /> " type="text/css" media="screen,projection" />

Это только некоторые известные мне теги. Намного больше вы найдете на официальном сайте: codex.wordpress.org .

language_attributes() – Выводит тип языка для тега .

bloginfo() – Используется для вывода информации о сайте, все параметры можно найти в кодексе вордпресса.

wp_title() – Возвращает title страницы.

wp_head() – подключает javascript и другие необходимые элементы.

get_option() – получает необходимые опции для работы с базой данных.

Footer.php

Теперь создадим так званный «подвал сайта». Создайте файл footer. php и поместите в него следующий код. Этот футер, будет отображать год, название сайта, и ссылки на rss.

< ?php wp_footer(); ?>

php the_ time(" Y"); ?> - отображает текущий год.

- название блога.

- добавление ссылки на rssленту блога.

wp_footer() – это необходимо для самого ядра wordpress, который добавляет туда нужные ему элементы.


Шаг 3 – основной файл wordpress шаблона

Пришло время создать основной файл wordpress шаблона, который будет подключать верхушку и низ сайта. Создайте файл index. php . Это один из двух обязательных файлов wordpress темы (другой style.css). Вставьте ново созданный файл следующий код:

Этот код, помогает wordpress получить информацию куда подключать header. php и footer. php . Давайте добавим еще несколько строк между этими тегами:

">

at | |

Woops...

Sorry, no posts we"re found.

Этот фрагмент кода получает информацию об имеющихся постах в блоге и если они есть, показывает их. Если они не обнаружены, то отображается часть кода после , которая дает нам знать, что блог еще пустой.

Также добавлен тег , который выводит навигационные ссылки, чтобы пользователи могли читать ранее добавленные посты.

Пример работы wordpress темы

Теперь у нас есть подобие темы, давайте посмотрим пример работы созданной wordpress темы.


Мы имеем четыре файла в нашей теме, для начала это вполне достаточно. В следующей статье добавим файл single. php , которые будет показываться при выводе конкретного поста. Этот файл будет включать в себя , в отличии от файла index. php.

Если у вас еще остались вопросы или недопонимания по поводу создание wordpress шаблона (темы), выразите свои проблемы в комментариях ниже!

Представляем Вашему вниманию краткий мануал о том, как самостоятельно создать тему для ставшего многим любимым движка WordPress. Мне недавно приснился сон как я создаю тему под WordPress, но у меня ничего не получается, хотя все этапы мне знакомы, поэтому когда я проснулся решил написать эту статью. Позднее я посмотрел сонник , но к чему был этот сон я так и не по 🙂

Итак, чтобы создать тему, нужно сделать следующие шаги:

1. Понять как там чего где подключается, что за что отвечает и из чего(каких файлов) вообще состоит тема.
2. Создать платформу, площадку для будущей темы - пустые файлы в папке с названием темы.
3. Узнать все команды WP. В шаблонах почти все действия (вывод рубрик, меток, содержания и т.д.) выполняются посредством встроенных в WP PHP функций.
4. Постепенно наполнять файлы, шаг за шагом.
5. Смотреть, что получилось, делать многочисленные правки и устранять баги.

А теперь о каждом шаге поподробней. Перед тем, как читать дальнейший материал, заранее скачайте тему: mytheme . Данная тема не содержит ничего лишнего.

Шаг 1. Что из себя представляет тема WordPress.
Тема WordPress - это набор файлов, которые подключаются один за другим в зависимости от запроса пользователя. Внутри файла содержится помесь html и php кода, html (ну и css) код отвечает за визуализацию, php - за вывод необходимого содержимого. Если пользователь кликнул в меню сайта на какую-то категорию, то будет подключен файл archive.php, который, в свою очередь, посредством специальных команд-функций (о них мы узнаем позже), подключает другие файлы: шапку, подвал сайта, блок навигации. Конечным итогом данных несложных операций является готовая страница, которая отдается пользователю.

Шаг 2. Создаем каркас нашей темы.
Наша тема будет состоять из следующий файлов:

* Название файла - что отображается:
* header.php - “шапка”.
* footer.php - “подвал”.
* index.php - главная.
* archive.php - архив.
* page.php - страница.
* single.php - одиночная запись.
* sidebar.php - блок, на котором будет выводиться навигация: категории, страницы, архив и т.д.
* comments.php - комментарии.
* search.php - результаты поиска.
* 404.php - страницы 404 ошибки (”не найдено”). - данный файл не обязателен.
* function.php - php функции темы. - данный файл не обязателен.
* style.css - таблицы css стилей.

Теперь давайте создадим папку с названием MyTheme и созданим в ней все файлы, перечисленные выше, просто созданим, наполнять ничем пока не надо.

Теперь копируем эту папку в wp-content/themes/ установленного WP. Наполнять содержимым эти файлы мы будет уже из панели администрирования вордпресса - Дизайн -> Выбираете только что созданную тему -> Редактировать. Редактирование из админки, на мой взгляд, является наиболее удобным, и потом, изчезает опасность слетания кодировки (при редактировании обыкновенными блокнотопдобными программами, не поддерживающими UTF-8, русские символы превращаются в крякозабру).

Итак, каркас темы у нас есть, осталось только его наполнить.

Шаг 3 и 4. Наполняем каркас нашей темы.
Этот шаг следует разделить на несколько подшагов. Сейчас я буду приводить название файла, а следом PHP функции (команды), которые отвечают за вывод того или иного содержания.

Перед дальнейшим прочтением материала, создайте простой статичный html шаблон, где будет отображено то, как будет выглядеть сайт на главной страничке.

header.php
Думаю, не нужно объяснять, что шапка - это верхняя часть сайта, в которой, как правило, выводится логотип, краткое описание сайта, возможно - меню. В нашей шапке мы будем выводить название сайта и описание сайта.

Название сайта выводит функция

Bloginfo("name");

За вывод описания отвечает функция

Bloginfo("description");

Название сайта будет логично сделать кликабельным, тоесть сделать ссылкой на главную страницу. Ссылка на главную страницу сайта возвращается функцией

Echo get_option("home");

Заметьте, некоторые функции выводят результат своего выполнения сразу, а некоторые просто возвращают значение и его нужно выводить командой echo.

В файл header.php мы также поместим технический html код. В необходимо выводить заголовок () сайта. Нужный заголовок возвращается функцией</p><p>Wp_title(); </p><p>Также обязательной является подстановка кодировки, в которой будет отдана страница. Кодировка возвращается функцией</p><p>Bloginfo("charset"); </p><p>Разумеется, здесь же необходимо поместить ссылку на таблицу стилей, на rss и прочую техническую информацию. Для всего существуют свои функции.</p> <p>Готовый файл header.php у нас будет выглядеть вот так (показано ниже), там вы сможете увидеть прочие функции и на интуитивном уровне понять что за что отвечает.</p> <p>Заходим через админку в редактор файла header.php, вставляем код из нужного файла архива mytheme.</p> <p><i><b>footer.php </b> </i><br> В этом файле содержится подвал сайта. На нем мы выведем название сайта и год.<br> Заходим через админку в редактор файла footer.php, вставляем код из нужного файла архива mytheme.</p> <p><i><b>sidebar.php </b> </i><br> Теперь давайте реализуем сайдбар, в котором будет выводиться навигация по сайту. Навигацию для простоты понимания, мы будем реализовывать посредствои виджетов.</p> <p>Заранее приведу готовый sidebar.php, а потом расскажу о нем поподробнее.</p><p>PHP код в сайдбаре создает новый блок для виджета под названием “Sidebar” (его мы установим в следующем файле), наполнить его содержимым можно в редакторе тем, в разделе виджеты. Там все должно быть понятно, позже, добавляя виджеты, вы сможете смотреть что именно добавляется на сайте с каждым новым виджетом и понять суть всего происходящего.</p> <p>Для большей гибкости, навигацию часто делают не посредством виджетов, а посредством следующих функций:</p><p>Wp_get_archives("type=monthly"); wp_list_pages("title_li=" . ("Страницы:")); wp_list_categories("title_li=" . __("Категории:")); wp_meta(); </p><p>Думаю, вам должно быть интуитивно понятно, какая из функций что выводит.</p> <p><i><b>functions.php </b> </i><br> Данный файл содержит функции, которые автоматически подключаются к шаблону, а некоторые WP самостоятельно выполняет перед генерацией страницы.</p> <p>В сайдбаре мы использовали виджет под названием “Sidebar”, теперь необходимо его установить в functions.php. Виджеты устанавливаются функцией register_sidebar, которой в качестве параметры передается массив значений, необходимый для управления отображением блоков.</p> <p>В нашем случае, чтобы установить виджет, нужно добавить в functions.php следующий код:</p><p> <?php if(function_exists("register_sidebar")) { register_sidebar(array("name"=>"Sidebar" "before_widget" => "", "after_widget" =>"", "before_title" => "<h3>", "after_title" => "</h3>",)); } ?> </p><p>Как видите, мы установили виджет под названием ‘name’=>’Sidebar’, до и после виджета нам не нужно никакого html кода, поэтому следующие 2 значения оставили пустыми, заголовок блока с элементом виджета мы помещаем в теги <h3>, что наглядно продемонстрировано в последних двух значениях.</p> <p>Итак, виджет определен, немного позже вы сможете поиграться им и оценить по достоинству эту замечательную возможность WordPress.</p> <p><i><b>index.php </b> </i><br> Этот файл отвечает за вывод того, что пользователь видит на главной странице сайта. Сейчас мы впервые узнаем, как подключать другие шаблоны (шапку, подвал, сайдбар и т.д.). А подключаются другие шаблоны следующим образом:</p> <p>Подключение шапки header.php:</p><p>Get_header(); </p><p>Подключение сайдбара sidebar.php:</p><p>Get_sidebar(); </p><p>Подключение подвала footer.php:</p><p>Get_footer(); </p><p>Откройте index.php из архива mytheme.</p> <p>В коде index.php вы увидели некоторые новые функции. Думаю, и без разъяснения понятно, что каждая из них делает и какие параметры ей передаются. Самой важной функцией является</p><p>В параметре этой функции - надпись, которая выводится в том случае, если содержание записи необходимо обрезать. Описывать остальные функции не считаю нужным, так как должно быть понятно, что, где и как. Главное - понять принцип подключения шаблонов функциями get_***();</p> <p><i><b>archive.php, page.php, single.php </b> </i><br> А теперь мы плавно переходим к следующим файлам. Во все файлы, кроме 404.php, style.css и comments.php можно вставить тот же код, что и в index.php. Да, да, тоже самое. Как так? Давайте разберемся. Все станет понятно, когда вы поглубже вникните в php код index.php. Давайте посмотрим, что же там происходит.</p> <p>Мы видим функция <?php if (have_posts()) : ?> возвращает true в случае, если записи по существующему критерию существуют, в противном случае возвращается false. Мы также видим, что если WordPress есть что показать, он выполняет цикл <?php while (have_posts()) : the_post(); ?>, в котором он выводит все записи, удовлетворяющий критерию. Например, если пользователь кликнул на категорию “Авто”, WP вытаскивает из базы данных все записи этой категории, помещает в have_posts(), а если пользователь кликнул на какую-либо страницу, - WP вытаскивает из базы данных ту самую страницу и также помещает ее в функцию have_posts(), которую мы обходим циклом (в данном случае 1 раз) и выводим.</p> <p>Если have_posts() вернет false, тоесть если ни 1 записи, подходящей под критерии нет, то отобразится</p><p> <h2 align="center">Не найдено</h2><p align="center">Извините, ничего не найдено.</p> </p><p>Если посидеть несколько минут и разобрать алгоритм, все встанет на свои места.</p> <p>Хотя нет, просто код файлов page.php, single.php не полностью соответствует index.php, в эти файлы необходимо также добавить comments_template(); в то место, гле вы хотите видеть комментарии к записи. Эта функция подключает в шаблон comments.php, описанный ниже.</p> <p><b>comments.php </b><br> На первых порах лучше всегда использовать стандартную форму комметариев, по этому возьмите ее из архива mytheme.</p> <p><i><b>404.php </b> </i><br> Этот файл подключается, если пользователь пришел на что-то несуществующее, например, несуществующую категориию. Сюда просто пишем любое сообщение об ошибке, если есть желание, старыми способами подключаем шапку, подвал и прочие части темы. Данный файл не обязателен!</p> <p><i><b>style.css </b> </i><br> Ну а тут совсем все просто. Здесь пишем таблицы стилей, они будут автоматически подключаться к каждой странице.</p> <p><b>Шаг 5. Делаем дополнения и правки. </b><br> У вас есть готовая тема, которую вы можете самостоятельно переделывать и доделывать как хотите.</p> <p><i> </i> <i> </i> <i> </i> <i> </i> <i> </i></p><p>Типы постов на WordPress являются самым широким полем деятельности для разработчиков. Изначально WordPress включает в себя 5 основных типов постов: запись, страница, вложение, ревизия и навигационное меню.</p><p>Записи и страницы являются основными типами постов для размещения контента на сайте. И между ними есть несколько отличий.</p><p><b>Записи </b>, как правило, отображаются в обратном порядке на главной странице блога, а страницы отображаются без даты публикации. Категории и тэги также могут быть привязаны к записям, а к страницам нет (хоть и это можно сделать в настройках).</p><p><b>Страницы </b> можно структурировать по порядку. Это особо полезно для организации контента для владельцев сайта и посетителей.</p><p>Дизайн страниц так же легко можно изменить, если использовать различные шаблоны страниц. Они позволят изменить стиль любой страницы на вашем сайте.</p><p>Давайте рассмотрим более детально, какие шаблоны страниц существуют, и как их можно использовать для сайта.</p><h2>Почему бы не использовать разные шаблоны страниц?</h2><p>В темах WordPress обычно используется шаблон <b>page.php </b>, который определяет стиль всех страниц сайта. Большинство разработчиков тем создают шаблон начальной страницы по такому же принципу. В этом шаблоне отображается контент страницы и по умолчанию определяется, какие элементы дизайна будут на ней присутствовать (например, шапка, сайдбар, футер, прочее).</p><p>По умолчанию шаблон страницы (page.php) настроен таким образом, что весь необходимый контент отображается на странице.</p><p>Создание уникального шаблона страницы позволяет выйти за рамки стандартов WordPress и изменить отображение содержимого на сайте на свое усмотрение. Например, вы могли бы изменить дизайн страниц, удалив сайдбар. Также можно изменить привычный шрифт и использовать другую шапку, а не ту, которую предлагает домашняя страница.</p><p>Наиболее известный пользовательский шаблон страницы - это <b>Archive </b> (шаблон архивной страницы <b>archive.php </b>). Он есть во многих темах WordPress и содержит весь контент сайта, который разделен на страницы, категории, тэги, даты архивов, авторские архивы.</p><p>Многие шаблоны архивов также отображают полный список записей в блоге и поле для поиска записей на сайте. По сути, шаблон архива - это карта сайта, с помощью которой пользователь может найти то, что ищет.</p><p>В темах можно найти и другие типы шаблонов страниц, как например:</p><ul><li>Контактную форму</li><li>Страницы без сайдбара (боковой панели)</li><li>Лендинговую страницу (посадочную страницу)</li><li>Индекс блога</li> </ul><p>Возможности шаблонов страниц безграничны. Все зависит от того, насколько удобным вы хотите сделать свой сайт для конечного пользователя.</p><h2>Как выбрать шаблон для страницы?</h2><p>Добавить шаблон для страницы очень просто. В редакторе страницы справа вы увидите окошко (виджет) под названием «<b>Атрибуты страницы </b>». Оно размещено под окошком «<b>Опубликовать </b>».</p><p>В атрибутах страницы можно выбрать родительскую страницу и порядок ее размещения на сайте в соответствующем поле. А опция между ними позволяет изменить шаблон. Все что нужно сделать - это выбрать шаблон для страницы и обновить ее.</p><p><img src='https://i0.wp.com/hostenko.com/wpcafe/wp-content/uploads/Capture97.png' height="366" width="301" loading=lazy></p><p>Шаблон также можно изменить другим способом - через список всех страниц. Нужно только нажать на «<b>Свойства </b>».</p><p><img src='https://i2.wp.com/hostenko.com/wpcafe/wp-content/uploads/Capture237.png' height="56" width="320" loading=lazy></p><p>Затем изменить шаблон в опциях меню справа.</p><p><img src='https://i2.wp.com/hostenko.com/wpcafe/wp-content/uploads/Capture327.png' height="166" width="330" loading=lazy></p><p>Опции шаблона не будут отображаться, если в вашей теме используется только стандартный шаблон страницы.</p><h2>Создаем базовый шаблон страницы для сайта</h2><p>Создать новый шаблон страницы для вашего сайта на WordPress легче, чем вы думаете. Для этого не нужно иметь опыт в разработке и создании тем или плагинов.</p><p>Нужно только использовать код <b>page.php </b> уже существующего шаблона темы в качестве основы для нового шаблона страницы. К примеру, вы используете старую стандартную тему Twenty Twelve . Файл <b>page.php </b> имеет следующий код:</p><p> <?php /** * The template for displaying all pages * * This is the template that displays all pages by default. * Please note that this is the WordPress construct of pages * and that other "pages" on your WordPress site will use a * different template. * * @package WordPress * @subpackage Twenty_Twelve * @since Twenty Twelve 1.0 */ get_header(); ?> <div id="primary" class="site-content"> <div id="content" role="main"> <?php while (have_posts()) : the_post(); ?> <?php get_template_part("content", "page"); ?> <?php comments_template("", true); ?> <?php endwhile; // end of the loop. ?> </div><!-- #content --> </div><!-- #primary --> <?php get_sidebar(); ?> <?php get_footer(); ?> </p><p>Можно использовать этот код для создания шаблона новой страницы. Для этого нужно только убедиться, что комментарий к коду размещен вверху нового файла. Это определит данный файл как шаблон страницы:</p><p> /* Template Name: My Custom Page Template */ </p><p>Шаблон вашей страницы будет выглядеть следующим образом:</p><p> <?php /* Template Name: My Custom Page Template */ Далее идет код шаблона страницы </p><p>Давайте рассмотрим процесс создания базового шаблона страницы и попробуем создать шаблон страницы в полную ширину <b>без использования сайдбара </b>. Тема Twenty Twelve изначально включает в себя шаблон в полную ширину, но мы сделаем вид, что это не так, потому что нам это нужно для нашего обучения.</p><p>В стандартном шаблоне сайдбар страницы отображается с правой стороны:</p><p><img src='https://i2.wp.com/hostenko.com/wpcafe/wp-content/uploads/default-page-template.jpg' width="100%" loading=lazy></p><p><i>Стандартный шаблон страницы в теме Twenty Twelve </i></p><p>Создать шаблон новой страницы без сайдбара просто.</p><p>Для начала нужно создать новый файл, используя любой текстовый редактор (Блокнот или Notepad++ подойдет). Его можно назвать как-то по-простому, например, <b>nosidebar-page.php </b> или <b>full-page.php </b> (о названиях файлов поговорим немного позже). Затем загрузите файл на ваш сайт таким образом, чтобы он находился рядом с файлом page.php.</p><p>По сути, наш шаблон - это шаблон от <b>page.php </b> темы Twenty Twelve, только с удаленным кодом <?php get_sidebar(); ? >.</p><p>Он выглядит так:</p><p> <?php /* Template Name: Full Width Page with No Sidebar */ get_header(); ?> <div id="primary" class="site-content"> <div id="content" role="main"> <?php while (have_posts()) : the_post(); ?> <?php get_template_part("content", "page"); ?> <?php comments_template("", true); ?> <?php endwhile; // end of the loop. ?> </div><!-- #content --> </div><!-- #primary --> <?php get_footer(); ?> </p><p>После загрузки файла шаблона в вашу тему его можно использовать для всех страниц. Можно также привязать страницу к этому шаблону, чтоб удалить ее сайдбар.</p><p><img src='https://i1.wp.com/hostenko.com/wpcafe/wp-content/uploads/assign-page-template-nosidebar.jpg' height="330" width="325" loading=lazy></p><p>Но это еще не все. Пока мы только удалили сайдбар. Нам нужно сделать так, чтоб контент размещался <b>по всей ширине страницы </b>. А пока он занимает только две третьих страницы:</p><p><img src='https://i1.wp.com/hostenko.com/wpcafe/wp-content/uploads/page-template-sidebar-removed.jpg' width="100%" loading=lazy></p><p>Если вы посмотрите на код нашего шаблона, то увидите, что основная часть контента находится под действием определенного класса CSS:</p><p> <div id="primary" class="site-content"> </p><p>За стиль основной части контента отвечает вторая часть class="site-content" . Если проверить файл стилей (<b>style.css </b>) темы, то можно заметить, что этот класс находится почти в самом низу:</p><p>Site-content { float: left; width: 65.104166667%; } </p><p>Для того чтобы расширить контент на всю страницу, нам нужно изменить ширину области контента с 65% на <b>100% </b>. Но не нужно изменять класс контента сайта, т.к. он по-прежнему используется в других шаблонах, как например, стандартная страница <b>page.php </b> и шаблон записей <b>single.php </b>. Изменение цифры процента для контента сайта повлияет на все записи и страницы на вашем сайте, которые занимают всю ширину страницы.</p><p>Поэтому нам нужно создать новый класс, который употребляется специально для страниц с полной шириной:</p><p>Site-content-fullwidth { float: left; width: 100%; } </p><p>После обновления файла <b>style.css </b> с вышеуказанным классом нам нужно изменить наш шаблон с полной шириной страницы и быть уверенными, что мы создали ссылку на класс CSS с шириной в 100%:</p><p> <div id="primary" class="site-content-fullwidth"> </p><p>Наш финальный шаблон будет выглядеть так:</p><p> <?php /* Template Name: Full Width Page with No Sidebar */ get_header(); ?> <div id="primary" class="site-content-fullwidth"> <div id="content" role="main"> <?php while (have_posts()) : the_post(); ?> <?php get_template_part("content", "page"); ?> <?php comments_template("", true); ?> <?php endwhile; // end of the loop. ?> </div><!-- #content --> </div><!-- #primary --> <?php get_footer(); ?> </p><p>Этот обновленный шаблон подтверждает, что контент на нашем сайте будет отображаться на всю страницу:</p><p><img src='https://i1.wp.com/hostenko.com/wpcafe/wp-content/uploads/page-template-full-width.jpg' width="100%" loading=lazy></p><p><i>Теперь контент на сайте отображается по всей странице </i></p><p>Все, что указано выше, можно сделать в любой теме WordPress. Для этого удалите сайдбар из созданного шаблона страницы и убедитесь, что вы меняете нужный класс таблицы стилей.</p><h2>Как называть шаблоны страниц</h2><p>Согласно WordPress Template Hierarchy , WordPress отображает шаблоны для страницы в следующем порядке:</p><ul><li>Пользовательский шаблон (Custom Template)</li><li>page-{slug}.php</li><li>page-{id}.php</li><li>page.php</li><li>index.php</li> </ul><p>Вам будет проще, если вы будете иметь представление о порядке этих шаблонов, потому что так вы поймете, почему страница оформлена тем или иным образом.</p><p>Этот порядок означает, что на WordPress всегда будет отображаться шаблон для страницы, если он был прикреплен к ней. Если к странице не был добавлен ни один из шаблонов, то WordPress будет искать page-{slug}.php.</p><p>Если шаблон page-{slug}.php не найден, WordPress ищет шаблон по ID страницы. К примеру, если ID страницы = 15, то WordPress будет искать шаблон страницы с названием 15.php.</p><p>Если шаблон не привязан к странице и нет совпадений с ID страницы, то WordPress ищет по стандартному шаблону страницы page.php. И если страницы шаблона page.php не существует, то для поиска используется index.php.</p><p>Многие разработчики называют свои шаблоны тем, используя формат page-name.php. К примеру, шаблон страницы контактов называют page-contact.php. По большому счету вы можете давать шаблонам названия на свое усмотрение и использовать любые конфигурации, будь то page-name.php, name-page.php или name.php. В любом случае, в будущем вы сможете эти названия изменить.</p> <script>document.write("<img style='display:none;' src='//counter.yadro.ru/hit;artfast?t44.1;r"+ escape(document.referrer)+((typeof(screen)=="undefined")?"": ";s"+screen.width+"*"+screen.height+"*"+(screen.colorDepth? screen.colorDepth:screen.pixelDepth))+";u"+escape(document.URL)+";h"+escape(document.title.substring(0,150))+ ";"+Math.random()+ "border='0' width='1' height='1' loading=lazy>");</script> </article> </div> <div class="cont_banner"> <div> </div> <div> </div> </div> <div class="cont_figSmall"> <p>Последние материалы раздела:</p> <section> <figure style='vertical-align:top;'> <a href="/setting/kak-soedinit-v-odin-fail-pdf-kak-obedinit-otskanirovannye.html"><img src="https://i2.wp.com/koskomp.ru/wp-content/uploads/2016/11/Screenshot_3-6.jpg" style="width:80px" alt="Как объединить отсканированные документы в один файл?" loading=lazy></a> <figcaption> <a class="anonstitle" href="/setting/kak-soedinit-v-odin-fail-pdf-kak-obedinit-otskanirovannye.html">Как объединить отсканированные документы в один файл?</a> <p class='fig_article'>Доброго всем времени суток, мои дорогие друзья. С вами как обычно Дмитрий Костин, автор этого блога. Вы знаете? Мне по работе частенько присылают...</p> </figcaption> </figure> <figure style='vertical-align:top;'> <a href="/setting/sozdanie-prostoi-temy-dlya-wordpress-zachem-nuzhny-temy-wordpress-sozdanie-shablona-dlya.html"><img src="https://i2.wp.com/wp-kama.ru/wp-content/uploads/2014/10/svojstva-stranitsy.png" style="width:80px" alt="Зачем нужны темы WordPress Создание шаблона для wordpress с нуля" loading=lazy></a> <figcaption> <a class="anonstitle" href="/setting/sozdanie-prostoi-temy-dlya-wordpress-zachem-nuzhny-temy-wordpress-sozdanie-shablona-dlya.html">Зачем нужны темы WordPress Создание шаблона для wordpress с нуля</a> <p class='fig_article'>В этой статье я расскажу о способах создания шаблонов для постоянных страниц WordPress. Каждый способ несет в себе плюсы и минусы. Но прежде чем...</p> </figcaption> </figure> <figure style='vertical-align:top;'> <a href="/devices/pochta-v-estonii-poleznaya-informaciya-sluzhba-dostavki-omniva-estonia-post.html"><img src="https://i2.wp.com/aliexpresshlp.ru/tim/60fbf65daf8c237a5305a8f2d164b91a/otslezhivanie-posilok-na-aliyekspress.jpg" style="width:80px" alt="Служба доставки Omniva-Estonia Post — отслеживание и доставка почтовых отправлений и посылок с Алиэкспресс на русском языке по трек-номеру в Россию, отзывы о доставке" loading=lazy></a> <figcaption> <a class="anonstitle" href="/devices/pochta-v-estonii-poleznaya-informaciya-sluzhba-dostavki-omniva-estonia-post.html">Служба доставки Omniva-Estonia Post — отслеживание и доставка почтовых отправлений и посылок с Алиэкспресс на русском языке по трек-номеру в Россию, отзывы о доставке</a> <p class='fig_article'>Если ввести номер отслеживания в строку поиска и нажать на кнопку «Найти по трек-номеру». Почта Эстонии - национальный оператор почтовой связи...</p> </figcaption> </figure> </section> </div> <dblock></dblock> <dblock></dblock> </div> <aside> <div> <div class="accordion"> <ul> <li><a href="/">Рубрики</a> <ul class='menu2' style="display:block;padding-top:15px;"> <li><a href="/category/windows/">Windows</a></li> <li><a href="/category/security/">Безопасность</a></li> <li><a href="/category/for-beginners/">Для начинающих</a></li> <li><a href="/category/setting/">Настройка </a></li> <li><a href="/category/programs/">Программамы</a></li> <li><a href="/category/working-with-files/">Работа с файлами</a></li> <li><a href="/category/devices/">Устройства</a></li> <li><a href="/category/pc-device/">Устройство ПК</a></li> </ul> </li> </ul> </div> <dblock></dblock> <div class="box" style="margin-left:5px"> <br> <div align='center'> </div> <span id="place"></span> </div> </div> </aside> </main> <footer> <div class="foot_logo"> <a href="/"><img src="/img/logo.svg?5" alt="logo" loading=lazy></a> </div> <div class="foot_info"> <p>© Компьютерные ответы для начинающих <span>SPUSK-QUEST.RU</span>, 2024</p> <p>Все статьи, расположенные на сайте, несут лишь ознакомительный характер. </p> <dblock></dblock> </div> <div class="foot_ico"> </div> <SCRIPT language="Javascript"> var delta = 0; $(document).ready(function() { $(window).scroll(function() { var ScrollTo = $('#place').offset().top; if ($(window).scrollTop() > ScrollTo) { $('#float-box').animate({ 'top': delta + 'px' }, 500); } else $('#float-box').stop(true).animate({ 'top': '5600px' }, 100); }); $('#float-box .close').bind('click', function() { $(this).parent().remove(); }); }); </script> </footer> </div> <div class="overlay"></div> </body> </html>