Доска объявлений на WordPress — плагин ads_ilicomua чаcть 2

! Эта статья устарела, смотрите новую версю плагина Ads WordPress 3.x
Плагин позволяет писать сообщения в блог пользователям без регистрации.
Можно сделать из блога или его части доску объявлений.
Также его можно использовать для упрощенной публикации новостей, ведь для многих пользователей редактор WordPress, несмотря на его отличную юзобилити, оказывается очень сложен. Ещё один важный момент это то, что мы можем жестко задать шаблон публикации, например потребовать вводить email, почтовый адрес, телефон ну т.д. Сразу обращаю ваше внимание, что сообщения через этот плагин публикуются как записи WordPress и в дальнейшем их можно обрабатывать в своих шаблонах как вам захочется.

После прочтения этой инструкции не забываем читаем  часть 3

объявления плагин для wordpress

скриншот админ части

Давайте сразу условимся те сообщения, которые мы публикуем через этот плагин, будем называть объявлениями, а те что пишем как обычно через админ часть — записями.

Возможности плагина:

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

  • draft объявление сохраняется как черновик
  • pending объявление поступает на модерацию
  • publish сразу публикуется в блог

Если пользователь зарегистрирован в WordPress объявления будут подписаны его именем и соответственно к объявлению будут применены права и ограничения заданные в системе для его группы допуска.
Комментарии

  • open комментарии открыты
  • closed комментарии закрыты
  • optional позволяет пользователю самому открыть закрыть комментарии

Авто разрыв, auto <!—more—> автоматически генерирует анонс сообщения
Интервал времени между сообщениями в часах устанавливает интервал времени через которое аноним может публиковать новое сообщение
Антибот картинка (capthca) привет спамерам
Кол-во загрузок без комментариев.
Максимальный размер в мегабайт не влияет на параметр установленный в php.ini, можно установить меньший размер
Разрешённые типы файлов (множественный выбор с нажатой Ctr) тут однако ещё есть недоработка не все расширения распознаются правильно
Сжимать большие фотографии сохраняя пропорции очень полезный параметр, если вам кто-то пытается залить гигантские фото они будут уменьшено до указанных размеров.
Добавлять номер объявления к заголовку без комментариев.

Для каждого сообщения генерируется пароль с помощью которого наш анонимус может отредактировать сообщение либо удалить его.

Теги для вывода формы

Формы ввода показываем с помощью тегов, например логично для этого было бы создать 2 страницы «Дать объявление» И «Редактировать Объявление».

 страница Добавить Объявление
 страница РедактироватьУдалить Объявление

Теперь немного о таксономии плагина.

Первое что должен сделать пользователь это выбрать категорию объявления, иерархия категорий задается обычным способом в админке Управление-> Рубрики. Каждое объявление должно быть привязано хотя бы к одной категории, так вот эта категория сохраняется как произвольное поле (Custom Fields) под именем «ads_basecat» — базовая категория. Эта переменная необходима для правильной работы плагина, она же является флагом на то, что это именно объявлением. Так что если вы будете редактировать объявление через админ часть WordPress и откроете чекбокс Произвольные поля удалять ее не надо, равно как и другие поля начинающиеся с префикса ads_ они все относятся к свойствам объявлений.
Кто-нибудь, что-нибудь понял? Тогда идем дальше…
С рубриками то есть с категориями лучше приведу пример.
Ну самый подходящий это сделать сайт Агентства Недвижимости.
например мы создали такую структуру категорий.

  • 1 Покупка
  • 2 Продажа
  • 3 Законы
  • 4 Вакансии
  • 5 Элитные недвижимость
  • 6 Объявления

тогда записываем в поле :
Родительская рубрика = 6
ну а если мы хотим отдать под объявления весь сайт, но исключить некоторые рубрики для ананимусов, например запретить писать в рубрики Законы,Вакансии

  • 1 Покупка
  • 2 Продажа
  • 3 Законы
  • 4 Вакансии
  • 5 Элитные недвижимость

Исключить рубрики id через запятую 3,4
Ну теперь перейдем к более сложному.

Шаблоны плагина, скрытые настройки

Применить шаблоны постов если включит эту опцию то плагин будет показывать объявления применяя к ним шаблоны, то есть формат вывода и дизайн будет отличатся от обычных записей. Шаблон находится в папке плагина post_default_template.php это шаблон по умолчанию.

Есть возможность создать свои шаблоны и привязать их к конкретным рубрикам.
Это делается в файле config.php

 // шаблоны для отображения постов
$ads_config['post_templates']['default'] = '/post_default_template.php';// по умолчанию
$ads_config['post_templates']['Автомашины'] = '/post_auto_template.php';
$ads_config['post_templates']['Недвижимость'] = '/post_rent_template.php';

Аналогично можно задавать шаблоны формы ввода объявления там же

// шаблоны формы ввода для различных категорий
$ads_config['form_templates']['Недвижимость'] = '/ads_rent_form.php';
$ads_config['form_templates']['Автомашины'] = '/ads_auto_form.php';
$ads_config['form_templates']['default'] = '/form_default_template.php'; // по умолчанию

С помощью этих шаблонов можно вводить и затем отображать произвольные поля.
Например вы решили добавить отдельное поле для ввода телефон, назовем эту переменную ads_phone ! префикс ads обязателен.
Открываем шаблон формы (form_default_template.php) редактируем вверху задается массив
$_SESSION['ads_filds_form'] = array(‘ads_location’ …
добавляем в этот массив нашу переменную array(‘ads_phone’,’ads_location’ … это защита от умников, чтобы не подсунули нам ненужные переменные в $_POST.
Ну и далее вставляем в нужном месте html код
<input name=»ads_phone» type=»text» size=»10″>
Плагин обработает форму отфильтрует переменные не указанные в $_SESSION['ads_filds_form'], а затем все переменные, что начинаются с префикса ads_ будут сохранены как Custom Fields.
Как работать с произвольными полями смотрите . Но у нас есть более простой вариант если включена опция Применить шаблоны постов, тот все поля будут автоматически доступны как переменные php в шаблонах объявлений. Короче говоря открываем post_default_template.php и добавляем в нужном месте вывод телефона <?=$ads_phone?>.

Чтобы проверить правильность ввода данных пользователем добавляем фильтр:add_filter(‘ads_check_fields’, ‘имя функции);, функция фильтра принимает ассоциативный массив данных $_POST и если обнаружена какая либо ошибка добавляем к массиву элемент $_POST['error'] = ‘Описание ошибки’;
и затем возвращаем его return $_POST; пример фильтра смотрите в ads_config.php

Опция «Применить шаблоны постов» поключает фильтр posts_results все мета поля и все атачменты добавляются в основную выборку двумя дополнительными SQL запсами дополнительной нагрузки практически не создается, зато теперь все данные будут у вас под рукой, чтобы увидеть,  что где лежит в своем шаблоне в теле основного цикла распечатайте переменную $post:

echo ‘<pre>’; print_r( $post ); echo ‘</pre>’;

Скачать ads-wordpress
Проверен на версии 2.7, не пугайтесь размера архива там просто набор шрифтов для генерации капчи.

Изменения
16.10.2008

  • Добавлен поиск по произвольным полям (Custom Fields), чтобы запустить такой поиск надо сформировать адрес url или post запрос, где добавить переменную с префиксом ads_ и ее значение ?ads_location=Одесса/Ильичевск ну вот и все
    Пример сайтов где задействован плагин: ну вот и все. Таких переменных может быть много, все они будут задействованы в SQL запросе и объединятся условия будут через оператор AND. Подробнее как это делается смотрите в шаблоне объявлений post_default_template.php
  • Исправлена автоматическое добавление тега moore (отделение анонса объявления), теперь, если пользователь вставит одну длинную строку, разрыв будет вставлен после 300 символов, на первом пробеле.
  • В шаблоне объявлений добавлена возможность добавлять метки WordPress

23.10.2008

  • Добавлен фильтр данных формы ввода добавлять его можно стандартным методом WordPress add_filter(‘ads_check_fields’, ‘имя функции);, пример использования смотрите в файле ads_config.php
  • изменено имя файла confi.php на ads_config.php

15.11.2008

  • Исправлена загрузка и отображение картинок для WordPress версии 2.3

21.01.2009

  • Исправление безопасности: исправлена потенциальная уязвимость в функции function ads_queryfilter($query) — конструктор SQL запроса который позволяет осуществлять поиск по произвольным полям объявлений.

16.02.2009

  • Добавлена функция извещения автора если кто-то оставил комментарий к его объявлению, ну естественно если сам автор оставил email.
  • Добавлена возможность указывать время жизни объявления, а также функция автоматического удаления просроченных объявлений.
  • Подключен механизм кЭша WordPress в самых ресурсоемких местах : function ads_template_apply($post_content) и function ads_get_attachments($post_ID)
  • Добавлен новый пользовательский фильтр add_filter(‘ads_check_files’, ‘ads_filter_files’); — фильтруем загруженные файлы
  • Новый вариант капчи, теперь на картинке цыфры написаны словами один, два, три… Также поменял набор шрифтов на более читабельные. Теперь код распознается довольно легко.
  • Кроме того в директории плагина есть альтернативный пример настроек плагина, чтобы он заработал надо заменить ads_config2.php на ads_config2.php, в этом варианте пользователь сразу переходит к форме заполнения, а выбор категорий осуществляется с помощью выпадающего списка, здесь же есть примеры использования фильтров

Доски Объявлений — примеры



Отдельное спасибо за помощь в тестировании автору этого ресурса
256 White Shades

список открыт присылайте примеры будем публиковать

Рубрика:  октября 1, 2008.
/ » » »


Похожие записи:

112 Responses to Доска объявлений на WordPress — плагин ads_ilicomua чаcть 2

  1. Sleuth says:

    Не понятна проблема с КАПЧЕЙ

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

  2. says:

    Спасибо буду пробовать.Ещё вопрос:при уменьшении размера браузера фото не меняет размер.Можно ето както исправить

  3. admin says:

    2 Sleuth Проблема с капчей? наверно у вас старая версия — обновите плагин.
    А проблему с картинкой вообще то я не понял, но картинку можно отображать как угодно, это все делается в шаблоне объявления — post_default_template.php зная id загрузок и их url можете хоть галерею подключать

  4. Stepani4 says:

    1.Поставил плагин, добавил тег для добавления записи, появились поля для ввода и три кнопки загрузить, посмотреть, сбросить, а где кнопка отправить или т.п.
    2. При нажатии на кнопки загрузки фото, срабатывае какойто поис или тд не попойму.
    3. Как настроить чтоб редактировать могли все пользователи любое сообщение из определенных категорий

  5. Stepani4 says:

    с пунктом один разобрался… а вот объявления не добавляются

  6. admin says:

    1 заполнили все поля загрузили картинки жмем кнопку просмотр
    2 на странице прсмотрели всели в порядке жмем сохранить
    3 должно появится сообщение ваше объявление опубликованно или добавлено на модерацию …. пароль и логин для редактирования
    есть такое????

    может объявления сохраняются как черновики или попадают на модерацию ??? какай статус вы выбрали для новых объявлений в настройках плагина

  7. Stepani4 says:

    объявления добавляются, все ок, но картинки не грузятся. я думаю проблема в том что стоит ВП 2.5.1, там выше написано что в версии ВП 2.3 update_post_meta вернет false, помоему таже проблема. вопрос по поводу пароля(просто я делаю глоссарий на основе вашего плагина). Пароль состоит из «номера записи»+»точки»+значение возвращаемое функцией, так вот я не пойму где переменной $pasword присваевается «номер страницы и точка»?
    и еще я создал рубрику «глоссарий», и подрубрики напр «1″, «2″ и тд
    добавил посты без названия с тегомв каждую подрубрику все ок, но как отключить выбор рубрики куда публиковать, чтоб публиковалось в ту подрубрику в которой находится сообщение, те если пытались добавить в подрубрику «2″ то автоматически публиковалось в «2″
    P.s. а как еще можно с Вами связаться?

  8. Yeva says:

    Спасибо вам за отличнй плагин.
    Возникли следующие проблемы :(
    1. В Опере, а иногда и в IE не отображается антибот-картинка.
    2. Не отображаются поля загрузки картинок — только инструкция и кнопка «Загрузить».

    Подскажите, пожалуйста, в чем тут дело!?

  9. admin says:

    ads.php стр. 394

                  
                   if($EDIT){
    			$ads_password = $post['ads_password'];
    		}
    		else {
    			$ads_password = genPassword();
    			$post['ads_password'] = $ads_password;
    		}
    

    можно также поиском воспользоваться

    С рубриками и глоссарием я ни фига не понял.
    И еще тут есть страница контакты. :)

  10. admin says:

    2 Yeva наверно конфликтует с какимто плагином
    исходный код глянул

    Пожалуйста, введите код с картинки

    вот это вот style=»background: rgb(255, 255, 255 …. — это все не мое
    с файлами не могу сказать в чем проблема, может в настройках не выбрали кол-во загрузок

  11. Yeva says:

    >с файлами не могу сказать в чем проблема, может в настройках не выбрали кол-во загрузок

    Да, так и есть, спасибо.

    >style=”background: rgb(255, 255, 255 …. — это все не мое

    Здесь только цвет фона ячейки задан, но картинка отображалась через раз и до внесения этого изменения

  12. Yeva says:

    Разобралась с плагином. Отличная вещь — спасибо!

    Правда капча продолжает глючить (в опере не отображается, пока не обновишь картинку).

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

    Ещё раз спасибо огромное!

  13. W says:

    Привет!

    Поставил плагин, настроил, заполняю форму, все поля как надо, при загрузке картинки отображается только ее название и кнопка удаления, нажимаю просмотр и получаю сообщение об ошибке — Ошибка: Введите текст объявления или заголовок! Пробовал оба шаблона, ничего не меняется. В чем может быть причина? WP 2.6.3

  14. admin says:

    Тяжело сказать надо на месте разбиратся.

  15. says:

    Отличный плагинчик, давно такой искал теперь по теме хотел бы спросить, сколько стоит убрать копирайт, и как можно его клонировать, ну всмысле если на сайте нужно иметь и форму добавить новости и форму добавить обьявления и собственно формы добавить фото и добавить видео… имхо с этим всемм плагин должен справляться толкьо как это реализовать ?

  16. admin says:

    стукнитесь мне в асю или на почту там обсудим это вопрос

  17. says:

    Иногда капча не видит шрифты, не подскажите как исправить?

  18. says:

    И ещё вопрос:Какой должен быть оптимальный размер фоток, что бы он залазил на предыдущее объявление?

  19. admin says:

    для шрифтов надо выставить права доступа наверно,
    а с картинками советую жестко прописать размер изображения прямо в теге img чтобы не налазило, и также не забывайте что WordPress для каждого изображения автоматически нарезает 2 превью среднего и маленького размера, эти превью доступны стандартными методами ну а если включена опция применить шаблоны объявлений тогда в шаблоне вы получите масссив $files там будут все ссылки на картинки и превьюшки просто посмотрите это массив print_r

  20. says:

    Спасибо за хороший плагин!

    Может и глупый вопрос, но…
    Нельзя ли объяснить на пальцах как правильно добавить поле «имя» или «ник» чтобы оно сохранялось и выводилось вместе с записью?

  21. says:

    Разобрался!
    Все изза этих кавычек!
    …………………….
    Ну и далее вставляем в нужном месте html код

    …………………….

  22. says:

    Хороший плагин. Надо добавить поддержку тегов и чтобы админ мог ограничивть размер объявления 5000 или 10000 символами. А также, чтобы не пользователь поределял, сколько дней будет жить объявление, а предлагалась жёсткая градация: 15 дней, 30 дней или 90 дней.

  23. says:

    Интересная разработка. На моём сайте WordPress — обязательно установлю этот плагин и протестирую.

  24. says:

    эта тема тут затрагивалась но я так и не понял — как сделать что бы при просмотре главной страницы отображались рубрики не относящиеся к теме объявлений, а при просмотре объявлений отображались рубрики только объявлений?
    объясните ламеру плиззз :)

  25. admin says:

    Да вроде все понятно рассказал, что конкретно непонятно?

  26. Макс says:

    Так я и не разобрался с загрузкой фото в объявления :(
    Так что конкретно нужно изменить, update_post_meta не знаю уже как вертеть О_о

  27. says:

    как свами связаться?

  28. says:

    Установил плагин все работает, только картинки не загружаются!
    Когда загрузил появляется небольшое окно с надписью «Изображение» и всё, помогите, я уже и chmod 777 поставил на все папки и файлы, но не помогает.

  29. admin says:

    в настройках плагина включить включить галочку применить шаблоны постов,
    Связаться страница Контакты

  30. says:

    я понял почему проблема с картинками, они загружаются в папку /wp-content а не в папку /wp-content/uploads

    Теперь остается вопрос, как это исправить, надеюсь на Вашу помощь!!!

  31. admin says:

    а ну понятно, если вы изменили путь по умолчанию для загрузок возможны проблемы,
    1 вариант первый исправить место хранения картинок на по умолчанию Параметры->разное
    2 отключить в настройках плагина опцию «приметь шаблоны»
    и самостоятельно формировать вид объявления — получаем список атачментов и лепить их вверху или внизу

  32. says:

    Проблема решена! Спасибо, ваш плагин лучший из тех, которые я встречал!

  33. ni_ch says:

    Спасибо за плагин, он отличный. Но с картинками и я уже умаялся.
    Они загружаются, на сервер попадают, при создании сообщения в предпросмотре видны, но после публикации в сообщении не выводятся. Отображается только квадратик а-ля «тут должна быть картинка». При наведении курсора на квадратик можно увидеть в строке состояния ее корректный УРЛ. Там она и лежит по этому УРЛу.
    ВП 2.7.1, место хранения возвращено по умолчанию, галочка применять шаблоны стоит… результата все равно нет.
    Помогите пожалуйста побороть.

  34. ni_ch says:

    заметил что ads_files почему-то не добавляется/ не видно в Произвольных полях. когда заходишь в сообщение из админки

  35. admin says:

    ads_files это имя занято используйте другое.
    стучите в асюку или на почту помогу.

  36. ni_ch says:

    Поборол настройками.
    1. В «Разном», кроме того что место хранения картинок должно быть по умолчанию, еще должна быть _снята_ галочка «Хранить в папках по году и месяцу»
    2. Размер, до которого ужимать превьюшки, должен быть указан _разный_ в настройках ads и в стандартных настройках ВП «Медиафайлы». Причем для ads должно быть задано значение больше, чем для настроек ВП «Медиафайлы».
    Вот так получилось. Картинки и загружаются и отображаются корректно.
    Это все на ВП 2.7.1.

  37. says:

    А какой номер склада?

  38. says:

    Спасибо за плагин и статью, очень полезная разработка!!!!!!!

  39. jahman says:

    Я запутался. Админ, выручай. Я хочу создать доску объявлений о
    работе. Ситуация такая: Как сделать, что бы была стр. — Разместить
    вакансию (там просто форма), и текст должен отображаться на другой стр (Список вакансий). И так же с резюме. Т.е. я хочу использовать 2 формы
    на 2 разных стр. И Что бы инфа отображалась на 2 разных стр.??? Надеюсь
    ты понял )))

  40. admin says:

    читайте руководство по настройке где то здесь
    могу также предложить свои услуги по настройке объявлений платные
    если интересует стучите в ICQ

  41. slake says:

    при просмотре любой из категорий, формат вывода объявлений следующий: город заголовок или текст….

    вопрос — как изменить или убрать город?

  42. admin says:

    post_default_template.php редактировать шаблон в папке плагина,
    и для начала прочитать статьи
    подключение своих шаблонов

    добавление\отображение произвольных полей

  43. says:

    Разобралась с плагином. Отличная вещь — спасибо!

  44. says:

    При заходе на две последние ссылки примеров Аваст ругается на вирусы.

  45. says:

    Разобралась с плагином. Отличная вещь — спасибо!

  46. says:

    Господа, сам функционал неплохой. Ошибочки поправьте -упращенной, матерьялы и т.д.

  47. admin says:

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

  48. mix_iv says:

    Установил на wordpress 2.8.2, но при активации выскакивает ошибка:
    Parse error: syntax error, unexpected T_ELSE in /usr/local/www/apache22/data/baby1/wordpress/wp-content/plugins/ads-wordpress/ads.php on line 525

    Что делать?

  49. problem says:

    в html-код страницы прописал — на локалхосте форма отображалась, перекинул на хост — сейчас отображается только ссылка ili.com.ua.
    пробовал создать новую страницу — результат такой же.
    что делать?

Новости

  • Коммунальные тарифы в Украине будут повышаться
  • Луцкие пограничники просят помочь
  • Порошенко рассказал о достигнутых договоренностях
  • Что нужно узнать перед собеседованием
  • Главные проблемы работодателей
  • Украине вернется ядерный статус
  • В Киеве уже 11 тысяч беженцев с Донбасса
  • Комментарии


    Расширеный поиск +

    Другие статьи

    Объявления

    Мои проекты на WordPress

    , - специализированная доска объявлений по недвижимости на стоимость сборки $300 с установкой.
    городская доска объявлений, основные разделы: недвижимость, транспорт, услуги, работа, куплю-продам. Стоимость сборки $300 с установкой.
    - разработка, поддержка.

    Счетчики

    our blog