Ads WordPress 3.x

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

Сразу предупреждаю — новая версия частично не совместима со старыми, как минимум придется вносить изменения в свои шаблоны и ads_config.php, Но общий принцип работы с дополнительными полями ads_ и adp_ сохранен.

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

Позволяет писать сообщения в блог пользователям без регистрации, либо только с регистрацией. Можно конструировать любые формы ввода добавляя свои блоки данных. В дальнейшем эти блоки будем называть полями формы или мета полями. Формат объявления (записи), состав произвольных полей и правила проверки этих полей жестко задается шаблонами и пользовательскими функциями. Основные, на мой взгляд, параметры настроек внесенные в админ часть плагина, однако основная часть находится в шаблонах и config файле — все это будет рассмотрено в отдельных статьях.

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

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

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

    • open комментарии открыты
    • closed комментарии закрыты
    • optional позволяет пользователю самому открыть закрыть комментарии
  4. Уведомлять автора по почте если появился новый комментарий к его объявлению.
  5. Авто разрыв, auto <!–more–> автоматически генерирует анонс сообщения, обрезает большой текст по словам.
  6. Интервал времени между сообщениями в часах устанавливает интервал времени через которое пользователь может опубликовать новое сообщение, защита работает на сессиях php поэтому легко обходится например достаточно сменить броузер и можно написать новое сообщение, но все таки это лучше чем ничего.
    new Кроме того, для каждого объявления теперь запоминается IP адрес и сохраняется в мета поле ads_IP и теперь вы можите самостоятельно организовать проверку на спам по IP адресу.
  7. Антибот картинка (capthca) привет спамерам. Используется библиотека
  8. Количество полей для загрузки файлов: Количество загрузок для объявления.
  9. Максимальный размер в мегабайтах: Это не относится к настройка php (upload_max_filesize) работает только для объявлений.
  10. Разрешенные типы файлов: Разрешает/запрещает основные типы файлов для загрузки через плагин.
  11. Сжимать большие фотографии
    сохраняя пропорции:
    Решил всетаки оставить эту опцию. Помимио того, что в самом WordPress можно задать максимальный размер картинки, для объявлений, тоесть картинок, которые будут публиковатся через плагин, можно задать свой максимальный размер и большие картинки будут ужиматся сохраняя пропорции.
  12. Исключить рубрики id через запятую Здесь можно задать список рубрик (id) в которых запрещенно пупбликовать объявления.
  13. Родительская рубрика: Своего рода контейнер для объявлений, публикуются либо сразу в этой рубрике либо в ее подрубриках.
  14. Список выбора категории: Перед написанием объявления пользователю предлагается выбрать рубрику из списка категорий в которой оно будет публикованно. Эти опции задают вид этого самого списка
  15. newID категории для городов и улиц: Если вы хотите добавить привязку объявлений к городам и весям необходимо создать рубрику-контейнер, внутри которой, в совю очередь, создать ирерархию географических объектов (страны, города, районы улицы и т.д.) и затем в этом поле указать ID рубрики-контейнера. В отличии от старых версий ГЕО привезка осуществлялась через механизм мета полей поэтому совместимости не будет. Но можно продолжать пользоватся старым способом.
  16. Применить шаблоны постов: Выводит объявления применяя к ним пользовательские шаблоны, это значит что формат вывода и дизайн объвлений будет отличатся от обычных записей. Есть возможность создать свои шаблоны и привязать их к конкретным рубрикам. Кроме того эта функция оптимизирует запросы к БД и существенно ускоряет работу всего блога в целом. Как работает ускоритель читать
  17. Добавлять номер объявления к заголовку немного неправильное название не номер объявления, а ID записи — уникальный идентификатор и автоинкрементное поле из таблицы posts.
  18. Разрешить указывать время жизни объявления После истечения этого срока объявление будет удаленно со всеми загрузками. Работает через механизм WP_Cron, если вдруг удаление не работает попробуйте деактивировать и снова активировать плагин, чтобы переустановить задание для крона WordPress.
  19. Кому можно писать объявления уровень доступа пользователя, пока только 2 варианта либо всем, либо только зарегистрированным разрешается писать объявления.
  20. newУведомления на Email: отправляет на почту, если она была указанна, уведомление в котором содержится заколовок написанного объявления его ID+password, ссылка на сомо объявление, прямые сслки на редактирование и удаление объявления.
  21. new перенаправлять ссылки типа -Редактировать запись- на редактор плагина: если ваша текущая тема выводит ссылки на редактирование записи то для объявлений эти ссылки будут перенаправленны на редактор плагина поэтому в этом поле надо указать ID страницы редактирования.
  22. new Включить ads_queryfilte — поиск по метаполям включает конструктор поисковых запросов по мета полям и adp_ полям подерживает простейшие опреции. Например если вы добавили в объявление поле с ценой ads_price то можно легко сформировать url запрос и указать условия поиска больше, меньше, интервал, список выбора. Также можно указывать сортировку объявлений по заданому полю. Это Большая тема подробности в отдельной статье. (скоро)
  23. new Разрешить ввод тегов разрешает \ запрещает ввод тегов (метки) пользователю.
  24. new Добавлена функция function ads_recent($args): выдает последние объявления из заданной категории с заданным метаполем, только с картинкой или без. И на основе этой функции добавлен Widget Ads_Recent_Ads

Уважаемые коллеги, в результате активного тестирования найдено и исправлено много ошибок и недоработок, кое что приходится добавлять на ходу. Заранее прошу прощения, спасибо за понимание и помощь в тестировании.

  • 18.05.2010:
    Правки в виджете — добавлено вывод мета поля, теперь можно выводить картинку, заголовок записи и какое-то мета поле например цена.
    Подкорректирован перевод виджета.
    изменение в файлах ads_function.php, ads_widget.php, файлы переводов.

  • 25.05.2010
    Добавлена прямая загрузка файлов по URL. Используйте в форме form_default_template.php новый form_uploads2.inc.php вместо form_uploads.inc.php, чтобы воспользоваться прямой загрузкой.
    Изменены файлы: ads.php; шаблоны: form_uploads2.inc.php, form_default_template.php
  • версия 3.0.9 от 30.06.2010
    Корректировка плагина под WordPress 3.0 восстановлено исключение рубрики категорий из общего списка рубрик в виджетах.
    Исправления в функции ads_category_list() вывод галереи.
    Изменены файлы: ads.php; function.php
  • версия 3.0.10 от 08.07.2010
    Исправлена отправка почты при публикации или редактировании сообщения, (странно никто этого не заметил).
    Добавил новую функцию ads_get_links_post() — выводит ссылки на текущие объявление просто URL, html код, bbCode. Вывод ссылок добавлен в шаблон по умолчанию.
    Изменены файлы: ads.php; ads_function.php; post_default_template.php
  • версия 3.0.11 от 12.07.2010
    Исправлена ошибка вывода превьюшки при загрузке маленького изображения.
    Изменены файлы: ads.php;
  • версия 3.0.12 от 26.07.2010
    Изменение в функции ads_queryfilter — поиск по мета-полям,
    Внимание! добавлено вырезание html тегов из всех полей, strip_tags можно отключить в админке, или указать список тегов которые можно оставить.
    Изменены файлы: ads.php;
  • версия 3.0.14 от 01.09.2010
    Изменение в функции ads.php исправлена ошибка связанная с постраничной разбивкой, которая появлялась при задании категорий для исключения.
    Изменены файлы: ads.php;
  • версия 3.0.15 от 14.09.2010
    Изменения в функции ads_addImgMeta мета поля теперь получаем с помощью вызова системной функции update_meta_cache таким образом все данные сразу попадают в кеш и доступны для последующего использования.
    Изменения в функции ads_queryfilter добавленны новые операторы условия проверки на NULL isnull и notnull, а также добалена возможность задать несколько условий для одной переменной
    Изменены файлы: ads.php;
  • версия 3.0.16 от 24.09.2010
    Исправлена ошибка с вводом капчи когда с первого раза ввод не срабатывал, и исправлена ввод лишних пробелов при вводе — и других символов.
    Изменены файлы: ads.php;
    !!! далее плагин работает только под WordPress 3.x и выше !!!
  • версия 3.0.17 от 17.10.2010
    Добавил создание иконок для загруженных файлов не картинок архивы, exe, документы, текстовые, видео, звук и тд
    Изменены файлы: ads.php, ads_function.php;
  • Релиз 3.1.0
    Что нового

Скачать плагин: ads-wordpress 3.1.0

(Последнее изменение: admin; 19.04.2011 в 09:16 )

Рубрика:  апреля 11, 2010.
/ » » »


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

312 Responses to Ads WordPress 3.x

  1. admin says:

    смотрите в
    templates/post_default_template.php

    ссылку на сайт убрать нельзя, но можно спрятать с помощью css

  2. says:

    Обновил вордпресс и плагин с 2-х версий до последних третьих. Создал рубрики городов. Новые объявления работают, а старые, если у них был указан город, то на странице с объявлением выдается ошибка в файле wp-includes\category-template.php в строке 70.

    Я ошибочно посчитал, что такая команда в phpadminmysql мне поможет
    UPDATE `wp_postmeta` SET `meta_value` = REPLACE(`meta_value`, ‘Москва’, ’489′)
    Где 489 id рубрики Москва.

    В общем теперь всё работает без ошибок, но вместо названия города (ads_location) выдается цифра. Причем и в новых объявлениях.
    Как поправить это дело?

  3. says:

    Здравствуйте! У меня не ставится этот плагин. Когда то я его пробовал ставить на свой сайт он поставился, но я тогда посчитал что это будет лишним и убрал его, прошло время и теперь он мне опять очень нужен но вот когда я его ставлю, он загружается, активируется, но больше ни чего не происходит в админ панели не появляются настройки плагина, и не появляются страницы плагина, в чем может быть проблема подскажите пожалуйста? :(

  4. admin says:

    Вы совершенно правильно поняли, в $ads_location теперь хранится id категории. Почему там выводится номер вместо названия сказать немогу, страная ошибка.
    К сожалению города старые с новоми не совместимы, старые в postmeta хранились, а новые города это рубрики, чтобы сохранить вывод новых и страых надо комбинировать вывод
    код для шаблона отображения типа post_default_template.php

    <?php
    if(('`^\d+$`',$ads_location){
    $ads_location = get_category_parents($ads_location, true, '/', 0, ($ads_location_root) );
    }
    elseif($ads_location){
    	$arr_location =  ('/',$ads_location);
    	$ads_location = '';
    	$lurl = '';
    	foreach ($arr_location as $key=>$value) {
     		if(!$value) break;
     		$lurl = (!$lurl) ?  $value : $lurl.'/'.$value;
            if(($_GET)){
                ($_GET['ads_location']);
                $url_query = '?'.append_params($_GET).'&amp;';
            }else
                $url_query ='?';
     
            $arr_location[$key] = "<a href='{$url_query}ads_location=$lurl' rel="nofollow">$value</a>";
     	}
     	$ads_location = ('/',$arr_location);
    }
    ?>
    итак мы сначала проверяем, что $ads_location состоит целиком из цифр если так то здесь хранится id категории а значит новая версия если нет используем старый метод
     
    и потом где-то уже в html коде выводим
     
    <?if($ads_location) echo $ads_location;?>
  5. admin says:

    какая версия плагина? версия WP какие этапы установки вы проделали?
    в админке страница настроек плагина должна появится в Параметрах,
    может перепутал не то активировал там еще идет в комплекте Ads Profile плагинчик ?

  6. says:

    Я плохо сформулировал, на странице с объявлением, никаких ошибок теперь нет.

    Проблема лишь когда находишься в рубрике. У меня в файле archive.php город выводился раньше так
    ID, ‘ads_location’, true); if($location !== ’0′) { ?>
    Город:

    Поэтому ошибка не очень странная, этот код и должен сейчас выводить только цифру (id).

    А вот как его изменить что бы он выводил название города-рубрики у меня знаний не хватает.

  7. says:

    Код не корректно вставился, заменил на // и \\
    //?php $location = get_post_meta($post->ID, ‘ads_location’, true); if($location !== ’0′) { ?\\
    Город: //b\\//?php echo $location ?\\///b\\
    //?php } ?\\

  8. says:

    Юра здраствуйте, возможно вы помните мой злополучный сайт proart.in.ua так вот я решил поднять сайт и обновить ваш плагин. Короче все вроде настроил но Catchable fatal error: Object of class WP_Error could not be converted to string in /home/odetkaco/domains/proart.in.ua/public_html/wp-includes/category-template.php on line 70

    что именно у меня там сдохло не знаю…

  9. says:

    Проблему решил создав другую, $ads_location созданый старой версией (2.2.4) не преобразовывается в строку. А в новой версии локейшн выполняет функцию по выбору категории.. короче легче откат сделать

  10. admin says:

    во первых если у вас включена опция ==применять шаблоны постов==
    тогда использовать get_post_meta лишняя трата времени оно уже все включено. И я совсем понял, что вы написали мне.
    но я выше написал вам пример где вполняется проврка если id — представляет собой число то

    $ads_location = get_category_parents($ads_location, true, '/' );
     
    echo $ads_location;

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

  11. says:

    Несколько комментариев выше я писал о такой же проблеме.
    Сама ошибка исчезает при выполнении команды в phpMyAdmin

    UPDATE `wp_postmeta` SET `meta_value` = REPLACE(`meta_value`, ‘Москва’, ’489′)
    Где 489 id рубрики Москва.
    И так выполнить для каждого города.
    Создайте предварительно бекап.

  12. says:

    Юрий, спасибо разобрался.

  13. Степан says:

    Ads-WordPress Версия 3.0.17
    WordPress 3.0.1
    php 5.3.3

    Плагин не может быть активирован, поскольку он вызвал фатальную ошибку

    Parse error: syntax error, unexpected T_ELSE in /opt/local/var/www/htdocs/wptest/www/wp-content/plugins/ads-wordpress/ads.php on line 1201

  14. Степан says:

    Разобрался
    php 5.3 требует

    <?php

    а не

    <?

    Сделайте апдейт плиз )

  15. Степан says:

    Вообще, в плагине много несовместимостей с php5.3
    вот так выглядит панель настроек .

    Собираетесь адаптироваться?

  16. admin says:

    нет, это ваше 5.3 , не совместимо с моим плагином, включите подержку коротких php тегов < ? ?>
    или поставьте себе Денвер, менять не

  17. says:

    Добрый вечер! Подскажите, пожалуйста, как ускорить работу сайта с плагином? Долго не мог понять, почему сайт долго грузится, деактивировал плагин — сайт залетал.С ним — секунд 10 думает, потом сразу догружает.
    Есть какое-то решение? Не хочется от Ads’a отказываться:(

  18. Степан says:

    Ясно, спасибо, надеюсь следующие версии php будут менее несовместимы с вашим плагином ;)

  19. admin says:

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

  20. says:

    Спасибо, отправил Вам данные по icq.

  21. admin says:

    на почту кидайте http://ili.com.ua/?page_id=8

  22. dominikof says:

    Здравствуйте.
    Возникла необходимость создать сайт обявлений и решил воспользоваться вашим плагином. Впринципе всё устроило кроме того что когда производиться добавление обявления то он добавляет запись для вех родительских рубрик:например авто-мото > запчасти > куплю, нужно что б добавлялось только в рубрику куплю так как она сама есть родительская для запчасти и авто-мото.
    Но вот не могу найти в коде запрос на добавление в базу. Подскажите где это у Вас реализовано(в каком файле).

    Спасибо.

    П.С. Юзаю плагин для третего вордпресса.

  23. says:

    Юрий, спасибо за помощь с плагином!

  24. egoroff says:

    По поводу удаления устаревших объявлений — можно ли сделать что бы устаревшие объявления перемещались в другую категорию, которую я например назову «Архив» (не доступный для рядовых пользователей) ?

  25. Алексей says:

    Прочитал почти все комментарии и статьи здесь. Я новичок. Так и не понял. Проблема с миниатюрами на главной и в рублике, ну не вставляются, хотя в самом объявлении они есть.Что делать? Прочитал вашу статью про вставку миниатюр, а куда код вставлять? В теме по умолчанию, кстати, на главной миниатюры появляются, а в рублике нет.

  26. admin says:

    Пока нет такой функции не предвидится

  27. egoroff says:

    есть идеи по поводу моего вопроса ? По поводу удаления устаревших объявлений – можно ли сделать что бы устаревшие объявления перемещались в другую категорию, которую я например назову «Архив» (не доступный для рядовых пользователей) ?

  28. egoroff says:

    есть еще вопрос! Возникли проблемы с загрузкой изображений, а именно плагин позволяет загружать файлы только с латинскими названиями и без пробелов. Файлы с русскими буквами или с пробелами загружает но не отображает. Есть решение? Заранее спасибо!! А вообще отличный плагин !

  29. admin says:

    да поставьте

  30. says:

    Что-то с изображениями случилось — когда добавляешь при создании статьи — внизу превью видна. Когда просматриваешь созданную запись — картинки нет.

    Это может быть связано с тем, что обновил wp до версии 3.0.2? Можно пофиксить как-то?

  31. admin says:

    где вы берете 3.0.2 ? уже зреет 3.1.0 можно ее ставить, а стабильная версия 3.0.17 здесь на сайте по ссылке выше,
    может вы отключили в админке опцию ==применять шаблоны постов== ?
    вот также примеры вывод картинок
    и метаполей
    http://ili.com.ua/wordpress/pro-atachmentyi-i-miniatyuryi.html

  32. egoroff says:

    Спасибо! с фотками разобрался, у меня 3.0.17. А вот по поводу удаления устаревших объявлений – можно ли сделать что бы устаревшие объявления перемещались в другую категорию, которую я например назову «Архив» (не доступный для рядовых пользователей) ? Спасибо!

  33. egoroff says:

    Снимаю свой вопрос, то что мне нужно есть в версии 3.1.0 ))) Интересно, когда эта версия станет официально стабильной. Ну и остался для меня решить вопрос, как можно убрать капчу для уже зарегистрированных пользователей )) Спасибо!

  34. admin says:

    постараюсь учесть это пожелание

  35. says:

    А возможно cделать так что бы объявления размещались не на главную, а просто в рубрику например объявление. И что бы в последних записях не отображались?

  36. admin says:

    читай инструкцию по установке

  37. says:

    Рад Вас приветствовать Админ, начну с того что плагин Ваш расчудесный благодаря чему благополучно работает мой сайт, использую одну из первых версий т.к. она наиболее на мой взгляд подвержена перестроению под мои нужды. Но речь о другом, возможно ли используя за основу платформу Ads WordPress сообразить плагин АУКЦИОНА, чтобы на сайтах WordPress можно было бы изобразить подобие МОЛОТКА РУ, т.е. сайта аукциона. Заинтересован в подобном плагине и жду ответа на имэйл, о цене, думаю договоримся.

  38. admin says:

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

  39. Denis says:

    Версия 3.1 стала понятнее. Ещё бы сделать какой-нибудь способ, чтобы дизайнить вывод ошибок и сообщение о том, что объявление успешно отправлено (положение и вид). Может какой-то тэг добавить в темплейт для этого?

    А ещё хочу добавить иконку вставлять картинки прямо в текст объявления типа тэга [img], в любом форуме такая возможность есть. Картинки с внешних хранилищ типа радикала.

    Кто знает, откуда можно скопировать такой функционал? Ещё бы до кучи добавить тег [video] (тоже просто вставка с внешнего ресурса). Это было бы современно.

  40. admin says:

    посмотрите form_default_template.php там есть пример как вывести ошибку конкретно для каждого поля

  41. says:

    Привет, как сделать чтобы все сообщения появляюлись только в новой странице (page> New Page) буто зделать отделную страницу несвязанную с остольним сайтом в катором будет отоброжатся все обявления и категории ХЕЕЕЛП!!

  42. admin says:

    никак, на статической странице объявления выводиться не будут, для этого есть категории

  43. Denis says:

    Я говорю даже не про отдельные поля, а про переменную $msg и про эти строчки:

    ;
    ;

    может их тоже куда-то в темплейт? Добавить через «<?if"? Неудобно дизайнить сейчас…

    А вот такой ещё вопрос: как в темплейте понять, пользователь редактирует запись или публикует? Как такой if составить? Хочу разный набор кнопок, если редактирует — "сохранить" и "удалить", а если новое объявление — одну кнопку "опубликовать". А то сейчас малость сбивает с толку полный набор кнопок.

  44. Denis says:

    Имелось в виду строки 640-647 из ads_form_class, где выводится

    Ваше сообщение № 76 успешно отредактировано.
    Пароль: 76.fatusgge; Статус: опубликовано

  45. Denis says:

    Спасибо.

    Кстати, там ошибка в _RU.mo в самом частом сообщении:
    «Нерверный код с картинки!»

  46. admin says:

    а хорошо исправим, спасибо

  47. Alex says:

    Здравствуйте. Возник вопрос. У вас на странице добавления объявления

    например

    http://ili.com.ua/napisat-obyavlenie?ads_basecat=27

    вверху над формой идет название текущей рубрики, в которой будет опубликовано объявление (Авто-мото), как такое можно сделать? Если можно попроще, я не программист.
    Спасибо.

  48. sembler says:

    Помогите плиз, как убрать миниатюру (фотку) с главной? Получается что у меня их две оденаковых.

  49. Pavel says:

    Добрый день! подскажите, Юзаю Вашу бету 3.1 и у меня не отображается кнопка «Удалить в корзину» для админов и редакторов, отображается только по паролю. В чем может быть проблема?

  50. admin says:

    ну похоже ваша текущая тема выводит миниатюры, а потом ads-wordpress добавляет миниатюру — поэтому надо либо отредактировать тему либо отредактировать шаблон плагина

Добавить комментарий

Новости

  • Украина впереди планеты всей
  • Рекорды посещаемости Евро 2012!
  • Чудо-изделия украинского мастера
  • Система отопления для дома
  • Соцрасходы — это инвестиции
  • Строительный бум в Украине
  • Сборную Украины подвел судья
  • Комментарии


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

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

    Объявления

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

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

    Счетчики