Мощность Советы для разработчиков WordPress шаблона

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

Плагины часто предлагают простые решения, но они не всегда элегантные решения: в частности, они могут добавить заметных накладных расходов, например,если они предлагают большую функциональность, чем необходимо.В самом деле, некоторые общие и часто используемые WordPress-функциональность может быть добавлена ​​к двигателю без раздутых плагинов, с помощью программного обеспечения itself.

Эта статья представляет 8 советов для разработчиков WordPress шаблон, адрес общая реализация CMS challenges, почти без плагинов зависимость.Эти примеры написаны для WordPress 2.7, а также должны работать в последнее WordPress-version.

Вы можете быть заинтересованы в следующих связанные должности:

1.Связывание страниц с поста categories

WordPress позволяет администраторам определять любую страницу, как сообщений page: это идеально подходит для реализации CMS с участием одной новости или блог корма.Тем не менее, WordPress не предоставляет простые, вне коробки механизма для настройки сайта с нескольких независимых feeds.

Here’ SA распространенный случай использования: компания хочет простой и случайный блог, и отдельная и более формальный корма для пресс-релизов inside __ своих 58 | О Us” раздел.Let’ S списке несколько требований предусмотрено образца клиент ищет только что:

  • Ни в одной точке, если эти два канала будет отображаться в one.
  • Ссылки на эти каналы должны появиться в страницу navigation.
  • Страница Пресс-релиз должен иметь статический, в сопровождении содержания над ее feed.
  • Для целей SEO, эти каналы должны иметь страницы, как постоянную структуру: другими словами, “ mysite.com/ category / Пресс-releases” неприемлемы; цель “ mysite.com/about-us/press-releases”.

The proposed sitemap

Как это часто бывает, существует несколько подходов можно взять.Основные соображения используются для Guage лучший подход включает ряд отдельных страниц кормов (один, в этом случае: Пресс-релизы) и необходимость “ primary” Лента новостей требующих поддержки нескольких категорий.Для этого примера, давайте предположим, что “ Наш Blog” does нужно вести себя как полнофункциональный блог с categories.

Подготовка site

Такой подход к “ страниц с одного feeds” создан на объединение, созданное между page и разместить category .“ primary” блог будет просто “ сообщений page” с несколько корректировок шаблон, который будет исключать сообщения от “ Пресс Releases” корма.Чтобы соответствовать требованиям SEO для логического и последовательного URL структуре, нам нужно будет тщательно настроить и установить permalinks.

  • В “ Reading” настройки, убедитесь, что “ Главная страница displays” параметр имеет значение “ статические page”, и что “ Сообщения page” установлен на “ Наш Blog”.
  • В “ Permalinks” настройки для WordPress, убедитесь, что “ Пользовательские Structure” выбрано.Структура должна быть:. / tegory% /%% адресе ссылки /
  • На странице списка, определить постоянную (или пули) для “ О Us” страницы (с помощью нашего сайта пример: let’ Скажем “ О-us”).Определить пули для страницы прессы (“ пресс-releases”).
  • Два соответствующих категорий должны быть добавлены: “ О Us” категория с соответствующим постоянную (“ о-us”), и “ Пресс Releases” категория с соответствующим постоянную (“ пресс-releases”) иего родитель категории установлен в “ О Us”.
  • Создать пост в “ Пресс Releases” категория для тестирования purposes.

The proposed sitemap

Исключение категории из блога page

Чтобы исключить категорию с главной страницы блога (который показывает все сообщения по категориям), пост запрос, используемый для страницы блога template должно быть modified.

WordPress Кодекс излагаются solution.Просто определить категорию идентификатор “ Пресс Releases” категория (наведении мыши на название категории в админ-панели и, глядя на URL в строке состояния простой способ найти ID –let’ с использованием 5 для примера), и вставьте следующий код выше пост цикл:

query_posts("cat=-5");

Обратите внимание, что многие шаблоны также включать список категорий в боковой панели, список последних поста, и другие компоненты, которые не могут исключить сообщения от “ пресс releases” категория.Они также должны быть изменены, чтобы исключить категорию, это легко поддерживается большинством WordPress calls.

Включение отдельных кормов page

Корм ​​страницы требуется персонализированные страницы template.В этом примере мы назвали шаблон “ Пресс-релиз Feed”, и использовать общие “ page.php” шаблон в качестве отправной точки (копирование и переименование его “ page_press.php”).

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

Общие рамки для кода ниже. Запрос документации сообщений на WordPress codex дает представление о большой customization.

query_posts('category_name=Press Releases');
if ( have_posts() ) : while ( have_posts() ) : the_post();
	//post output goes here... index.php typically provides a good template
endwhile; endif;
wp_reset_query();

Конечно, быть уверенным, чтобы присвоить “ Пресс Releases” страница нового шаблона, на странице editor.

Дьявол кроется в details

В зависимости от характеристик конкретного сайта, многие дополнительные настройки шаблона – за тем, что описаны выше – вероятно, будет необходимо.В частности, это “ Мощность tip” не охватывают конкретные стратегии для обработки отдельных представлений пост в эти изолированные каналы.На высоком уровне, с использованием условной in_category проверок в рамках “ single.php” Шаблон (используется для вывода отдельных сообщений) должны создать основу для настройки сообщению просмотра в зависимости от их категории.Если вы заинтересованы, более подробную статью могут исследовать эти стратегии более подробно (пожалуйста, сообщите нам об этом в комментариях!)

Альтернативная Scenarios

Создание индивидуальных шаблонов страниц для каждого автономного кормов является эффективным решением для сайта с только несколько таких каналов.Есть, однако, WordPress питанием сайтов, таких как m62 визуального communications которые расширяют идею категории и даже tag ассоциация со страницами гораздо глубже.m62 есть десятки страниц, связанных с отдельными категориями блога, родители категории, итегов, легко смешивается с стандартными, “ корм-less” страниц.В этих случаях, умнее решение будет включать специализированные шаблоны, которые теги матч и категории постоянные против странице постоянные динамически создавать associations.

Этот подход может также способствовать сайтов, которые требуют более одного “ primary” (несколько категорий) блога, посредством использования иерархических категорий / родителя categories.

Опять же, если есть интерес, будущей статьи можно обсудить эти методы в detail.

2.“ Friendly” Член только pages

Out-из-коробки, WordPress включает в себя возможность назначить любую страницу или пост как личное.По умолчанию эти элементы не отображаются в страницу или пост списков (включая навигацию) и генерировать ошибки 404 при посещении непосредственно – если посетитель зашли В то время как утилитарным, чаще всего, это не идеально подходит для usability.

Часто сайты намеренно обнародовать посетителей курсе страницы или сообщения, полное содержание виден только членам.Дружеское послание оповещения посетителей, что они достигли только для членов страницу, с приглашением войти в систему, может быть лучшим решением.Content-ориентированных веб-сайтов могут дразнить общественность “ выше fold” – или сокращенно – контент для всей аудитории, в то время как заманчиво посетителя войти в систему или зарегистрироваться, чтобы прочитать всю article.

Linedata's blog upsells with member exclusive content

Этот пример служит основой для этих “ hybrid” Член / общественные страниц с помощью последнего сценария в качестве примера. Содержание признакам “ выше fold” – или выше “ more” разделителя – будут видны широкой общественности.Содержание ниже сгиба будет доступна только для members. На место содержания ниже раза, общественного посетителей будет предложено войти in.

Такой подход к “ hybrid” страницы создан на общественных, опубликованных страниц с настраиваемым полем используется для идентификации содержимого страницы, как “ член exclusive”.

  1. Создать страницу или post.
  2. Начните с пункта или два видны общие public.
  3. Вставить “ более tag” В конце общественностью content.
  4. Войти содержание видна только для зарегистрированных членов ниже более tag.
  5. Добавить пользовательские поля с именем “ member_content”.Установите его значение в 1.
  6. Публикации страницы с общественностью видимость (по умолчанию)

Hybrid public / member content

Следующий шаг заключается в редактировании соответствующие файлы шаблонов.Как правило, это будет “ page.php” (страниц) и “ single.php” (должностей).Заметим, что если эти гибридные просмотра будет применяться только кстраницы, разработчик может создать “ член content” шаблон страницы в качестве альтернативы с помощью пользовательских полей.Это позволит устранить необходимость в проверке пользовательских полей и альтернативные выходы в то же template.

Для этого примера, мы будем считать, что мы создали сообщение (не страницы) с членом эксклюзивного контента.Таким образом, мы должны изменить “ single.php”.Внутри шаблона, найти the_content Call используется для удаления на странице и после содержания.Here’ S Что это часто выглядит как до изменения:

the_content();

Вот новый код с альтернативными “ public” Просмотров:

if(!get_post_meta($post->ID, 'member_content', true) || is_user_logged_in()) {
    the_content('<p class="serif">Read the rest of this entry »</p>');
} else {
    global $more;	// Declare global $more (before the loop).
    $more = 0;	// Set (inside the loop) to display content above the more tag.
    the_content(""); //pass empty string to avoid showing "more" link
    echo "<p><em>The complete article is only available to members. Please log in to read the article in its entirely.</em></p>";
}

Добавьте к этому следующий совет включить в форму входа, которая отправляет членам право вернуться к текущей странице или post.

3.Вложения входа в форму, которая возвращается к текущему location

Иногда, отправляя членов стандартную форму входа в WordPress не является идеальным.Он может, например, не согласуется с выглядеть и чувствовать себя клиент ищет.Там также может быть случаев, когда вложения форму входа на страницу –, как и в Совет 7 – обеспечивает превосходное удобство по сравнению с нажатия на ссылку для входа page.

Museums in the Park, powered by WordPress, has a custom log-in form for members.

код ниже падает виде WordPress входа в шаблон, and отправляет пользователя на страницу, они вошли в from.

<?php if(!is_user_logged_in()) { ?>
	<form action="<?php echo wp_login_url(get_permalink()); ?>" method="post">
		<label for="log"><input type="text" name="log" id="log" value="<?php echo wp_specialchars(stripslashes($user_login), 1) ?>" size="22" /> User</label><br />
		<label for="pwd"><input type="password" name="pwd" id="pwd" size="22" /> Password</label><br />
		<input type="submit" name="submit" value="Send" class="button" />
		<label for="rememberme"><input name="rememberme" id="rememberme" type="checkbox" checked="checked" value="forever" /> Remember me</label>
	</form>
<?php } ?>

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

4.Определение верхнего уровня Page

“ верхнего уровня page” является самым высоким уровнем страницы в …

Если вы хотите прочитать полностью статью, посетите сайт наших спонсоров

Comments are closed.