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

p.slavik

  • Захожу иногда
  • 71
  • 8 / 0
  • В неволе, блин...
На форуме поддержки компонента обнаружил мануал по добавлению дополнительных полей, думаю, будет полезно не только мне.

Автор: yarivtubul
Источник: http://dj-extensions.com/
Перевод: p.slavik

Прежде чем я начну, отмечу, что данное учебное руководство основано на советах пользователя dontysk.
ОК, предположим, мы хотим добавить в наши объявления поле телефонного номера, названное 'phone'.
Для этого мы должны внести изменения в базу данных, бэкэнд и фронтэнд.

Шаг 1 — База данных.

Найдите таблицу jos_djcf_items в Вашей базе данных. Для этого я использую  phpMyAdmin. В структуре таблицы Вы найдёте все существующие поля, здесь же необходимо добавить поле 'phone'. Убедитесь, что Вы правильно определили кодировку и другие параметры.

Шаг 2 — Бэкэнд.

Шаг 2.1 — папка 'tables'.

Откройте файл: /public_html/administrator/components/com_djclassifieds/tables/items.php
Сразу после строки 45 -
Код
var $intro_desc = null; 
добавьте следующее:
Код
var $phone = null;

Шаг 2.2 — папка 'views'.

Откройте  в редакторе файл: /public_html/administrator/components/com_djclassifieds/views/edititem/tmpl/default.php
Сразу после строки 120, после части "intro_desc" , добавьте следующее:

Код
<tr> 
<td width="100" align="right" class="key">
<?php echo JText::_('PHONE');?>
</td>
<td>
<?php //echo $editor->display( 'phone', $this->nl->phone, '100%', '100', '40', '10',false );
?>
<textarea id="phone" name="phone" rows="2" cols="20" class="inputbox"><?php echo $this->nl->phone; ?></textarea>
</td>
</tr>

Шаг 3 — Фронтэнд.

Шаг 3.1.1 — папка Views/AddItem

Откройте в редакторе файл: /public_html/components/com_djclassifieds/views/additem/tmpl/default.php
После строки 101 добавьте следующее:

Код
<tr>
<td width="100" align="right" class="label"><?php echo JText::_('phone');?><div id="ile">(10)</div>
</td>
<td><textarea id="phone" name="phone" rows="1" cols="10" class="inputbox" onkeyup="checkt();" onkeydown="checkt();"><?php echo $this->nl->phone; ?></textarea>
</td>
</tr>

Шаг 3.1.2 — Views/AddItem

В этом же файле, в alert разделе, после строки 230 добавьте:

Код
}else if(document.getElementById("phone").value==''){ 
alert("<?php echo JText::_('Please enter a phone number');?>");

Шаг 3.2 — папка Views/ShowItem.

Откройте в редакторе файл:
/public_html/components/com_djclassifieds/views/showitem/tmpl/default.php

После строки 84 добавьте:

Код
<div class="row"> 
<span><?php echo JText::_('PHONE'); ?><?php echo $i->phone;?></span>
</div>

Шаг 4 — добавление Jtext тэгов в языковые файлы.
Бэкэнд  - /public_html/administrator/language/en-GB/en-GB.com_djclassifieds.ini
Фронтэнд - /public_html/language/en-GB/en-GB.com_djclassifieds.ini
Не забываем сохранять в UTF-8.
Добавьте в эти, а также во все другие языковые файлы, после строки:
SHORT_DESCRIPTION=Description
строку:
PHONE=phone

Вот и всё!
Наслаждайтесь.
Yariv
« Последнее редактирование: 08.11.2010, 23:16:21 от p.slavik »
*

klop5

  • Осваиваюсь на форуме
  • 36
  • 1 / 0
Слушайте, все сделал по инструкции, а как теперь сделать что бы телефон отображался в обьявлениях?
*

p.slavik

  • Захожу иногда
  • 71
  • 8 / 0
  • В неволе, блин...
Слушайте, все сделал по инструкции, а как теперь сделать что бы телефон отображался в обьявлениях?
Шаг 3.2 (последний) как раз добавляет строку "Phone" в шаблон отображения объявления. Посмотрите ещё раз всё внимательно - всё ли сделали правильно. Номера строк могут несколько отличаться - то есть надо просто по коду ориентироваться. Но там вроде всё понятно. У меня с добавлением доп. полей проблем не возникло - всё работает. Ну и само-собой кэш стоит почистить, после внесения изменений...
*

klop5

  • Осваиваюсь на форуме
  • 36
  • 1 / 0
Да, спасибо! нашел проблему.
Я еще добавил отображение телефона, там где отображаются категории и под ними объявления.

В файл default.php в папке public_html/components/com_djclassifieds/views/show/tmpl
Нужно добавить
Код
<th>
<?php if($order=="phone"){$class="active";}else{$class="normal";}?><a class="<?php echo $class; ?>" href="index.php?option=com_djclassifieds&view=show&cid=<?php echo $main_id; ?>&order=phone<?php if($sw){ echo '&search='.$sw; }?>"><?php echo JText::_('phone');?>
</a>
</th>

Будет выглядеть вот так
Код
<table class="dj-items" width="100%">
<tr class="main_title">
<th colspan="2" class="name">
<?php if($order=="name"){$class="active";}else{$class="normal";}?><a class="<?php echo $class; ?>" href="index.php?option=com_djclassifieds&view=show&cid=<?php echo $main_id; ?>&order=title<?php if($sw){ echo '&search='.$sw; }?>"><?php echo JText::_('Title');?></a>
</th>
<th>
<?php if($order=="category"){$class="active";}else{$class="normal";}?><a class="<?php echo $class; ?>" href="index.php?option=com_djclassifieds&view=show&cid=<?php echo $main_id; ?>&order=category<?php if($sw){ echo '&search='.$sw; }?>"><?php echo JText::_('Category');?></a>
</th>
<th>
<?php if($order=="description"){$class="active";}else{$class="normal";}?><a class="<?php echo $class; ?>" href="index.php?option=com_djclassifieds&view=show&cid=<?php echo $main_id; ?>&order=description<?php if($sw){ echo '&search='.$sw; }?>"><?php echo JText::_('Description');?></a>
</th>
<th>
<?php if($order=="phone"){$class="active";}else{$class="normal";}?><a class="<?php echo $class; ?>" href="index.php?option=com_djclassifieds&view=show&cid=<?php echo $main_id; ?>&order=phone<?php if($sw){ echo '&search='.$sw; }?>"><?php echo JText::_('phone');?></a>
</th>
<th>
<?php if($order=="date"){$class="active";}else{$class="normal";}?><a class="<?php echo $class; ?>" href="index.php?option=com_djclassifieds&view=show&cid=<?php echo $main_id; ?>&order=date<?php if($sw){ echo '&search='.$sw; }?>"><?php echo JText::_('Added');?></a>
</th>
<th>
<?php if($order=="display"){$class="active";}else{$class="normal";}?><a class="<?php echo $class; ?>" href="index.php?option=com_djclassifieds&view=show&cid=<?php echo $main_id; ?>&order=display<?php if($sw){ echo '&search='.$sw; }?>"><?php echo JText::_('Displayed');?></a>
</th>
</tr>

Еще добавить вот это:
Код
echo '<td class="phone">'.$i->phone.'</td>';

Будет выглядеть вот так:
Код
		echo '</td>';
echo '<td class="name">';
echo '<a class="title" href="index.php?option=com_djclassifieds&view=showitem&cid='.$i->cat_id.'&id='.$i->id.'&Itemid='.$Itemid.'">'.$i->name.'</a>';
echo '</td>';
echo '<td class="cat_name">'.$i->c_name.'</td>';
echo '<td class="description"><a class="title" href="index.php?option=com_djclassifieds&view=showitem&cid='.$i->cat_id.'&id='.$i->id.'&Itemid='.$Itemid.'">'.$i->intro_desc.'</a></td>';
echo '<td class="phone">'.$i->phone.'</td>';
echo '<td class="date_start">'.$i->date_start.'</td>';
echo '<td class="date_exp" align="center">'.$i->display.'</td>';
echo '</tr>';
}

Ну и изменить параметр с 6 на 7
Код
echo '<tr class="row'.$row.'"><td class="pag" colspan="7" >';	  


Думаю понятно написал! ^-^
« Последнее редактирование: 02.01.2011, 10:30:45 от klop5 »
*

swarows

  • Осваиваюсь на форуме
  • 28
  • 0 / 0
вопросик, а как добавить не текстовое поле а выплывающий список?
*

stranger

  • Новичок
  • 1
  • 0 / 0
Имеется сайт http://lv22.ru/. Компонет dj-classifieds был выбран как наиболее приемлемый, но при работе с ним появились некоторые сложности.
1. Если в указании контактов есть кавычки, объявление некорректно отображается на главной
2. Хотелось бы убрать количество просмотров за ненадобностью, а вместо них указывать город. Вышеприведённая схема для этих манипуляций подойдёт?
3. "продавец" исправить на "подал объявление"
Подскажите хотя бы что-то
*

Calal

  • Новичок
  • 1
  • 0 / 0
Is it possible to hide specific areas classified dj hello to visitors
e.g.
Phone:
Please Login to see the phone number, go to sleep.

Is it possible to do so?

Is it possible to do so?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как включить emoji в dj-classifieds?

Автор inkvizitr

Ответов: 0
Просмотров: 70
Последний ответ 09.03.2021, 19:24:36
от inkvizitr
Можно ли в DJ-Classifieds создать несколько адресов для одного объявления?

Автор Kijv

Ответов: 0
Просмотров: 57
Последний ответ 15.02.2021, 11:38:49
от Kijv
Не добавляются фото к объявлениям DJ-Classifieds 3.6.4

Автор spaun0982

Ответов: 6
Просмотров: 1437
Последний ответ 01.02.2021, 15:01:33
от Kijv
Dj-Classifieds - компонент объявлений

Автор Семён

Ответов: 220
Просмотров: 63221
Последний ответ 15.11.2020, 00:53:06
от mirek
DJ-Classifieds скрыть описание

Автор Meridi

Ответов: 0
Просмотров: 251
Последний ответ 13.04.2020, 14:15:00
от Meridi