Создание разных шаблонов для постов блога (в файле single.php)
Для системы заработка в интернете на ссылках GoGetLinks важно количество внешних линков со страницы — очень часто в заданиях требуют от 3 до 5-ти внешних штук, что для нормального среднестатистического блога не очень просто. Таким образом, возникает задача использования «дополнительного» шаблона с небольшим числом внешних ссылок.
Обновление 1.08.2018: Со временем данная задача стала более простой и универсальной — читайте обновленную статью как создать отдельный шаблон страницы в WordPress (причем он будет работать в том числе и для постов/заметок блога!).
Сам шаблон сделать не так сложно — копируем файл single.php, где в самой верхней части кода добавляем:
<?php /* Single Post Template: Single Other Description: This part is optional, but helpful for describing the Post Template */ ?> |
Здесь важным элементом есть название шаблона, которое идет после слов «Single Post Template», оно должно совпадать с наименованием файла. То есть, например, в данном случае я сохранил весь оригинальный код «сингла» + эту часть в новом файле под названием single-other.php. Следует заметить, что я не уверен в этом своем утверждении на 100%, но в нескольких англоязычных блогах встречал подобные замечания. Кроме того, долгое время не мог заставить ни один плагин воспринимать этот шаблон пока не поменял название файла. В любом случае это не очень сложно сделать и лишним уж точно не будет.
Теперь для этого нового файла обработки единичной страницы записи указываем совершенно иные пути к файлам шаблона, которые не будут содержать внешние ссылки или они в них будут закрыты. Допустим, мы хотим избавиться от лишних ссылок в сайдбаре, тогда добавляем в «новый single» строку:
<?php include(TEMPLATEPATH."/sidebar-noads.php"); ?> |
вместо стандартной:
<?php get_sidebar(); ?> |
Понятно, что в файле sidebar-noads.php придется будет предварительно пошаманить.
Следующим шагом нужно как-то заставить ту или иную статью использовать вместо стандартного наш новый файл single-other.php. Для создания отдельных шаблонов страниц в wordpress нам достаточно просто определения названия нестандартного шаблона в начале файла. С постами в системе все гораздо сложнее. Без специального плагина разобраться будет сложно и долго — рекомендую скачать плагин Single Post Template.
Установка плагина стандартная — распаковываем архив и загружаем файлы на фтп в директорию /wp-content/plugins/, после чего в админке wordpress активируем модуль. При этом нужно также скинуть на фтп все файлы шаблонов, которые мы сделали в самом начале — их соответственно грузим в wp-content/themes/имя_шаблона/.
Если вы все сделали правильно, то при создании записи блога ищите снизу под текстовым редактором блок для выбора шаблона:
Сохраняем публикацию и проверяем работу шаблона. Относительно работы плагина Single Post Template на разных версиях вордпресс ничего сказать не могу, я тестировал на 2.8.6, на официальном сайте указана совместимость до 2.9.2. В крайнем случае можно поискать еще один плагин Custom Post Template принцип работы которого аналогичен. Единственное, что для его работы требуется php5 и несколько иной принцип указания название шаблона файла. Кроме того, этот плагин наработает с версии 2.9, поэтому у меня и не запустился. Указана совместимость до версии вордпресс 3.0.1.
Таким образом для подключения своего шаблона в файл sinlge вы:
- Создаете альтернативный шаблон single-other.php, где в начале файла пишете название.
- Производите нужные правки для сокращения числа внешних ссылок, вызова альтернативных версий файла сайдбара, футера и т.п.
- Ставите плагин для выбора созданного шаблона для конкретного поста.
Используя отдельные шаблоны для Single.php вы сможете не бояться строгих ограничений на количество внешних ссылок, обходя эту цифру, когда понадобится.
P.S. Постовой. Если вы поклонник красивых, дорогих и раритетных машин, то эти фото автомобилей просто обязаны увидеть, там есть все, чего душа пожелает.
Real Estate Agensy Actual Properties invites you to buy Villa Spain on Tenerife with a very good price.
Интернет магазин ЛинзМастер предлагает купить контактные линзы или цветные линзы с доставкой по Украине.
комментария 23 к статье “Создание разных шаблонов для постов блога (в файле single.php)”
Блог Wordpress Inside поможет вам научиться работать в вордпресс, закрепить и расширить имеющиеся знания. Плагины и шаблоны, разные хаки и функции wp, оптимизация и безопасность системы – все это и намного больше вы сможете найти на страницах нашего проекта!
Если хотите быстро и оперативно получать последние новости и статьи, то рекомендуем подписаться на обновления блога:
- Як сховати відсутні товари в Woocommerce шорткодах та схожих товарах
- Сервіс AdMaven + плагін для монетизації трафіка на WordPress сайтах
- Плагіни для створення стрічки новин з біжучим рядком в WordPress
- Як змінити розміщення кнопки оформлення замовлення в WooCommerce
- Плагін WHWS Display In Stock Products First – відображення товарів в наявності першими
- Підписка MonsterONE: чи варто використовувати цей сервіс у 2023 році? (+5 продуктів, які треба скачати в першу чергу)
- Онлайн генератор ссылок на мессенджеры для WordPress и не только
- WooCommerce (46)
- Безопасность (12)
- Видео (6)
- Виджеты (28)
- Возможности (141)
- Вопрос-ответ (6)
- Начинающим (52)
- Новости (46)
- Оптимизация (23)
- Плагины (246)
- Сервисы (87)
- Хаки и секреты (87)
- Шаблоны (45)
- Записи и посты wordpress, оформление записи (5,91 из 7, голосов - 47)
- Проблема с адаптивными изображениями в Gutenberg редакторе WordPress (3,87 из 7, голосов - 45)
- Умный копирайт в footer.php для wordpress (5,63 из 7, голосов - 30)
- Обновление плагинов и тем в WordPress: автоматическое, через FTP, скрытие уведомлений (5,19 из 7, голосов - 31)
- Polylang — плагин для мультиязычных сайтов на нескольких языках в WordPress (4,42 из 7, голосов - 31)
- Плагин TinyMCE Advanced – wordpress текстовый редактор (6,35 из 7, голосов - 20)
- Рубрики и категории wordpress, функция wp_list_categories (6,05 из 7, голосов - 20)
- Дизайн Мания - о веб-дизайне и не только.
- Tod's Blog - все про заработок онлайн.
- Вебдванольные заметки - обзоры веб-сервисов.
- Советы по выбору холодильника LG с технологией No Frost
- Зачем нужны Wi-Fi ретрансляторы и как выбрать подходящую модель
- Введение в онлайн-казино Slotor777: многообразие игр и привлекательные бонусы
- Необходимость использования облачного хранилища в наше время, что важно и как выгодно?
- Спрощення процесу звітності за допомогою програми BAS Бухгалтерія
- Технологія підключення інтернету GPON та її переваги
- За що гравці найбільше цінують Lineage 2
- Для каких проектов нужна аренда виртуального сервера и что такое VPS
добрый день!
может не в то сообщение, пищу, но хочу у вас проконсультироваться.
Нужен новый хостинг под вордпресс, мой хостер предупредил что перестает оказывать услуги :(
у меня 2 устоновки, одна с большой нагрузкой (1-3к посетителей [обновременно бывает 5-30 человек], 3-6к просмотров в день, большой трафик), другая — всего 50 посетителей.
где бы можно было их разместить (особенно первый, второй так без проблем — можно по любому объявлению), чтобы не было проблем с производительностью, чтобы скорость загрузки страниц было хорошая?
ну и цена не сильно большая, с возможностью оплаты через WM, 1-3$ в месяц (раньше было 1$ и 0.5$)
спасибо
Не люблю плагины, для реализации этой задачи использовал следующий код в single.php:
$post = $wp_query->post;
if ( in_category('1') ) {
include(TEMPLATEPATH . '/single_blog.php');
} else {
include(TEMPLATEPATH . '/single_prog.php');
}
Сергей Цепелев +1
vVv, сложно сказать, нужно поискать в интернете какой-то хостинг, можешь попробовать hostpro — держу там с десяток проектов, пока проблем не было, тьфу-тьфу-тьфу:)
Сергей Цепелев, у меня в одном блоге тоже так реализовано, спасибо за пример, мне просто казалось, что плагин «проверит» это условие на каком-то более «быстром» уровне, чем будет производится сначала загрузка файла single, а потом других после if. Хотя, наверное, это не принципиально.
спасибо.
я правда уже нашел, http://hostingland.ru/ — долго лазил по вордпресовским форумам, искал. подкупило то, что его затачивали специально под вордпресс и есть демо режим на 14 дней (действительно затачивали, страница генерируется за 0.2 с вместо 1, на старом)
А как изменить шаблон вывода короткой новости, какой файл за нее отвечает?
Алексей, что за короткая новость такая? архивы чаще всего в archives.php или все сразу в index.php.
Добрый день. Очень нужно сделать отдельный шаблон для одной категории. Это возможно?
Денис, для этого можно использовать условный оператор и код по типу:
То есть здесь для отдельной категории будет выбран другой шаблон сайдбара в отличии от того который по умолчанию. Это можно использовать при заработке в GoGetLinks чтобы избавиться от внешних ссылок.
Хм. С ифом я знаком, но никак не пойму, как реализовать мою задачу с помощью этого условного оператора.
Расскажу свою задачу. Мне нужно сделать одну страницу (можно в любом новом файле, например, news.php), в которой будет вывод новостей из категории novosti, причём на этой странице можно будет опубликовать какой-то статический текст.
Я взял файл archive.php, сделал его копию. Затем, перед я написал .
В результате, я не реализовал то, что хотел.
Денис, судя по всему тут больше подходит статья про создание отдельного шаблона страниц в WordPress, то есть создается для страницы ее копия, в php коде которой добавляешь вывод последних постов из категории.
Если хочешь добавить текст в архив, то в файле archive.php добавляешь условие если мол для категории —- in_category(‘152’) — тогда текст такой-то.
всего-то делов добавить в functions.php
function my_single_template($single) {
// определяем уникальные шаблоны для отдельных записей в указанной категории
// шаблон должен назыываться single-cat-##.php где №№ — номер категории
global $wp_query, $post;
foreach((array)get_the_category() as $cat) :
if(file_exists(SINGLE_PATH . ‘/single-cat-‘ . $cat->slug . ‘.php’))
return SINGLE_PATH . ‘/single-cat-‘ . $cat->slug . ‘.php’;
elseif(file_exists(SINGLE_PATH . ‘/single-cat-‘ . $cat->term_id . ‘.php’))
return SINGLE_PATH . ‘/single-cat-‘ . $cat->term_id . ‘.php’;
endforeach;
if(file_exists(SINGLE_PATH . ‘/single.php’))
return SINGLE_PATH . ‘/single.php’;
elseif(file_exists(SINGLE_PATH . ‘/default.php’))
return SINGLE_PATH . ‘/default.php’;
return $single;
}
define(SINGLE_PATH, TEMPLATEPATH);
add_filter(‘single_template’, ‘my_single_template’);
Алексей, выше в комментариях был вариант еще проще, но в целом согласен плагин нужно применять, когда выбор шаблона нужно делать пользователю — типа есть 4-5 оформлений статьи и при создании заметки автор блога может выбрать какой-то из дизайнов.
Кроме того, в новом wordpress по моему вообще для разных категорий выделили разные файлы шаблона. можно по имени категории создавать шаблоны.
Сергей Цепелев, большое вам нечеловеческое спасибо! Наконец-то неделя моих мытарств закончилась. :)
а если нужно изменить шаблон только одной записи?
4enki, пробуйте плагин Single Post Template.
Залез в файл single.php потом после некоторых монипуляций (после которых случилось вот это http://electrogazoswarka.ru/?p=698
все в низ сползло,а вот статические стр на месте.
Как можно востановить?что я нетак сделал?
Василий, самый простой вариант — перезаписать ваш файл исходным вариантом single.php из шаблона.
Долго не мог найти информацию о том, как правильно создать файл single.php для использования с Visual Composer, чтобы можно было кастомизировать всю страницу. Может не в тему, но если кому нужно, можно почитать здесь https://itnyou.xyz/kak-sdelat-fajl-single-php-dlya-visual-composer/
Что-то ничего не получилось. Возможно в статье упущен какой-то важный момент?
Цифровой, та вроде должно работать, там точно для постов (single) шаблон менялся? для страниц, по идее, чуть иначе было. Скоро напишу пост по этой теме, возможно, даж на этой неделе.
Цифровой, как и обещал, добавил апдейт в блог, но уже в новой статье — читайте как создать отдельный шаблон страницы в WordPress (будет работат в том числе и с постами).
Спасибо все получилось. Толковое объяснение.