WordPress плагин “Каталог статей” (Article Directory)
Внимание! Дальнейшая разработка и поддержка плагина и темы “Article Directory” остановлена.
Основная задача данного плагина заключается в том, чтобы вывести на главной странице (или любой другой) структурированный список рубрик, элементы которого можно было бы легко видоизменять с помощью CSS. Кроме того, плагин позволяет авторам публиковать статьи и менять их профиль, минуя админку WordPress.
Демо
Демонстрацию работы плагина можно посмотреть здесь - Articlesss.com/demo/.
Возможности плагина
Стандартные возможности для списка рубрик:
- Отображение количества статей как в родительской, так и в дочерних рубриках.
- Использование описаний рубрик в подсказках к ссылкам (параметр title).
- Отображение пустых рубрик.
- Отображение иерархии для подрубрик.
- Исключение из списка указанных рубрик.
Особые возможности для списка рубрик:
- Простое и удобное оформление с помощью CSS. Структура рубрик представляет из себя многоуровневый список, который с помощью CSS можно легко видоизменить так, как вам это будет нужно. Для родительской рубрики добавлен div-контейнер, чтобы можно было применить персональные CSS-правила, обозначив, что это именно родительская рубрика.
- Родительская рубрика показывает количество статей, содержащихся в ее подрубриках. В эту цифру также входит количество статей, содержащихся в самой родительской рубрике.
- Отображение списка рубрик в заданном количестве столбцов.
- Отображение заданного количества подрубрик 2-го уровня.
- Скрытие всех подрубрик.
- Возможность назначить иконки для любой рубрики в списке с помощью CSS.
Дополнительные возможности:
- Авторы могут добавлять статьи и менять свой профиль, минуя админку WordPress.
- Отображение “Правил публикации статьи” на странице добавления статьи.
- Исключение из архивных страниц родительских рубрик статьи подрубрик.
- Возможность получить исходный код просматриваемой статьи.
Требуемая версия WordPress: 2.9 - 3.0.4.
Скачать
Плагин “Article Directory” (каталог статей на WordPress)
Версия: 1.3 | Последнее обновление: 16.01.2011
Установка
Внимание: если вы используете плагин совместно с одноименной темой “Article Directory”, то пункты установки 5, 6, 7 и 8.1 выполнять не нужно:
- Скопируйте папку article-directory в папку с плагинами (/wp-content/plugins/).
- Активируйте плагин через админку.
- Активируйте опцию “Любой может зарегистрироваться” на странице общих настроек админки.
- На той же странице в опции “Роль нового пользователя” выберите “Автор” или “Участник”.
-
В файл index.php вашего WP-шаблона (либо в любое другое место, где хотите отобразить список рубрик) вставьте следующий код:
1<?php if (function_exists('article_directory')) article_directory(); ?> -
Добавьте следующий код в том место шаблона, где хотите отобразить форму авторизации, например в файл sidebar.php:
1<?php if (function_exists('article_directory_authorization_form')) article_directory_authorization_form(); ?> -
Добавьте следующий код в файл header.php перед тегом </head>:
1
2<link rel="stylesheet" href="<?php bloginfo('wpurl'); ?>/wp-content/plugins/article-directory/author-panel.css" type="text/css" media="screen" />
<link rel="stylesheet" href="<?php bloginfo('wpurl'); ?>/wp-content/plugins/article-directory/categories.css" type="text/css" media="screen" /> -
Выберите интерфейс автора в соответствующей опции на странице “Настойки → Article Directory”. Если вы выбрали “Панель автора”, то выполните следующие подпункты:
-
В папке с темой создайте новый PHP-файл, к примеру, author-panel.php, и вставьте в него следующий код:
1
2
3
4
5
6<?php
/*
Template Name: Панель автора
*/
if (function_exists('article_directory_author_panel')) article_directory_author_panel();
?> - Создайте в админке новую страницу и в блоке параметров страницы выберите шаблон “Панель автора“. Через данную страницу авторы будут добавлять новые статьи и менять свой профиль. При этом доступ в админку им будет запрещен.
- Укажите ID этой страницы в соответствующей опции плагина на странице “Настойки → Article Directory“.
-
- Готово. Если необходимо, можете настроить другие опции плагина.
Настройка
Возможно, что понадобится сделать 2 вещи:
- Поиграться с файлами author-panel.css и categories.css, чтобы привести панель автора и список рубрик к виду, соответствующему дизайну вашего сайта. По умолчанию эти файлы уже содержит набор правил, поэтому вы можете изменить их под себя.
- Настроить необходимые опции в админке на странице “Настойки → Article Directory“.
Как добавить иконки для родительских рубрик
Это делается с помощью CSS. Стили для иконок нужно добавить в файл style.css вашего шаблона.
Стили должны иметь следующий вид:
1 | #cat-23 {background: url(i/icon.gif) 4px 3px no-repeat} |
Здесь цифра 23 означает, что данная иконка будет добавлена во 2-й столбец для 3-й сверху родительской рубрики. Соответственно, необходимо создать столько таких стилей, сколько у вас имеется родительских рубрик, при этом указывая соответствующую цифру для каждой иконки.
i/icon.gif - это путь до файла иконки, начиная от папки с шаблоном.
4px - величина сдвига иконки слева от блока родительской рубрики.
3px - величина сдвига иконки сверху от блока родительской рубрики.
Плагин также позволяет вывести отдельный, аналогично оформленный список со ссылками на RSS-фиды рубрик. Для этого необходимо сделать следующее:
- Создать новый шаблон страницы.
-
На месте вывода списка вставить следующий код:
1
2<?php global $rssfeeds; $rssfeeds=true; ?>
<?php if (function_exists('article_directory')) article_directory(); ?> - В админ-интерфейсе создать новую страницу, выбрав созданный шаблон в параметрах страницы.
История версий
Версия 1.3 (16.01.11)
- При входе автора со страницы wp-login.php теперь происходит автоматическое перенаправление в панель автора.
- Добавлена опция “Показывать редактор текста”.
- Исправлена проблема, когда визуальный редактор не отображался.
Версия 1.2 (16.10.10)
- Исправлена проблема, когда статьи получали статус “запланированные” вместо “опубликованные”.
- Устранена ошибка с функцией mb_strlen.
- Исправлены ошибки в работе плагина в случае, если “Адрес WordPress” и “Адрес сайта” различались.
- Добавлена новая опция “Редактор текста по умолчанию” (HTML или визуальный).
Версия 1.1 (12.09.10)
- Обновлена инструкция по установке плагина.
- Добавлена возможность выбора интерфейса для авторов: “Админка WordPress” или “Панель автора”.
- Добавлена возможность автоматически публиковать добавляемые авторами статьи или отправлять на модерацию.
- В панель автора добавлен редактор TinyMCE и HTML-редактор.
- В файл author-panel.css добавлены стили для редакторов.
- Добавлена функция, подключающая форму авторизации (смотрите инструкции по установке плагина).
Версия 1.0 (06.09.10)
- Обновлена инструкция по установке плагина.
- Данная версия плагина разработана для WordPress версии 2.9 и выше.
- Кардинально переделана система сохранения настроек, благодаря этому размер плагина существенно уменьшился.
- Реализована возможность авторам добавлять статьи и менять их профиль, минуя админку WordPress (смотрите инструкции по установке плагина).
- Залогиненным пользователям, роль которых ниже “Редактора”, доступ в админку WordPress запрещен.
- Можно задать минимально допустимое количество символов в добавляемой статье.
- Можно задать максимально допустимое количество ссылок в статье.
- Плагин Role Manager (или ему подобные) больше не нужен для работы с плагином.
Версия 0.9.9 (27.09.09)
- Исправлен баг с исчезновением подрубрик при произвольной сортировке.
Версия 0.9.8 (22.06.09)
- Добавлена опция “Запретить публикацию в родительские рубрики?”.
Версия 0.9.7 (07.03.09)
- Доработан блок исходников статьи.
Версия 0.9.6 (25.01.09)
- Появилась возможность получить исходный код просматриваемой статьи.
Версия 0.9.5 (04.01.09)
- Добавлена возможность сортировки списка рубрик по вашему выбору. Для этого потребуется установить плагин My Category Order.
- Теперь плагин работает в версиях WordPress, начиная с 2.3 (исключены версии 2.1 и 2.2).
- Удалена функция перенаправления на главную страницу сайта при клике на ссылку “Выйти”, т.к. эта функция встроена в WordPress 2.7.
Версия 0.9.4 (29.11.08)
- Изменен метод считывания версии WordPress. Поэтому плагин теперь работает корректно, даже если вы используете его одновременно со сторонним плагином, изменяющим версию WordPress.
Версия 0.9.3 (05.10.08)
- Пофиксена ошибка базы данных: SELECT SUM(count) FROM wp_term_taxonomy WHERE taxonomy = ‘category’ AND parent =
Версия 0.9.2 (19.08.08)
- Решен вопрос с автозаполнением авторами полей (видимо, с помощью специальных программ типа AllSubmitter), которые скрыты и не должны заполняться.
Версия 0.9.1 (25.07.08)
- Исправлена ошибка, при которой были доступны к просмотру записи со статусом “Черновик” и “Ожидающие рассмотрения”.
Версия 0.9 (19.07.08)
- Если настроен вывод не всех подрубрик 2-го уровня, после списка подрубрик выводится символ “…”.
- Добавлена возможность назначить иконки для родительских рубрик. О том, как их добавлять, читайте инструкцию выше в статье.
- Убраны ограничения функций в админ-интерфейсе, создаваемые плагином, для пользователей вплоть до уровня редактора.
- Исправлена ошибка, когда при заходе на страницу комментариев в админке сообщение “Запретная зона” выводилось всем пользователям, независимо от статуса.
- От авторов спрятано сообщение о необходимости обновить WordPress.
- При нажатии на ссылку “Выйти” пользователь перенаправляется на главную страницу сайта.
Версия 0.8.1 (28.06.08)
- Добавлена возможность вставки “Правил публикации статьи” перед формой на странице создания/редактирования статьи (администратору правила не выводятся).
- Поскольку пока не найдено решение, позволяющее в админке на странице “Комментарии” показывать автору только его комментарии, доступ для него на эту страницу закрыт.
- От авторов спрятан подвал (footer) админки, как не нужный элемент.
- На доске объявлений (Dashboard) в верхнем блоке от авторов спрятаны различного рода статистические данные сайта. Если вы желаете также убрать из доски объявлений все виджеты (относится только к WordPress 2.5 и выше), то рекомендую воспользоваться плагином Dashboard Widget Manager.
Версия 0.8 beta (13.06.08)
- Все настройки перенесены в админ-интерфейс.
- Реализована возможность перевода плагина на другие языки.
- Интегрированы функции следующих плагинов:
Поэтому, если у вас установлены какие-либо из данных плагинов, их необходимо обязательно удалить.
- На странице управления записями в админке автор теперь видит только собственные статьи.
- На странице комментариев в админке автор теперь не видит такие данные, как e-mail и IP-адрес комментаторов.
Версия 0.7 (22.05.08)
- Добавлена возможность указать количество выводимых рубрик 2-го уровня.
Версия 0.6 (22.04.08)
- Исправлен неправильный подсчет количества статей в родительских рубриках в случае, когда они содержат подрубрики 2-го уровня.
Версия 0.5 (11.04.08)
- Добавлена возможность вывода дополнительного списка рубрик со ссылками на их RSS-фиды.
- Изменен файл categories.css для страницы с RSS-фидами рубрик.
Версия 0.4 (29.02.08)
- Добавлена возможность отключения вывода подрубрик.
- Добавлена возможность исключения указанных рубрик/подрубрик.
Версия 0.3 (23.01.08)
- Добавлена возможность отключения вывода сообщения “Нет рубрик”, если рубрика не содержит подрубрик.
Версия 0.2 (19.01.08)
- Добавлена автоматическая сортировка родительских рубрик.
- Реализован постолбиковый вывод рубрик, в результате чего уменьшилась площадь, занимаемая списком рубрик.
- Обновлен файл стилей для рубрик categories.css (при обновлении плагина на версию 0.2 этот файл необходимо обязательно обновить).
Версия 0.1 (07.01.08)
- Самая первая версия.
P.S. Предлагаю также скачать шаблон (тему) для WordPress с одноименным названием “Article Directory”, который специально заточен мною под полноценный каталог статей. Шаблон идеален в связке с вышеописанным плагином.
#cat-23 {background: url(i/icon.gif) 4px 3px no-repeat}
В новом шаблоне не работают отступы при добавлении иконок к категориям. Иконка оказывается под текстом категории.
Дмитрий, а подскажите пожалуйста как вставить логотип (рисунок) в шапку вашей темы перед ссылкой-названием сайта…?
А так же как вставить рисунок в файл 404.php ?
Спасибо заранее!
так же интересует…
Делается следующим образом:
2
3
4
background: url(i/icon.gif) 4px 3px no-repeat;
padding: 3px 5px 3px 25px;
}
Примерно так:
2
3
4
background: url(i/logo.jpg) no-repeat;
padding: 0 0 0 95px;
}
Используйте тег img.
Вставил в начало файла style.css
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
header, nav, section, article, aside, footer {display: block}
body {
font: 12px/18px Verdana, Arial, Tahoma, sans-serif;
color: #444;
background: #F4F4F4 url(i/bg.gif);
}
#logo {
background: url(i/logo.jpg) no-repeat;
padding: 0 0 0 95px;
}
a {
color: #009900;
text-decoration: none;
outline: none;
}
Но ничего не показывается…, да в папку картинок “I” кинул файл логотопа logo.jpg, но все равно ничего не произошло…
Что сделал не так… заранее простите за мое непонимание и тупость… учусь просто по немного…
Вот посмотрите что получилось, не сразу заметил. http://lemuriya.ru/
Как мне выровнять логотип его размер 150на 150 и чтобы он был спереди и равномерно перед названием-сылкой сайта, а название было немного дальше от логотипа на 2-3 мм
Спасибо заранее!!!
Не получается оцентровать логотип помогите пожалуйста…
Спасибо заранее!
Дима, если есть возможность - ответь, пожалуйста. Или кто знает… Ветка длинная, искать - времени нет.
В настройках плагина есть возможность исключить определенные рубрики по ID, отлично.
Тогда вопрос:
Как использовать эту переменную, если ее добавить руками в функцию вывода списка рубрик?
Что я хочу?
Мне надо использовать как-бы три раздела:
Первый - сделать Заголовок и вывести один список рубрик
Второй - Заголовок и список
Третий - Заголовок и список.
Фактически, надо три раза добавить функцию вывода плагина в одном файле, но ограничить
вывод рубрик параметрами типа query_posts
Это возможно? Если да - подскажите как реализовать.
Заранее спасибо.
Респект автору за проделанную работу
Во-первых, у изображения по краям белое пространство, которое нужно обрезать.
Во-вторых, регулируйте параметры padding и background-position.
Никак, только в настройках можно указать.
Спасибо за ответ
А как сделать, что бы дочерние рубрики отображались в строчку, а не в столбик? То есть по умолчанию идет так:
Рубрика
подрубрика 1
подрубрика 2
подрубрика 3
А хотелось бы вот так
Рубрика
подрубрика 1, подрубрика 2, подрубрика 3.
Ольга, вы у меня спрашиваете? :)
Я могу ответить, но лучше вопрос автору плагина задать.
1. Код вывода списка рубрик:
замените на такой:
2
3
4
5
6
7
8
if (function_exists('article_directory')) {
$cats = article_directory($echo=false);
$cats = preg_replace('#</a>\s*</li>#', '</a>,</li>', $cats);
$cats = preg_replace('#</a>,</li>\s*</ul>#', '</a></li></ul>', $cats);
echo $cats;
}
?>
2. В опции “Показывать количество статей в подрубриках” выберите “Нет”.
3. Замените эти стили:
2
3
4
5
font-size: 11px;
background: url(i/arrow.gif) 9px 7px no-repeat;
padding: 0 0 0 19px;
}
на такие:
2
3
4
font-size: 11px;
display: inline;
}
Доброго времени суток.
У меня следующие вопросы:
1. На главной странице есть форма для авторизации, а где найти ссылку для регистрации? Ее просто нет
2. Где брать значение для пункта “Идентификатор страницы панели автора:” при настроуке плагина Article Directory
Активируйте на странице “Общие настройки” опцию “Любой может зарегистрироваться”.
Прочитайте эту статью - http://wphacks.name/finding-category-id/ Для страниц все по аналогии.
Большое спасибо!
Очень долго грузит страницы, что делать?
без плагина - 1 секунда, с - от 20 секунд
Без понятия.
скопировал плагин в папочку, активировал (ВП 2.9.2), но при добавлении страницы справа в аттрибутах не появлось Author panel
ЧЯДНТ?
Попробуйте переключить шаблон на любой другой, потом обратно на “Article Directory”, после этого должно появиться.
не появилось :( но это уже не важно, я решил свой компонентик попроще сделать. мне так много функционала не надо. спасибо за внимание
Не подскажете еще кое что… при выводе в категории текст поста не форматируется,(Страна: США Ассортимент: Детская о» это всё текстом идёт сплошным текстом) а на главной и в постах все нормально.
не подскажи где поправить?
вот сайт shopozona.ru
Что на главной, что в категории - не вижу никакой разницы.
Догадался сам, извините, что поторопился.
Можно ли в этой теме применять сервис авторизации loginza?
А что вам мешается самому это проверить?
Здравствуйте Дмитрий!
Подскажите мне как сделать так чтобы на отдельно сделанной странице, например как у меня “Стихи” выводились как на главной список категорий, но не тех что на главной (я просто с главной их в плагине отключил), а тех которые я наоборот исключил с главной, но хочу чтобы на странице стихов они показывались…
Просто ставлю в своем шаблоне под страницу стихи код, а выводится как на главной, вот код шаблона:
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/*
Template Name: SEOzavr
*/
?>
<?php get_header(); ?>
<?php if (function_exists('article_directory')) article_directory(); ?>
<h3><?php _e('Most Recent Articles', 'article-directory'); ?></h3>
<?php
$page = (get_query_var('paged')) ? get_query_var('paged') : -1;
query_posts("cat=38,54,32,115,201&paged=$page");
?>
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
<div class="post">
<h2><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a></h2>
<div class="pmeta"><?php the_time(get_option('date_format')); ?> | <?php _e('Author'); ?>: <?php the_author_posts_link(); ?> | <?php _e('Posted in', 'article-directory'); ?> <?php the_category(', ') ?><?php edit_post_link(__('Edit'), ' | ', ''); ?></div>
<div class="entry">
<?php the_excerpt(); ?>
</div>
</div><?php endwhile; ?>
<?php kama_pagenavi(); ?>
<?php endif; ?>
<?php get_sidebar(); ?>
<?php get_footer(); ?>
Может как-то в ручную можно в шаблоне прописать не используя плагин, но чтобы выводилось по аналогии с главной.. ну, очень надо!
Привел полностью код шаблона чтобы было проще меня понять…
Заранее спасибо!
p.s. вот страница “Стихи” : http://lemuriya.ru/seozavr/
С помощью моего плагина никак не сделать. Попробуйте с помощью стандартной функции WordPress: