Новости Joomla

Quantum Manager нужен сообществу, а автору нужна ваша поддержка!

Quantum Manager нужен сообществу, а автору нужна ваша поддержка!Файловый менеджер Quantum — одно...

Файловый менеджер Quantum — одно из самых популярных решений для Joomla, созданное разработчиком из сообщества Joomla, Дмитрием Цымбалом (@tsymbalmitia). Он делает Quantum удобным, безопасным и современным, обновляет его, исправляет уязвимости и отвечает пользователям — всё это в свободное от основной работы время.

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

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

timssky

  • Захожу иногда
  • 330
  • 0 / 0
Есть материал в который каждый день приписывается небольшой новый кусок текста и нужно чтобы этот текст выводился в модуле.

Как реализовать данную функцию ? подскажите пожалуйста


Я так понимаю что между этими кусками нужно делать какой то разрыв, и нужен модуль который отображал бы именно последний добавленный кусок в модуле.

Схематично изобразил:


« Последнее редактирование: 15.06.2013, 13:23:28 от timssky »
*

Pyrk1

  • Захожу иногда
  • 150
  • 10 / 0
Интересная задача, однако. Лично я не могу вспомнить модуля, который из коробки умел делать то, что вам надо. Но его не очень сложно сделать. Я могу предложить два варианта:
1) Если вы хоть немного знаете PHP, то я могу вам кратко описать один из способов реализации этого. Если будут вопросы, то постараюсь на них ответить.
2) Если вы не знаете PHP, то я, как будет свободное время (а оно будет через пару дней), постараюсь вам помочь с написанием этого модуля.
*

Pyrk1

  • Захожу иногда
  • 150
  • 10 / 0
Прошу прощения, что долго. Модуль в приложении, настройки простые. Если что-то непонятно, пишите.
*

timssky

  • Захожу иногда
  • 330
  • 0 / 0
Отличный модуль  ;D

СПАСИБО ТЕБЕ ОГРОМНЕЙШЕЕ  Pyrk1 +


Еще небольшой вопрос, дело в том что у меня фрагментами материала являются небольшие таблицы, они идут одна за другой и в материале это выглядит как одна большая таблица.  Вопрос написан ниже в коде:

Код
<table style="width: 378px; height: 65px;">
<tbody>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
</tbody>
</table>

(что можно  сюда вставить, чтобы оно являлось разделителем, но при этом чтобы между таблицами не было абзаца  (и сам разделитель чтобы не отображался в статье)?

<table style="width: 378px; height: 65px;">
<tbody>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
</tbody>
</table>
*

Pyrk1

  • Захожу иногда
  • 150
  • 10 / 0
Хм, нашел такую особенность, что символы <> нельзя просто так использовать в параметре модуля, по этой причине его слегка доработал, файл в приложении.
В качестве разделителя я бы предложил вам использовать такой код:
Код
<div style="display: none;"> </div>
Вам, при редактировании статьи, необходимо открыть статью в виде кода и вставить этот блок между таблицами. Это неотображаемый блок. Если что-то не получится, то пишите.
*

timssky

  • Захожу иногда
  • 330
  • 0 / 0
Что то не работает
*

Pyrk1

  • Захожу иногда
  • 150
  • 10 / 0
Как именно не работает?
*

timssky

  • Захожу иногда
  • 330
  • 0 / 0
Вставляю код между таблицами, указываю id статьи, а в модуле отображается набор цифр: 43535342423
*

Pyrk1

  • Захожу иногда
  • 150
  • 10 / 0
Прошу прощения, цифры показались из-за того, что я не убрал их в конечной версии. В приложении висит версия без них.
По поводу вывода таблиц: я только что проверил у себя, все работает. На всякий случай привожу пример HTML кода данного материала, его надо вставить в редактор HTML кода при изменении материала.
Спойлер
[свернуть]
*

timssky

  • Захожу иногда
  • 330
  • 0 / 0
Создал материал, вставил указанный выше код в материал (отключив визуальный редактор), сохранил,   
Старый модуль удалил, установил новый (во вложении который),  указал id, статьи, указал позицию модуля и отображение на всех страницах, опубликовал, но модуль отображается пустой, только заголовок. 
*

Pyrk1

  • Захожу иногда
  • 150
  • 10 / 0
Занятно, однако. У меня на тестовом сайте все очень хорошо обрезается. Не могли бы вы дать ссылку на ваш?
*

timssky

  • Захожу иногда
  • 330
  • 0 / 0
Я 2 сайта на денвере сейчас делаю, на обоих прбывал не работает, есть один не доработанный  сайт туда установил тоже не работает, вот ссылка:
http://www.vizo45.ru/index.php/fotograf.html (модуль внизу страницы)
*

Pyrk1

  • Захожу иногда
  • 150
  • 10 / 0
Кстати, вы не разделяете текст материала на вступительную и основную часть?
*

timssky

  • Захожу иногда
  • 330
  • 0 / 0
Не зная PHP, сам случайно нашел ошибку, убрал и все заработало

Код
<?php
  
defined('_JEXEC') or die;

$separator = '<div style="display: none;">В </div>';  (зачем здесь  В ?)

$db =& JFactory::getDBO();
$id = $params->get("article_id");
$q="SELECT introtext FROM #__content WHERE `id` = $id";
$db->setQuery($q);
$article_text = $db->loadResult();
$article_text = substr ($article_text, 0 , strpos ( $article_text , $separator ) );

echo $article_text;
?>
« Последнее редактирование: 22.06.2013, 21:58:15 от timssky »
*

timssky

  • Захожу иногда
  • 330
  • 0 / 0
Еще бы сделать чтобы ниже выводимого фрагмента была ссылка на полную статью (кнопка подробнее)

В общем  как то нужно вставить вот этот HTML код:

<p style="text-align: center;"><a href="ссылка на полную статью, (по указанному в модуле ID)"><img onmouseover="this.src='images/Knopki/podrobnee_2';" onmouseout="this.src='images/Knopki/podrobnee_1'';" src="images/Knopki/podrobnee_1'" /></a></p>
*

Pyrk1

  • Захожу иногда
  • 150
  • 10 / 0
Хм, каким-то образом этот символ попал в разделитель, но хорошо, что вы его нашли.
Для того, чтобы вставить ссылку, добавьте в код строку в нужном вам месте.
Код
echo "<p style=\"text-align: center;\"><a href =\"index.php?option=com_content&view=article&id=$id\"><img onmouseover=\"this.src='images/Knopki/podrobnee_2';\" onmouseout=\"this.src='images/Knopki/podrobnee_1'';\" src=\"images/Knopki/podrobnee_1'\" /></a></p>";
Символы \ нужны для экранирования кавычек, так как при отсутствии экранирования первая кавычка будет принята за окончание строки.
Например, код модуля может выглядеть вот так:
Спойлер
[свернуть]
*

timssky

  • Захожу иногда
  • 330
  • 0 / 0
1)  Ссылка появилась и работает нормально,  но исчез сам фрагмент материала
2)  Не работает анимация при наведении.  В вышеуказанном коде не был указан формат картинок png, я указал его но изображение кнопки появляется только при наведении и не исчезает, а если не навел отображается крестик (как будто ссылка ломаная на картинку) проверил все на 10 раз вроде все нормально.

Спойлер
[свернуть]

Что то тут еще нужно исправить ?
*

timssky

  • Захожу иногда
  • 330
  • 0 / 0
*

Pyrk1

  • Захожу иногда
  • 150
  • 10 / 0
Прошу прощения за долгий ответ. Лично у меня на тестовом сайте все хорошо работает, после того, как я убрал лишние кавычки в ссылке, вот сам сайт: http://galrik.tk/main/
А вот код модуля, который стоит у меня:
Код
<?php
 
defined('_JEXEC') or die;

$separator = '<div style="display: none;"> </div>';

$db =& JFactory::getDBO();
$id = $params->get("article_id");
$q="SELECT introtext FROM #__content WHERE `id` = $id";
$db->setQuery($q);
$article_text = $db->loadResult();
$article_text = substr ($article_text, 0 , strpos ( $article_text , $separator ) );

echo $article_text;

echo "<p style=\"text-align: center;\"><a href =\"index.php?option=com_content&view=article&id=$id\"><img onmouseover=\"this.src='http://galrik.tk/main/images/joomla_black.gif';\" onmouseout=\"this.src='http://upload.wikimedia.org/wikipedia/commons/f/f6/Wikipedia-logo-v2-ru.png';\" src=\"http://upload.wikimedia.org/wikipedia/commons/f/f6/Wikipedia-logo-v2-ru.png\" /></a></p>";
?>
*

timssky

  • Захожу иногда
  • 330
  • 0 / 0
Все работает, спасибо

У меня выше самой таблицы есть описание и нужно, как то сделать, чтобы оно не выводилась в модуле, как это сделать ?

(Я так понимаю, что нужно в php прописать, что с определённого до определенного кода материал не должен выводится в модуле,  а в материале,  в HTML коде, перед и после описания нужно вставить ограничители.)

*

Pyrk1

  • Захожу иногда
  • 150
  • 10 / 0
Я бы сделал несколько иначе. Вы помещаете между кодом текста, содержащего описание и самим кодом таблицы данный фрагмент:
Код
<div id="start" style="display: none;"> </div>
При выводе поиск и вывод материала будет идти после этого стартового блока и до разделителя.

Код модуля:
Код
<?php
 
defined('_JEXEC') or die;
$start = '<div id="start" style="display: none;"> </div>';
$separator = '<div style="display: none;"> </div>';

$db =& JFactory::getDBO();
$id = $params->get("article_id");
$q="SELECT introtext FROM #__content WHERE `id` = $id";
$db->setQuery($q);
$article_text = $db->loadResult();
$article_text = substr_replace($article_text, '', 0, strpos ( $article_text , $start ) + 47 );
$article_text = substr ($article_text, 0 , strpos ( $article_text , $separator ) );
echo $article_text;

echo "<p style=\"text-align: center;\"><a href =\"index.php?option=com_content&view=article&id=$id\"><img onmouseover=\"this.src='http://galrik.tk/main/images/joomla_black.gif';\" onmouseout=\"this.src='http://upload.wikimedia.org/wikipedia/commons/f/f6/Wikipedia-logo-v2-ru.png';\" src=\"http://upload.wikimedia.org/wikipedia/commons/f/f6/Wikipedia-logo-v2-ru.png\" /></a></p>";
?>

Демонстрационный код страницы:
Спойлер
[свернуть]
*

timssky

  • Захожу иногда
  • 330
  • 0 / 0
Редактор JCE вставляет вот эту фигню: &nbsp и ломает код  не подскажешь где отключить ?
*

Pyrk1

  • Захожу иногда
  • 150
  • 10 / 0
Если я не ошибаюсь, то вам поможет эта тема: http://joomlaforum.ru/index.php?topic=154220.0
*

timssky

  • Захожу иногда
  • 330
  • 0 / 0
Если я вставляю вышеуказанный демонстрационный код страницы в материал с отключенным визуальным редактором, то все работает прекрасно и материал отображается в модуле.  Если я открываю данный материал в любом визуальном редакторе и после чего сохраняю,  материал перестает отображается в модуле.

При этом HTML код остается не неизменным, т.е. если я его опять копирую и вставлю с отключенным редактором и сохраню то все нормально работает.

Мистика какая та блин
« Последнее редактирование: 26.06.2013, 21:02:42 от timssky »
*

Pyrk1

  • Захожу иногда
  • 150
  • 10 / 0
Хм, а если использовать не пустые блоки, а поместить туда, например, единичку?
Будет как-то так:
Код
<?php
 
defined('_JEXEC') or die;
$start = '<div id="start" style="display: none;">1</div>';
$separator = '<div style="display: none;">1</div>';

$db =& JFactory::getDBO();
$id = $params->get("article_id");
$q="SELECT introtext FROM #__content WHERE `id` = $id";
$db->setQuery($q);
$article_text = $db->loadResult();
$article_text = substr_replace($article_text, '', 0, strpos ( $article_text , $start ) + 47 );
$article_text = substr ($article_text, 0 , strpos ( $article_text , $separator ) );
echo $article_text;

echo "<p style=\"text-align: center;\"><a href =\"index.php?option=com_content&view=article&id=$id\"><img onmouseover=\"this.src='http://galrik.tk/main/images/joomla_black.gif';\" onmouseout=\"this.src='http://upload.wikimedia.org/wikipedia/commons/f/f6/Wikipedia-logo-v2-ru.png';\" src=\"http://upload.wikimedia.org/wikipedia/commons/f/f6/Wikipedia-logo-v2-ru.png\" /></a></p>";
?>

Соответственно, надо так же изменить код материала.
*

timssky

  • Захожу иногда
  • 330
  • 0 / 0
Теперь все отлично работает

Не подскажешь как убрать слово материалы в заголовке ? ,  может как то ссылку можно по другому в php прописать ?

*

Pyrk1

  • Захожу иногда
  • 150
  • 10 / 0
Вы имеете ввиду, убрать заголовок на странице с самим материалом?
*

timssky

  • Захожу иногда
  • 330
  • 0 / 0
Да нет заголовок материала нормально отображается,  выше самого заголовка вылазит слово Материалы,  и ссылка на материал выглядит так:  mysite/index.php?option=com_content&view=article&id=231,  хотя если заходить через меню то так:  mysite/index.php/тестовый-материал  и слово материалы не вылазит
Вот я и говорю нельзя ли, что то изменить в php, чтобы материал выводился как будто из меню

И еще Я просил, чтобы описание не выводилось в модуле, все работает, но задумка оказалось не очень хорошая, так как при добавлении нового фрагмента, ткнув не много не туда,  постоянно появляются абзацы и текст скачет поэтому решил, заменить описание модулем.  Нужно чтобы в модуле не отображался другой модуль, вот код его вставки: {loadposition user100},   а  своиство отвечающее за <div id="start" style="display: none;">1</div> убрать из php
« Последнее редактирование: 27.06.2013, 20:30:23 от timssky »
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Код: php-brief
<?php
if(!class_exists('ContentModelArticle')) require_once JPATH_ROOT.'/components/com_content/models/article.php';
$article = new ContentModelArticle;
//получаем документ с id=10
$youArticle = $article->getItem(10);
echo $youArticle->introtext;
$url = ContentHelperRoute::getArticleRoute($youArticle->id, $youArticle->catid, JFactory::getDocument()->language);
?>
Код: html4strict
<a href="<?php echo JRoute::_($url);?>" title="<?php echo $youArticle->title;?>">Подробнее</a>
И вы совсем забыли про такую функцию как split или explode
*

timssky

  • Захожу иногда
  • 330
  • 0 / 0
Fedor Vlasenko   А что и куда вставлять ?  ;D
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Блокировка материала! Что оно такое?

Автор Chebyrek

Ответов: 17
Просмотров: 17070
Последний ответ 30.06.2020, 16:33:09
от 1AZ1
Как вывести путь материала на страницу?

Автор Gromz

Ответов: 6
Просмотров: 2036
Последний ответ 14.12.2019, 20:19:21
от Gromz
Что за баг с датой обновления материала - Обновлено 30.11.-0001 08:47?

Автор Maxum

Ответов: 7
Просмотров: 3908
Последний ответ 22.01.2019, 23:46:01
от artbavial
Как сбросить счётчик колличества просмотров материала?

Автор Neptun

Ответов: 7
Просмотров: 4409
Последний ответ 18.06.2018, 16:13:17
от tuztref
10 звезд рейтинга материала

Автор Vlasnov

Ответов: 0
Просмотров: 1173
Последний ответ 18.06.2018, 11:35:21
от Vlasnov