Новости Joomla

Вышли релизы Joomla 6.1 и Joomla 5.4.5: новые возможности и стабильность

Релиз Joomla 6.1.0

Проект Joomla! объявил о доступности Joomla 6.1 [Nyota] — новой минорной версии шестой серии, а также о выпуске релиза исправлений ошибок Joomla 5.4.5. Релиз 6.1 приносит ряд долгожданных функций, повышающих удобство управления контентом и защиту от спама.

👩‍💻 Компонент "CS Афиши" для Joomla.

👩‍💻 Компонент "CS Афиши" для Joomla.

Расширение "CS Афиши" позволяет выводить список мероприятий, фильтровать их по датам, поиск по заголовкам и описанию.

В состав пакета расширений входят:
- Компонент "CS Афиши"
- Модуль "Календарь событий"
- Модуль "Предстоящие события"
- Библиотека "ImgResize"

Расширение "CS Афиши" позволяет выводить список мероприятий, фильтровать их по датам, поиск по заголовкам и описанию.

Модуль "Календарь событий" отображает предстоящие и прошедшие мероприятие на календаре, с отображением мероприятий на конкретную дату во всплывающем окне.

Модуль "Предстоящие события" показывает список предстоящий событий по порядку их наступления.

P.S. Расширение платное, но плата символическая, чисто для отработки приема платежей. Ключи без ограничения по времени, купившие сейчас - смогут обновляться без ограничений.

Разработчик - участник нашего сообщества Дмитрий Денисов (@codersite).

Страница расширения
Демо

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

super111

  • Осваиваюсь на форуме
  • 36
  • 0 / 1
Ребят всем привет.
 А теперь к сути:
Нужно добавить еще одну позицию в шаблон объявления. По умолчанию есть 6 позиций:

1) top.
2) subtitle.
3) description.
4) description2.
5) contact.
6) description3.
как добавить есче одну после description2.

Вот код:
Код
<?php
// Check to ensure this file is within the rest of the framework
defined('JPATH_BASE') or die();

$conf= $this->conf;

$document = JFactory::getDocument();
if ($conf->metadata_mode != 'nometadata') {
$document->setMetaData("description", $this->content->metadata_description);
$document->setMetaData("keywords", $this->content->metadata_keywords);
}
?>
<?php if ($conf->display_inner_pathway == 1) { ?>
<div class="adsmanager_pathway">
<?php
$pathway ="";
$nb = count($this->pathlist);
for ($i = $nb - 1 ; $i >0;$i--)
{
$pathway .= '<a href="'.$this->pathlist[$i]->link.'">'.$this->pathlist[$i]->text.'</a>';
$pathway .= ' <img src="'.$this->baseurl.'components/com_adsmanager/images/arrow.png" alt="arrow" /> ';
}
$pathway .= '<a href="'.$this->pathlist[0]->link.'">'.$this->pathlist[0]->text.'</a>';
echo $pathway;

if (function_exists('getContentClass'))
$classcontent = getContentClass($this->content,"details");
else
$classcontent = "";
?>  
</div>
<?php } ?>
<?php echo $this->content->event->onContentBeforeDisplay; ?>
<div class="<?php echo $classcontent;?> addetails">
<h1 style="font-size: 14px;">
<?php
if (isset($this->fDisplay[1]))
{
foreach($this->fDisplay[1] as $field)
{
$c = $this->field->showFieldValue($this->content,$field);
if ($c != "") {
$title = $this->field->showFieldTitle(@$this->content->catid,$field);
if ($title != "")
echo htmlspecialchars($title).": ";
echo "$c ";
}
}
} ?>
</h1>
<?php echo $this->content->event->onContentAfterTitle; ?>
<div style= "border-bottom: 1px solid #3fa5c3; margin-bottom: 10px;">
<?php
if ($this->content->userid != 0)
{
echo JText::_('ADSMANAGER_SHOW_OTHERS');
if ($conf->comprofiler == 3) {
  $target = TRoute::_("index.php?option=com_community&view=profile&userid=".$this->content->userid);
}
else if (COMMUNITY_BUILDER_ADSTAB == 1)
   {
$target = TRoute::_("index.php?option=com_comprofiler&task=userProfile&tab=AdsManagerTab&user=".$this->content->userid);
}
   else
   {
$target = TRoute::_("index.php?option=com_adsmanager&view=list&user=".$this->content->userid);
   }
   
   if ($conf->display_fullname == 1)
echo "<a href='$target'><b>".$this->content->fullname."</b></a>";
else
echo "<a href='$target'><b>".$this->content->user."</b></a>";

if ($this->userid == $this->content->userid) {
?>
<div>
<?php
$target = TRoute::_("index.php?option=com_adsmanager&task=write&catid=".$this->content->category."&id=".$this->content->id);
echo "<a href='".$target."'>".JText::_('ADSMANAGER_CONTENT_EDIT')."</a>";
echo "&nbsp;";
$target = TRoute::_("index.php?option=com_adsmanager&task=delete&catid=".$this->content->category."&id=".$this->content->id);
echo "<a href='".$target."'>".JText::_('ADSMANAGER_CONTENT_DELETE')."</a>";
?>
</div>
<?php
}
}
?>
</div>
<div class="addetails_topright">
<?php $strtitle = "";if (@$this->positions[3]->title) {$strtitle = JText::_($this->positions[3]->title); } ?>
<?php if (@$strtitle != "") echo "<h2>".@$strtitle."</h2>";
if (isset($this->fDisplay[4]))
{
foreach($this->fDisplay[4] as $field)
{
$c = $this->field->showFieldValue($this->content,$field);
if ($c != "") {
$title = $this->field->showFieldTitle(@$this->content->catid,$field);
if ($title != "")
echo htmlspecialchars($title).": ";
echo "$c<br/>";
}
}
}?>
</div>
<div class="addetailsmain" style= "border-bottom: 1px solid #3fa5c3;">
<div class="adsmanager_ads_body">
<div class="adsmanager_ads_desc">
<?php $strtitle = "";if (@$this->positions[2]->title) {$strtitle = JText::_($this->positions[2]->title);} ?>
<?php echo "<h2 style='font-size: 14px; font-family: Trebuchet MS; font-weight: bold; border-bottom: 1px solid #ccc; width: 300px;'>".@$strtitle."</h2>";
if (isset($this->fDisplay[3]))
{
foreach($this->fDisplay[3] as $field)
{
$c = $this->field->showFieldValue($this->content,$field);
if ($c != "") {
$title = $this->field->showFieldTitle(@$this->content->catid,$field);
if ($title != "")
echo "<strong>".htmlspecialchars($title).":</strong><br />";
echo "$c<br/>";
}
}
} ?>
</div>
<div class="adsmanager_ads_price">
<?php $strtitle = "";if (@$this->positions[1]->title) {$strtitle = JText::_($this->positions[1]->title);} ?>
<?php echo "<b>".@$strtitle."</b>";
if (isset($this->fDisplay[2]))
{
foreach($this->fDisplay[2] as $field)
{
$c = $this->field->showFieldValue($this->content,$field);
if ($c != "") {
$title = $this->field->showFieldTitle(@$this->content->catid,$field);
if ($title != "")
echo "<strong>".htmlspecialchars($title).": </strong>";
echo "$c<br/>";
}
}
}
?>
</div>
<div class="adsmanager_ads_desc" style= "border: 1px solid #3fa5c3;">
<?php $strtitle = "";if (@$this->positions[5]->title) {$strtitle = JText::_($this->positions[5]->title);} ?>
<?php echo "<h2 style='font-size: 14px; font-family: Trebuchet MS; font-weight: bold; border-bottom: 1px solid #ccc; width: 300px;'>".@$strtitle."</h2>";
if (isset($this->fDisplay[6]))
{
foreach($this->fDisplay[6] as $field)
{
$c = $this->field->showFieldValue($this->content,$field);
if ($c != "") {
$title = $this->field->showFieldTitle(@$this->content->catid,$field);
if ($title != "")
echo "<strong>".htmlspecialchars($title).":</strong><br />";
echo "$c<br/>";
}
}
} ?>
</div>
<div class="adsmanager_ads_contact">
<?php $strtitle = "";if (@$this->positions[4]->title) {$strtitle = JText::_($this->positions[4]->title);} ?>
<?php echo "<h2 style='font-size: 14px; font-family: Trebuchet MS; font-weight: bold; border-bottom: 1px solid #ccc; width: 300px;'>".@$strtitle."</h2>";
if (($this->userid != 0)||($conf->show_contact == 0)) {
if (isset($this->fDisplay[5]))
{
foreach($this->fDisplay[5] as $field)
{
$c = $this->field->showFieldValue($this->content,$field);
if ($c != "") {
$title = $this->field->showFieldTitle(@$this->content->catid,$field);
if ($title != "")
echo "<strong>".htmlspecialchars($title).": </strong>";
echo "$c<br/>";
}
}
}
if (($this->content->userid != 0)&&($conf->allow_contact_by_pms == 1))
{
if ($conf->display_fullname == 1)
$pmsText= sprintf(JText::_('ADSMANAGER_PMS_FORM'),$this->content->fullname);
else
$pmsText= sprintf(JText::_('ADSMANAGER_PMS_FORM'),$this->content->user);
$pmsForm = TRoute::_("index.php?option=com_uddeim&task=new&recip=".$this->content->userid);
echo '<a href="'.$pmsForm.'">'.$pmsText.'</a><br />';
}
}
else
{
echo JText::_('ADSMANAGER_CONTACT_NOT_LOGGED');
}
?>
</div>
   </div>
<div class="adsmanager_ads_image">
<?php
$this->loadScriptImage($this->conf->image_display);
if (count($this->content->images) == 0)
$image_found = 0;
else
$image_found = 1;
foreach($this->content->images as $img)
{
$thumbnail = JURI::base()."images/com_adsmanager/ads/".$img->thumbnail;
$image = JURI::base()."images/com_adsmanager/ads/".$img->image;
switch($this->conf->image_display)
   {
case 'popup':
echo "<a href=\"javascript:popup('$image');\"><img src='".$thumbnail."' alt='".htmlspecialchars($this->content->ad_headline)."' /></a>";
break;
case 'lightbox':
case 'lytebox':
echo "<a href='".$image."' rel='lytebox[roadtrip".$this->content->id."]'><img src='".$thumbnail."' alt='".htmlspecialchars($this->content->ad_headline)."' /></a>";
break;
case 'highslide':
echo "<a id='thumb".$this->content->id."' class='highslide' onclick='return hs.expand (this)' href='".$image."'><img src='".$thumbnail."' alt='".htmlspecialchars($this->content->ad_headline)."' /></a>";
break;
case 'default':
default:
echo "<a href='".$image."' target='_blank'><img src='".$thumbnail."' alt='".htmlspecialchars($this->content->ad_headline)."' /></a>";
break;
}
}
if (($image_found == 0)&&($conf->nb_images >  0))
{
echo '<img align="center" src="'.ADSMANAGER_NOPIC_IMG.'" alt="nopic" />';
}
?>
</div>
<div class="adsmanager_spacer"></div>
</div>
</div>
<?php echo $this->content->event->onContentAfterDisplay; ?>
<div class="back_button">
<a href='javascript:history.go(-1)'>
<?php echo JText::_('ADSMANAGER_BACK_TEXT'); ?>
</a>
</div>
« Последнее редактирование: 26.08.2013, 20:51:18 от super111 »
*

Vitek23

  • Осваиваюсь на форуме
  • 10
  • 0 / 1
Не кто не добавлял?
*

SANR

  • Осваиваюсь на форуме
  • 23
  • 7 / 0
В чем проблема?
В шаблоне очень хорошо видно как вставляются позиции...
Добавляем в таблицу adsmanager_positions новую позицию.
После чего просто продублируйте код там где хотите вывести данную позицию с заменой id на id новой позиции что вы добавили в табличку  adsmanager_positions.
Ну и в языковые файлы **-**.com_adsmanager.ini добавьте
Пример.
ADSMANAGER_POSITION_DESCRIPTION777="Description"

"ADSMANAGER_POSITION_DESCRIPTION777"  title новой позиции что ранее была добавлена в таблицу adsmanager_positions.

Данный вопрос уже поднимался пользуйтесь поиском.
*

super111

  • Осваиваюсь на форуме
  • 36
  • 0 / 1
Я начинающий создатель сайтов))))) так что не судите строго.
Все понятно кроме одного:
Добавляем в таблицу adsmanager_positions новую позицию. - где находится таблица. (извеняюсь заранее если вопрос тупой) Именно в этом и была загвоздка.))
В поиске раз пятьсот все обыскал но не нашел темы где это уже обсуждали.
Прекрастно понимаю как относятся к новичкам, типа за вас все нодо сделать и т.д., поэтому пишу в случае крайней необходимости когда совсем в тупике и обязательно пользуюсь поиском.
*

super111

  • Осваиваюсь на форуме
  • 36
  • 0 / 1
Ребят теперь все раскажу, для таких же тупорезов как и я.
И так нам понадобятся следующие файлы:

1) administrator\components\com_adsmanager\install.sql
 Ищем код идобавляем к примеру, то что выделенно красным:
Код
INSERT IGNORE INTO `#__adsmanager_positions` VALUES (1, 'top', 'ADSMANAGER_POSITION_TOP');	
INSERT IGNORE INTO `#__adsmanager_positions` VALUES (2, 'subtitle', 'ADSMANAGER_POSITION_SUBTITLE');
INSERT IGNORE INTO `#__adsmanager_positions` VALUES (3, 'description', 'ADSMANAGER_POSITION_DESCRIPTION');
INSERT IGNORE INTO `#__adsmanager_positions` VALUES (4, 'description2', 'ADSMANAGER_POSITION_DESCRIPTION2');
INSERT IGNORE INTO `#__adsmanager_positions` VALUES (5, 'contact', 'ADSMANAGER_POSITION_CONTACT');
INSERT IGNORE INTO `#__adsmanager_positions` VALUES (6, 'description3', 'ADSMANAGER_POSITION_DESCRIPTION3');
[color=red]INSERT IGNORE INTO `#__adsmanager_positions` VALUES (7, 'description4', 'ADSMANAGER_POSITION_DESCRIPTION4');[/color]

2) administrator\components\com_adsmanager\install.adsmanager.php
 Ищем код идобавляем к примеру, то что выделенно красным:
Код
$sql = " INSERT IGNORE INTO `#__adsmanager_positions` (`id`,`name`,`title`) VALUES "
. " (1, 'top', 'ADSMANAGER_POSITION_TOP'),"
. " (2, 'subtitle', 'ADSMANAGER_POSITION_SUBTITLE'),"
. " (3, 'description', 'ADSMANAGER_POSITION_DESCRIPTION'),"
. " (4, 'description2', 'ADSMANAGER_POSITION_DESCRIPTION2'),"
. " (5, 'contact', 'ADSMANAGER_POSITION_CONTACT');";
[color=red]. " (7, 'description4', 'ADSMANAGER_POSITION_DESCRIPTION4'),"[/color]
3) language\en-GB\en-GB.com_adsmanager.ini
 Ищем код идобавляем к примеру, то что выделенно красным:
Код
ADSMANAGER_POSITION_CONTACT="Контакты"
[color=red]ADSMANAGER_POSITION_DESCRIPTION4=" Здесь можете вписать свое название "[/color]
4) components\com_adsmanager\views\details\tmpl\default.php
Копируем уже выводимую функцию, вставляем в нужное место в коде и меняем Id и позицию.

Далее идем в базу у меня на локе путь: http://localhost/tools/phpmyadmin/
находим базу adsmanager_position и добавляем строку ADSMANAGER_POSITION_DESCRIPTION4 с id 7 и с  именем DESCRIPTION4.

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

[Решено]Дублирования ссылки "объвления" в breadcrumb, в компоненте AdsManager

Автор nicklas

Ответов: 4
Просмотров: 7052
Последний ответ 25.04.2024, 23:13:18
от Rinat abzyi
Редактировать все объявления

Автор den_ko

Ответов: 32
Просмотров: 15263
Последний ответ 25.11.2021, 10:43:38
от FlexNL
Слетают категории объявления

Автор guardnext

Ответов: 1
Просмотров: 4920
Последний ответ 09.07.2019, 10:10:59
от guardnext
AdsManger не удаляет объявления

Автор kozhenevsky

Ответов: 0
Просмотров: 2441
Последний ответ 15.02.2018, 12:08:29
от kozhenevsky
Лечим кнопку "Delete from favorites" на странице объявления. AdsManager 3.1.11

Автор Mick_20

Ответов: 1
Просмотров: 2583
Последний ответ 24.12.2017, 22:28:14
от vadim73