LiveInternetMail.ru
Форум русской поддержки Joomla!® CMS
25.05.2012, 10:46:26 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 1.7 FAQ Joomla 1.5 FAQ Joomla 1.0 FAQ Правила форума Новости Joomla Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор Тема: Нужно в одну статью вставлять кусок из другой  (Прочитано 641 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
Gl-whitefoot
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 26


« : 02.03.2010, 14:15:43 »

Подскажите пожалуйста решение проблемы. Мне нужно из одной статьи вставлять в другую вводный текст. Нужно чтобы это все было автоматизировано, потому что статей много, а вводные тексты других постоянно меняются. Что можно сделать? Нужен плагин какой-нибудь? не подскажете какой? Или подскажите как его сделать, я просто плагины никогда не делал для Joostina, только модули и компоненты
Записан
Gl-whitefoot
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 26


« Ответ #1 : 02.03.2010, 16:17:14 »

Вот например для Joomla самый простой плагин
defined('_JEXEC') or die('Restricted access');
// регестрируем обработчик
$mainframe->registerEvent('onPrepareContent',
'plgContentSmiley');
/**
* Заменим Azn на Привет мир!.
**/
function plgContentSmiley($row, $params, $page)
{
$pattern = '/\:\)/';
$icon = 'Привет мир! Привет мир!';
$row->text = preg_replace($pattern, $icon, $row->text);
}
Прокатит такой на Joomla ?
Записан
Gl-whitefoot
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 26


« Ответ #2 : 02.03.2010, 16:19:27 »

Поправка - не на joomla  а ан Joostina 1.2.0. [ stable v2 ] Smiley
Записан
Gl-whitefoot
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 26


« Ответ #3 : 02.03.2010, 18:39:04 »

Вот такую штуку написал
<?
defined('_JEXEC') or die('Restricted access');
// регестрируем обработчик
$mainframe->registerEvent('onPrepareContent',
'plgContentSmiley');
/**

*/
function plgContentSmiley($row, $params, $page)
{
   $pattern = '/{*p15*}/';//'/\:\)/';
   
   if (strpos($row->text,'{-') && strpos($row->text,'-}'))
   {
      $start = strpos($row->text,'{-');
      $end = strpos($row->text,'-}');
      $lenght = $end-$start-2;
      $id= substr($row->text, $start+2, $lenght);
      $patt='/{-'.$id.'-}/';
      //die ($start.' '.$end.' '.$lenght.' '.$id);
      
      $db =& JFactory::getDBO();
      $query = 'SELECT * FROM #__content where id='.$id.';';
      $db->setQuery( $query );
      $data = $db->loadObject();
      
      $startimg = strpos($data->introtext,'<img');
      $endimg = strpos($data->introtext,'/>');
      $lenghtimg =$endimg-$startimg;
      $imgcut = substr($data->introtext, $startimg, $lenghtimg+2);
      $imgcut = str_replace("/", "\/", $imgcut);
      
      $imgpat = '/'.$imgcut.'/';
      //die ($startimg.' '.$endimg.' '.$lenghtimg.' '.$imgpat);
      $empty ='';
      $data->introtext = preg_replace($imgpat,$empty, $data->introtext);
      
      //die ($data->introtext);
      $row->text = preg_replace($patt, $data->introtext, $row->text);
   }
}
?>
в Joomla 1.5 работает хорошо На Joostina боюсь устанавливать . Сайт рабочий вдруг что-нибудь полетит. Подобный плагин будет работать под джустиной ?
Записан
boston
Moderator
*****

Репутация: +222/-3
Offline Offline

Пол: Мужской
Сообщений: 2699



« Ответ #4 : 03.03.2010, 20:22:23 »

Похожее будет, надо тока переписать под функции Joostina.
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Рейтинг@Mail.ru Rambler Top100 Powered by SMF 1.1.16 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet