htaccess


WordPress – cms мечты: описание, знакомство и особенности

Приветствую всех на своем блоге.  Ну, вот и написал статью о wordpress, предназначенную для начинающих веб-мастеров, а также для систематизации знаний более менее опытных. Я расскажу о cms, особенностях, которые мне по душе и как произвести базовые настройки.

Начнем с оглавления в виде картинки. Будем идти по этому пути.

Оглавление.

Оглавление по знакомству с wordpress

взято с codex.wordpress.org

Что такое блог?

Блог (англ. blog, от web log — интернет-журнал событий, интернет-дневник, онлайн-дневник) — веб-сайт, основное содержимое которого — регулярно добавляемые записи (посты), содержащие текст, изображения или мультимедиа. Для блогов характерны недлинные записи временной значимости, отсортированные в обратном хронологическом порядке (последняя запись сверху). Отличия блога от традиционного дневника обусловливаются средой: блоги обычно публичны и предполагают сторонних читателей, которые могут вступить в публичную полемику с автором (в комментарии к блогозаписи или своих блогах).

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

Для блогов характерна возможность публикации отзывов (комментариев, «комментов») посетителями. Она делает блоги средой сетевого общения, имеющей ряд преимуществ перед электронной почтой, группами новостей, веб-форумами и чатами.

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

Первым блогом считается страница Тима Бернерса-Ли, где он, начиная с 1992 г., публиковал новости. Более широкое рас­пространение блоги получили с 1996 г. В августе 1999 г. компью­терная компания Pyra Labs из Сан-Франциско открыла сайт Blogger.com, который стал первой бесплатной блоговой службой.

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

Не достаточно информации? Читатайте подробнее на Wikipedia [1]

Вам нравится блоггинг?

Нет
На нет и суда нет.

Да - читайте далее.

Что такое wordpress ?

 «КОД — ЭТО ПОЭЗИЯ»

Wordpress главная страница

[table "0" not found /]

Определение “WordPress”

Определение с Wikipedia
WordPress — система управления содержимым сайта (CMS) с открытым исходным кодом, распространяемая под GNU GPL. Написана на PHP, в качестве базы данных использует MySQL. Сфера применения — от блогов до достаточно сложных новостных ресурсов и даже интернет-магазинов. Встроенная система «тем» и «плагинов» вместе с удачной архитектурой позволяет конструировать практически любые проекты. WordPress выпущен под лицензией GPL версии 2. [3] 
Определение с Codex WordPress
WordPress - это мощная платформа для персонального блоггинга. Она содержит отличный набор возможностей для того, чтобы максимально упростить процесс создания онлайн-публикаций, сделать его приятным и удобным. Мы с гордостью представляем вам свободно распространяемую, соответствующую стандартам, быструю, легкую и бесплатную платформу для персонального блоггинга с практичными настройками и свойствами по умолчанию и с чрезвычайно гибким и настраиваемым ядром. [4] 

WordPress - это средство блоггинга в интернете, т.е. блог или сайт. [Мое]

WordPress выпущен под лицензией GPL.

Посредством данной платформы веб-мастерами создаются сайты/блоги, основное применение системы –  автономные блоги. Уровень сложности и внешний вид сайта на вордпресс зависит от прямоты рук разработчика  и полета мысли веб-дизайнера. :) О стандартном функционале пойдет речь далее. А посмотреть wordpress в действии можно, так как вы уже это сделали, ведь вы читаете данную статью на моем wordpress блоге. Вот еще примеры сайтов, сделанные на wordpress:

transmission

Сайт пример на wordpress

На сайт

2 Kulerbox.co.za – портфолио

пример сайтов на wordpress

На сайт

3 e-xtnd.it (интернет-магазин)

пример сайта на wordpress

На сайт

4 ifelse

пример сайтов на wordpress

На сайт

5 thepixel.com/blog

пример сайта на вордпресс

На сайт

Также вы можете прогуглить еще примеров по запросам: «лучшие сайты на wordpress», «сайты на вордпресс примеры» и т.д.

Особенности WordPress

В современном мире сложно удивить какими-то особенностями той или иной cms. Но всегда найдутся те, кому что-то не нравится и/или не устраивает.

Основные особенности читайте в статье из codex wordpress [5]

Я же расскажу, что лично меня радует в данной системы и являются тем «весом», который перевешивает при выборе.

1 Установка

Я уже писал про установку вордпресс, еще и в картинках [6]. Именно этот процесс мне нравится. Если вы устанавливали ее, то понимаете о чем речь. Весь процесс установки занимает пару минут.

2 Настройка WordPress

Одна из сильных сторон cms. Данные «движение» также должны уже быть отработаны и занимать несколько минут.

Давайте, я расскажу, как я провожу базовую настройку wordpress. Чтобы произвести настройки необходимо авторизоваться в админке –  site.kz/wp-admin.php 

Общие настройки (Настройки -> Общие)

Покажу визуально:

общие настройки wordpress

Заголовок сайта (1) – отображается в title, название вашего сайта;

Краткое описание (2) – описание сайта в description. Не используется, если вы установили seo плагин (например, All in Seo);

Адресс WordPress (url) и Адресс блога (url) - обычно одинаковые. Впишите url сайта, в зависимости от того какой вариант вы выбрали с www или без www. (по мне так www будет лучше)

Адрес email –  почтовый адрес администратора, с него же будут приходить уведомления пользователям;

Членствоставите галочку, если хотите разрешить всем регистрироваться;

Роль нового пользователя - группа зарегистрированных пользователей.

Подписчик (Subscriber) —может только читать, комментировать и получать уведомления от администрации.

Участник (Contributor) — может создавать новые статьи и редактировать их, но они не публикуются сразу, для этого необходим следующий уровень доступа.

Автор (Author) — может создавать новые записи и редактировать их, но только свои.

Редактор (Editor) — может редактировать всё содержание сайта и создавать новые записи.

Администратор (Administrator) — может всё. ;)

Настойки чтения (Настройки -> Чтение)

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

настройки чтения wordpress

Установите лимит вывода последних записей (3), обычно 7-10, в зависимости от вида сайта.

В RSS-лентах отображать последние (4)  -сколько необходимо выводить записей в rss ленте, где я вывожу весь текст (5), можно также анонс (6). Об этом поподробнее я писал в статье «Как оформить rss ленту сайта».

Кодировка (7) страниц и rss-ленты обычно utf-8.

Настройка приватности (Настройка -> Приватность)

Обычно при установке данный параметр уже выбран. Но все же проверить стоит, что параметр выбран на « Разрешить поисковым машинам индексировать сайт». 

Настройки «постоянных ссылок» (Настройка -> Постоянные ссылки (ЧПУ))

Данная настройка ЧПУ (человекопонятные урл [7] )  у каждого настроена по своему, и каждый говорит о правильности свой точки зрения.

Советую выбрать, любую из приведенных, кроме:

http://www.gtalk.kz/?p=123

http://www.gtalk.kz/archives/123

Так как в них никакой смысловой нагрузки + для поисковиков красивые чпу приятнее.

Произвольная структура -позволяет выбрать свой вариант. У меня выбран вариант:

/%category%/%postname%.html

Где %category% – название категории;

%postname% – вывод названия статьи. А html просто для красоты. Можно и вывести просто:

/%category%/%postname%

Вывод категории и название статьи не только красивый url, но и навигация для сайта. С ссылками типа ?р=123 не понятно и не удобно.

Внимание: плагины кэширования, такие как «wp-supercache», нормально работают только при включенных «красивых чпу», т. е. если вы оставили шаблон ссылок «по умолчанию», то кэширование будет работать некорректно.

После основных настроек самой cms, переходим к другим настройкам.

Плагины Вордпресс

Подробно описывать все плагины не реально, но ранее в записи «Самые необходимые плагины WordPress» я перечислил плагины, которые я использую.

Хочу только добавить, что некоторые из указанных я удалил, и добавил еще парочку [8]:

Breadcrumb NavXT – вывод хлебных крошек – навигационная цепочка:

Для вывода плагина в файле  single.php  вашей темы добавьте:

<div class=”class”><?php if(function_exists('bcn_display')) { bcn_display(); } ?></div>

А также плагины Список страниц [9] , Шорткоды и  WP Super Cache.

Robots.txt

Переходим к настройкам robots.txt, как создать данный файл и нужно ли закрывать теги от индексирования, я писал.

Для просмотра моего рабочего файла:

http://gtalk.kz/robots.txt

Если вам необходим другой тип robots, просто найдите хороший аналог своего сайта на вордпресс и к названию сайта добавьте  /robots.txt  и изучайте.

Файл htaccess

Настройка файла .htaccess (обязательно с точкой впереди) достаточно сложна, поэтому экспериментировать не следует с ним, так как сайт может быть недоступен из-за неправильных настроек.  Для настроек у меня есть специальная Шпаргалка, так как все запомнить не реально. :)

Минимальные добавления в файл .htaccess, которые я делаю – это 301 редирект с www домена на без www (либо наоборот). Вот примеры:

1 Редирект со страниц сайта без WWW на страницы с WWW:

 RewriteEngine On
 RewriteCond %{HTTP_HOST} ^site\.ru$ [NC]
 RewriteCond %{REQUEST_URI} !^/robots.*
 RewriteRule ^(.*)$ http://www.site.kz/$1 [R=301,L] 

2 Редирект со страниц сайта с WWW на страницы без WWW

 RewriteEngine On
 RewriteCond %{HTTP_HOST} ^www\.site\.ru$ [NC]
 RewriteCond %{REQUEST_URI} !^/robots.*
 RewriteRule ^(.*)$ http://site.kz/$1 [R=301,L] 

Подробнее о работающих вариантах 301 редиректа [10]

Теперь можно перейти и к склейки доменов.

Склейка доменов

Обычно я делаю это сразу, так как для этого поисковикам требуется определенное время, а для яндекса порой и месяцы.

О том как склеить домены с помощью Яндекс.Вебмастре, Google Webmaster и robots.txt.

Вот в принципе, все мои базовые настройки. :)

3 Seo оптимизация .

Обычно многие cms не приспособлены к поисковикам (хотя таких все меньше) и для них пишут отдельные дополнения. WordPress наоборот же имеет достаточный функционал (при чем легкий в настройках) для seo настройки (чпу и т.д.). Поэтому, наверное, блоги сеошников на вордпресс, или случайность?))

4 Поддержка и сообщество

футболки wordpressтолстовка wordpress

Не маловажный фактор. У WordPress очень сильная поддержка на русском. Если у вас какие-то проблемы, то вы всегда можете обратиться на форумы поддержки пользователей:

Официальный форум поддержки [11]

WordPress – форум поддержки пользователей | русский ВордПресс [12]

Форум по WordPress – Maxsite [13]

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

5 Шаблоны WordPress

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

Русские шаблоны WordPress. [14]

Русские темы Вордпресс [15]

Еще бесплатные шаблоны [16]

Более того создание собственного шаблона не составить особых усилий, при должно уровне html и css.

6 Бесплатность – Open Source

Последний мой фактор, выбора водпресса. Конечно, кто же не любит халяву?

wordpress - my dream

Совершенно бесплатно вы можете скачать cms и использовать в своих коварных целях. :)

Скачать WordPress 3.4.2

Актуальная версия на WordPress Россия. [17]

Перед установкой

Конечно, чтобы установить и радоваться своему сайту, необходимо выбрать хостинг, на котором ваш wordpress запуститься (обычно почти на всех). Вот необходимые параметры:

  • PHP version 5.2.4 или выше
  • MySQL version 5.0 или выше
  • (Необязательно (требуется для режима Multisite)) Модуль Apache mod_rewrite (для красивых адресов, называемых постоянными ссылками)

Вот и все. Надеюсь вам понравилась моя статья на конкурс от TM, специализирующаяся на шаблонах WordPress и webmasters, форум о том, как создать сайт.

Не забудьте меня поддержать в конкурсе через социальные кнопки. ;)

с/у УтБ

5 простых способов ускорить сайт

Сегодня мы вновь говорим об внутренней оптимизации сайта/блога. Данная статья является естественным продолжение уже раннее написанной шпаргалка настройки htaccess плюс еще несколько полезных советов. Сегодня мы сделаем свой Ваш сайт быстрее в загрузки с помощью нескольких несложных способов.

Шпаргалка: настройки файла .htaccess

Недавно писал о файле robot.txt для изменения глобальных настроек индексации, теперь немного информации об его соседе. В основной директории Вы можете наблюдать также файл .htaccess (обязательно с точкой вначале!) – служебный файле веб-сервера Apache, предназначенном для децентрализованного управления конфигурацией сервера.

Основные возможности .htaccess:

  • открыть или закрыть доступ к каталогам без индексного файла;
  • запаролить директорию – ограничить доступ по логину – паролю (htpasswd);
  • закрыть внешние ссылки (с других сайтов) на архивы;
  • запретить доступ к файлам определенного формата, или доступ к сайту в определенный промежуток времени;
  • запретить – открыть доступ с определенных (айпи) IP адресов;
  • сменить или добавить еще несколько новых названий индексного файла;
  • включить по мере необходимости проверку в страницах определенного формата – типа на наличии SSI, Perl, PHP и др. включений – директив;
  • сделать редиректы (Redirect) – пересылку пользователя с одних адресов на другие – перенаправления пользователя на другую страницу;
  • скрыть структуру каталогов сайта отображающеюся в адресной сроке браузера, или возможно сделать её более простой и наглядной для конечного пользователя (mod_Rewrite);
  • управлять роботами – ботами поисковых систем на сайте;
  • безболезненно и незаметно перенести сайт на новый домен – смена домена;
  • использовать свои собственные общие страницы ошибок, например, как-то наиболее часто используемые -* 401 Authorization Required – Требуется авторизация* 403 Forbidden – Доступ запрещен* 404 Not Found – Документ не найден* 500 Internal Server Error – Ошибка в работе сервера
  • при необходимости сменить кодировку страниц отправляемых веб сервером посетителям;
  • запретить или нужным образом настроить кэширование веб сервера;
  • обучить веб сервер понимать дополнительные нужные Вам форматы (типы) файлов.

В интернете накопал полезную информацию, возможно будет интересное. Шпаргалка не помешает;) Комментарий прилагается.

Кодировка
Как выставить русскую кодировку.
 AddDefaultCharset windows-1251
 Определение кодировки на определенные типы файлов
 AddType "text/html; charset=koi8-r" .html .htm shtm
 Определение кодировки на загружаемые файлы
 CharsetSourceEnc windows-1251
 Отключение перекодировки
 Если при загрузке скриптом не загружаются бинарные файлы, создайте файл .htaccess и поместите его папку, где вы хотите отключить функцию, в нем пропишите строчку:

CharsetRecodeMultipartForms off

Назначение стартовой страницы.

DirectoryIndex index.html

Можно указывать несколько страниц.

DirectoryIndex index.html index.php index.shtml map.html

При запросе каталога они будут искаться в том порядке, в котором перечислены в директиве DirectoryIndex. Еслине будет найден файл index.html, то будет произведен поиск файла index.php и т.д.

#Разрешение / Запрет
Разрешить доступ с определенного IP.

order allow deny

deny from all

allow from 000.000.000.000

Запретить доступ с определенного IP.

order allow deny

allow from all

deny from 000.000.000.000

Запретить просмотр всем.

deny from all

Разрешить просмотр всем.

allow from all

Запретить доступ к определенному файлу.

deny from all

Запретить доступ к файлам с определенным расширением.

deny from all

Запретить доступа к файлам с несколькими типа расширений.

deny from all

? - любой одиночный символ

* - любая последовательность символов, исключая символ / (слеш).

# Тонкая настройка доступа.
Есть каталог a1 и в нем два вложенных каталога a2, a3, введено 2 уровня пользователей. 1 группа имеет доступ то лько к a1 и a2, 2-я ко всем трем каталогам. Необходимо проводить аутентификацию только 1 раз - при доступе к a1, но при этом соблюдать права на доступ к а2 и а3. Ник и пароль запрашиваются только при входе на а1 - если у юзера есть доступ на а2 пароль уже не запрашивается. Если на а3 доступа нет, вылетит табличка "введите пароль".

www.site.ru/a1
www.site.ru/a1/а2
www.site.ru/a1/a3
a1 - общий и вместе с тем закрытый. а2 и а3 только для отдельных личностей.
файл .htaccess для каталога а1:

AuthName "Input password"
AuthType Basic
AuthUserFile "/pub/home/login/htdocs/clousearea/.htpasswd"
require valid-user

файл .htaccess для каталога а2:

AuthName "Input password"
AuthType Basic
AuthUserFile "/pub/home/login/htdocs/clousearea/.htpasswd"
require user юзер1 юзер2 юзер3

файл .htaccess для каталога а3:

AuthName "Input password"
AuthType Basic
AuthUserFile "/pub/home/абв/htdocs/clousearea/.htpasswd"
require user юзер1 юзер4 юзер5

# Перенаправление (редирект)

Пути к файлам и директориям должны указываться от корня сервера, например, /pub/home/server1/html/
В именах доменов обязательно должны быть указаны протоколы (http://, https://, ftp://)
Если вы не знаете путь от корня сервера, то Вы можете его узнать, спросив у администратора сервера, либо может е посмотреть сами, запустив на сайте функцию PHP — phpinfo(). Она выведет на экран конфигурацию PHP в виде фиолето вых таблиц. В них Вам необходимо найти переменную doc_root и посмотреть ее значение — это будет путь от корня сервера до Вашей основной директории.

Перенаправление (редирект) только при запросе определенных страниц.

Redirect /location/from/root/file.ext http://www.serv.ru/new/file/location.xyz
/location/from/root/file.ext - это путь до корневого файла (до нужного файла).
http://www.serv.ru/new/file/location.xyz это место, куда попадет пользователь сделав запрос на файл file.txt.

Если файл лежит в корневом каталоге, то вместо location/from/root/ можно сразу поставить:
/oldfile.html
ну и если файл в субкаталоге, то будет выглядеть так:
/old/oldfile.html

Редирект на папку (напр. папка oldfolder).
Redirect /oldfolder http://www.serv.ru/newfolder
запрос на www.oldserv.ru/oldfolder/images/smile.gif,
попадет на www.serv.ru/newfolder/images/smile.gif.

#Глобальное перенаправление (редирект) на другой адрес.

Redirect / http://www.site.kz
Перенаправление (редирект) только посетителей с определенным IP-адресом.

SetEnvIf REMOTE_ADDR 192.145.121.1 REDIR="redir"
RewriteCond %{REDIR} redir
RewriteRule ^/$ /only_for_you.html

# Защита паролем.

AuthName "Section Name" AuthType Basic AuthUserFile /full/path/to/.htpasswd Require valid-user
Вам надо изменить для своего сайта. Например, поменять Section Name на своё название (к примеру - Members area).
/full/path/to/.htpasswd - полный путь до файла .htapasswd (об этом чуть позже).

Если вы не знаете полного пути, то обратитесь к системному администратору.

Файл .htpasswd

Чтобы защитить директорию паролем, надо создать файл содержащий логины и пароли, которым разрешено будет посещать сайт. И вписать в файл .htpasswd.
Создание имен пользователей и паролей.
Вписываем имена пользователей и пароли след. образом:
username:password
пароль (password) зашифрованная версия пароля.
Чтобы зашифровать .htpasswd файл, вам нужно будет воспользоваться готовым скриптом, или самому написать его. Если вам нужно несколько пользователей, то пишите построчно их. Как только вы заходите в защищенную паролем директорию, у вас всплывет pop-up окно для ввода логина и пароль.
А можно просто вписать в поле адреса:

http://username:password@www.serv.ru/directory

Как заставить Апач обрабатывать SSI директивы?
SSI позволяют "собирать" страницу из кусочков. В одном кусочке у вас код меню, в другом код верхней части страницы, в третьем - нижней. А посетитель видет обычную страницу, которая состоит из того кода, который входит в ваши кусочки. Необходимы обязательные установки в httpd.conf:
В блоке, начинающемся с и заканчивающийся в строку Options Indexes добавьте Includes и после, в файле .htaccess пишем:
AddHandler server-parsed .shtml .shtm .html .htm

Чтобы пользователь не видел список файлов в папке, при отсутствии в ней индексного файла, добавим строчку:
Options -Indexes

Выполнение php кода в файлах с другим расширением.

Иногда бывает полезно "обмануть" посетителя, выдавая ему свои php-скрипты или иные файлы, как HTML файлы. Реально используется для индексации поисковой системой Rambler php-скриптов.
RemoveHandler .html .htm
AddType application/x-httpd-php php .htm .html phtml

Заметьте, так как файлам с расширением .html и .htm сопоставлено, что это файлы с гипертекстовой разметкой, то мы первой строкой убираем это сопоставление и добавляем обработку таких файлов php интерпретатором. При большой посещаемости сервера такие ухищрения могут вызвать тормоза. Спрашивайте у админа.</pre>

# Error 404 ..| Ошибка 404
Можно создать специальный файл, где будут ссылки на ваш сайт, а не на хостера. Назвать его 404.html и поместить в корневую директорию. Величина страницы с ошибкой должна быть больше 511 байтов, иначе Internet Explorer может показать собственную страницу с описанием ошибки.

ErrorDocument 404 /404.html
ErrorDocument 403 /403.html
ErrorDocument 401 /401.html
ErrorDocument 500 /500.html

Можно указать другой файл, который автоматически откроется при появлении ошибки.
Карта сайта - является идеальным файлом для обработки ошибки error 404 (файл не найден).

ErrorDocument 404 /map.html
register_globals

Если у вас не работает почтовая форма, возможно не включен register_globals, тогда добавьте строчку:
php_flag register_globals on

Или php_flag register_globals off если вы хотите отключить.

# Защита от хотлинков

 Хотлинк (hotlink) - это когда ставят прямую ссылку на ваш контент с другого сайта.

 Часто такая ситуация нежелательна, вы же не хотите оплачивать трафик другого сайта, и для ее избежания используется:
 SetEnvIfNoCase Referer "^http://www.test.com" local_ref=1
 SetEnvIfNoCase Referer "^http://test.com" local_ref=1
 Order Allow,Deny
 Allow from env=local_ref

 Другой вариант:
 RewriteCond %{HTTP_REFERER} !^$
 RewriteCond %{HTTP_REFERER} !^http://www.quux-corp.de/~quux/.*$ [NC]
 RewriteRule .*\.(gif|jpg)$ - [F]
 RewriteCond %{HTTP_REFERER} !^$
 RewriteCond %{HTTP_REFERER} !.*/foo-with-gif\.html$
 RewriteRule ^inlined-in-foo\.(gif|jpg)$ - [F] 

Это интересно!

Полезные ссылки по теме: htaccess.net.ru и еще

с/у УтБ

P.S.: В следующей статье я привиду примеры готовых файлов .htaccess для wordpress и joomla
Маленькая танцующая девочка))) Талант – есть талант! ;)