Как добавить дополнительное (новое) поле?

  • 48 Ответов
  • 19161 Просмотров

0 Пользователей и 1 Гость просматривают эту тему.

*

Оффлайн vasya1

Привет!
Скажите, какую строчку надо удалить в каком файле, что бы отключить проверку на валидность емейла и адреса сайта?
Или как добавить новое поле?
Компонент отличный, но так хочется расширить его ещё парой полей.
« Последнее редактирование: 16.07.2009, 19:27:24 от vasya1 »

*

Оффлайн smart

  • *******
  • 6856
  • [+]1311 / [-]14
  • Пол: Мужской
  • снова дома...
    • Просмотр профиля
    • Новости Joomla на русском
Обалдеть, это оказывается я инструкцию делал, вот только хоть убейте я не помню, почему не опубликовал:

Как добавить дополнительное поле в JComments

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

*

Оффлайн vasya1

smart, спасибо, всё сделал. Прекрасно работает!

*

Оффлайн Atmos

В версии 2.1.0.0. кусок инструкции
<span class="comment-date"><?php echo date'Y-m-d H:i'$comment->datetime); ?></span> не находится.
Больше подходит
<span class="comment-date"><?php echo JCommentsText::formatDate($comment->datetimeJText::_('DATETIME_FORMAT')); ?></span>
Кстати, если переходить по окнам с помощью Tab, то созданное окно пропускается.

UPD: Не знаю, связано с этим то, что при нажатии "Отправить" обнуляется поле комментария, обновляется капча, но коммент не публикуется (форма не исчезает), да и через админку коммента нет. Без этой фичи с новыми полями тестить не пробовал, поэтому не знаю, что винить. Постил на Денвере, Joomla 1.5.14.
« Последнее редактирование: 28.08.2009, 00:11:15 от Atmos »

*

Оффлайн profii

smart, а почему нельзя сразу сделать дополнительные поля, и что б при отсутствии надобности их можно было бы отключить?

*

Оффлайн smart

  • *******
  • 6856
  • [+]1311 / [-]14
  • Пол: Мужской
  • снова дома...
    • Просмотр профиля
    • Новости Joomla на русском
Больше подходит
<span class="comment-date"><?php echo JCommentsText::formatDate($comment->datetimeJText::_('DATETIME_FORMAT')); ?></span>
ну да, в новой версии так и есть... но это ведь непринципиально, где именно выводить данные - данный этап не критичен - вот все что перед этим описано - оно влияет на корректность заполнения формы, сохранения, а этот шаг ваше личное дело, хотите выводите это поле, хотите не выводите - всякие ведь задачи бывают.

smart, а почему нельзя сразу сделать дополнительные поля, и что б при отсутствии надобности их можно было бы отключить?
ну потому что они в 90% нафиг не нужны, зачем мне писать лишний код, добавлять в компонент лишнюю логику, когда подавляющему большинству пользователей это не нужно? я регулярно просматриваю сайты где установлен компонент, и поверьте, что в подавляющем большинстве случаев используется оригинальный компонент без каких-либо правок.

*

Оффлайн olaf

То что добавленные поля из базы не показывает не может быть связано с конфликтом с joostin-ой (проверял на версиях 1.1.3 и 1.2)? Те кто проверял, на чем проверяли?
Нет с joostin-ой не связано проверил на Joomla 1.015... Может именно сборка  JComments 2.1.0.0  [07/08/2009] так себя ведет?
« Последнее редактирование: 13.01.2010, 10:49:49 от olaf »

*

Оффлайн olaf

Понятия не имею, серьезно... я сделал модификацию, описал инструкцию, проверил - у меня все работает. Ее проверили как минимум еще 3-е человек - тоже все работает. Почему у вас не получилось - не знаю, разбирайтесь. Проверьте все ли шаги выполнены.
Разобрался! Все работает, если в настройках вида указан "плоский" список. Если "древовидный", то показ отменяется. Ну и несколько вопросов:
1) как показать добавленные поля в древовидном списке,
2) как их увидеть в Админцентре,
3) как можно сделать добавленное поле обязательным или обязательным для гостей и видимым для гостей в форме, но невидимым при просмотре комментариев.

Здравствуйте!
Прочитал статью Как добавить дополнительное поле в JComments, подскажите пожалуйста, в файле jcomments.php нет строки $query = "SELECT c.id, c.object_id, c.object_group, c.userid, c.name, c.username, c.title, c.comment"у меня в этом файле только строка $query = "SELECT DISTINCTROW `name`, `email`, `hash`" и соответственно в отображаемых отзывах не отображаются дополнительные поля.

*

Оффлайн smart

  • *******
  • 6856
  • [+]1311 / [-]14
  • Пол: Мужской
  • снова дома...
    • Просмотр профиля
    • Новости Joomla на русском
В JComments 2.2 запросы перенесены в файл /components/com_jcomments/model/jcomments.php

*

Оффлайн Puzo

Такой вопрос.

Добавил поле город - удачно, все получилось.
Но хотелось бы сделать чтобы было в комментариях, Имя, г.Омск ( т.е вопрос в том  как добавить эту запятую и г. , ну или вообще что нибудь, какой нибудь знак препинания, чтобы хоть как то разделялось  ::) )
а то на данный момент имя и сразу название города.

^-^

и еще.

форму добавлял по инструкции на сайте JoomlaTune, там было поле Town
я так понимаю, чтобы отображалось не слово Town, а Город, нужно прописать в ru-RU.com_jcomments.ini
А вот что прописать? и как правильно ?

« Последнее редактирование: 28.01.2011, 15:18:51 от Puzo »

*

Оффлайн smart

  • *******
  • 6856
  • [+]1311 / [-]14
  • Пол: Мужской
  • снова дома...
    • Просмотр профиля
    • Новости Joomla на русском
1. А в чем проблема? Замените в /components/com_jcomments/tpl/default/tpl_comment.php:
Код: (php) [Выделить]
<span class="comment-author"><?php echo $comment->author?></span>на
Код: (php) [Выделить]
<span class="comment-author"><?php echo $comment->author?></span>, г.<?php echo $comment->town;?>&nbsp;
При этом обратите внимание, что файл надо сохранить в кодировке utf-8.

2. Добавьте строчку:
Код: (php) [Выделить]
TOWN=Город
При этом обратите внимание, что файл так же надо сохранить в кодировке utf-8.
« Последнее редактирование: 28.01.2011, 17:47:30 от smart »

*

Оффлайн Puzo

Все получилось, только теперь город "липнет" к дате  (Имя, г.ОмскДата)
Как между ними пару пробелов поставить

извиняюсь за свою неграмотность

*

Оффлайн smart

  • *******
  • 6856
  • [+]1311 / [-]14
  • Пол: Мужской
  • снова дома...
    • Просмотр профиля
    • Новости Joomla на русском
Я поправил свое предыдущее сообщение, добавил &nbsp;

*

Оффлайн Puzo


2. Добавьте строчку:
Код: (php) [Выделить]
TOWN=Город
При этом обратите внимание, что файл так же надо сохранить в кодировке utf-8.

Пишу в  ru-RU.com_jcomments.ini   в   # comments form

FORM_TOWN=Город  или просто TOWN=Город

не помогает ни 1й ни 2й вариант.  :(

и еще, что прописать чтобы это поле было обязательным (т.е чтобы если это поле не заполнишь то коммент не добавится)
« Последнее редактирование: 28.01.2011, 23:52:02 от Puzo »

*

Оффлайн smart

  • *******
  • 6856
  • [+]1311 / [-]14
  • Пол: Мужской
  • снова дома...
    • Просмотр профиля
    • Новости Joomla на русском
Я не обратил внимания, что в статье текст написан без учета локализации. Замените:
Код: (php) [Выделить]
<label for="comments-form-town">Town</label>на
Код: (php) [Выделить]
<label for="comments-form-town"><?php echo JText::_("Town");?></label>
И после этого в языковой файл впишите перевод, как я указал ранее.
Что касается всяких там дополнительных проверок, это уже надо в коде компонента реализовывать. В двух словах не объяснить. Появится время - допишу статью.
« Последнее редактирование: 29.01.2011, 16:57:21 от smart »

*

Оффлайн SDKiller

  • ******
  • 2748
  • [+]325 / [-]5
  • Пол: Мужской
  • ...ergo sum
    • Просмотр профиля
    • Jexy.ru
<?php echo JText:: ...

*

Оффлайн Puzo

Спасибо.
Заработало.

*

Оффлайн Garyk01

Обалдеть, это оказывается я инструкцию делал, вот только хоть убейте я не помню, почему не опубликовал:

Как добавить дополнительное поле в JComments

p.s. так может и паранойя развиться - я начал думать, а сколько еще у меня таких статей не опубликованных нигде есть...
Правильно ли я понял, что инструкция немного устарела?
В jcomments.class.php (v2.3.0)не нашел класс JCommentsDB.

*

Оффлайн jurassik

Обалдеть, это оказывается я инструкцию делал, вот только хоть убейте я не помню, почему не опубликовал:
Как добавить дополнительное поле в JComments
а как сделать доп.поле обязательным для заполнения?
сам шучу - сам смеюсь

*

Оффлайн smart

  • *******
  • 6856
  • [+]1311 / [-]14
  • Пол: Мужской
  • снова дома...
    • Просмотр профиля
    • Новости Joomla на русском
а как сделать доп.поле обязательным для заполнения?
Ну можно по образу и подобию проверок станрдартных полей... Мне кажется там все вполне прозрачно для понимания.

*

Оффлайн Kakkoc

Подскажите, вот я добавил 2 новых поля "Город" и "Страна" по инструкции, а как теперь эти поля в админке добавить, хотябы в раздел "Редактирование комментария"?

Нашел только в этом файле вывод самих полей:
/administrator/components/com_jcomments/admin.jcomments.html.php

Сделал похожие поля как у Имени, но в них ничего не выводиться, и темболее в БД не записуется.

Заранее спасибО!

UP: Все разобрался, вопрос снимаеться!!
« Последнее редактирование: 26.06.2013, 23:06:48 от Kakkoc »

*

Оффлайн css_ufa

Скажите пожалуйста, как сделать чтобы в админке в разделе "Форма добавления комментариев" можно было реализовать чтобы доп. поле выводилось Отключено, Необязательное или Обязательное для гостей. -РЕШЕНО

Пункт 2. Открываем файл jcomments.class.php и добавляем данные поля в класс JCommentsDB, например после строчки.

Данный файл находится в папке tables? Файлы comment.php и blacklist.php? - Ответ "Да"
« Последнее редактирование: 05.07.2013, 18:19:55 от css_ufa »
Всё что не делается, всё к лучшему (с). Так говорили великии люди.

*

Оффлайн css_ufa

Подскажите, вот я добавил 2 новых поля "Город" и "Страна" по инструкции, а как теперь эти поля в админке добавить, хотябы в раздел "Редактирование комментария"?

Нашел только в этом файле вывод самих полей:
/administrator/components/com_jcomments/admin.jcomments.html.php

Сделал похожие поля как у Имени, но в них ничего не выводиться, и темболее в БД не записуется.

Заранее спасибО!

UP: Все разобрался, вопрос снимаеться!!
Что ты сделал, чтобы в БД запись шла?
Всё что не делается, всё к лучшему (с). Так говорили великии люди.

*

Оффлайн avantyrist

Добавил и я ети дополнительные поля
<textarea id="comments-form-comment-plusi" name="Plusi"></textarea>
 Вот только проблема с ними:(

Когда в ети поля вписываеш текст,  и потом нажимаеш отправить, то текс не сбрасывается (ето очень критично). Если пользователь захочет написать ешё одно сообщение на етой же страницы, без перезагрузки, то автоматически текст с дополнительных полей добавиться в его сообщение. Как сделать сброс как в поле:
<textarea id="comments-form-comment" name="comment" cols="65" rows="8" tabindex="5" class=""></textarea>
Но чтобы ети поля были не обязательными для заполнения!

Уже уйму времени просидел с етой проблемой, искал по подобию  поля 'comment' Но безрезультатно :(
Помогите пожалуйста !!

*

Оффлайн avantyrist

Я поражаюсь сам себе, неделю ковыряюсь с Дополнительными полями, только щас увидел - невидимое О_о
Надеюсь пригодится кому то, сэкономит время
в файле    jcomments-v2.3.js
Ищем:
case 'comment':if(this.editor!=null){this.editor.clear();}break;
После него вставляем свое поле:
case 'MoePole':if(this.editor!=null){this.editor.clear();}break;

*

Оффлайн ft990

Добавляем новые поля в таблицу jos_jcomments следующими SQL-запросами:

Подскажите, как это добавить?

Открываю phpMyAdmin, нахожу в списке jos_jcomments, открываю, а дальше куда добавлять?
Или все не так?

подскажите, пожалуйста.

*

Оффлайн ft990

В базе данных есть jos_component, jos_contact_details, jos_categories и т.д. jos_jcomments нет. Может такое быть, подскажите, а?

*

Оффлайн smart

  • *******
  • 6856
  • [+]1311 / [-]14
  • Пол: Мужской
  • снова дома...
    • Просмотр профиля
    • Новости Joomla на русском
u]jos_jcomments нет.[/u] Может такое быть, подскажите, а?
Вполне, если у вас нет этого компонента.

*

Оффлайн ft990

Вполне, если у вас нет этого компонента.


Есть, все работает. И работает хорошо. Может не там смотрю. Я открываю phpMyAdmin и смотрю на список, у меня слева в колонке. Правильно?