Здравствуйте Помоги плиз. Бьюсь уже 2 день Сайт на Joomla Моя задача засунуть $article в отдельный DIV в колонках блока не могу понять что и куда прописать((( помогиииите(((( PHP: <?php /** * @package Warp Theme Framework * @author YOOtheme http://www.yootheme.com * @copyright Copyright (C) YOOtheme GmbH * @license http://www.gnu.org/licenses/gpl.html GNU/GPL */ // no direct access defined('_JEXEC') or die; JHtml::addIncludePath(JPATH_COMPONENT.'/helpers'); ?> <?php $app = JFactory::getApplication(); $app->input->set('layout', 'blog'); ?> <?php if ($this->params->get('show_page_heading') || $this->params->get('page_subheading') || $this->params->get('show_description', 1) || $this->params->def('show_description_image', 1) || $this->params->get('show_category_title', 1)) : ?> <div class="uk-grid"> <div class="uk-width-1-1"> <div class="uk-panel uk-panel-header"> <?php if ($this->params->get('show_page_heading')) : ?> <h1 class="tm-title"><?php echo $this->escape($this->params->get('page_heading')); ?></h1> <?php endif; ?> <?php if ($this->params->get('page_subheading')) : ?> <h2><?php echo $this->escape($this->params->get('page_subheading')); ?></h2> <?php endif; ?> <?php if ($this->params->get('show_category_title', 1)) : ?> <h3 class="uk-h3"><?php echo $this->category->title;?></h3> <?php endif; ?> <?php if ($this->params->get('show_description', 1) || $this->params->def('show_description_image', 1)) :?> <div class="uk-clearfix"> <?php if ($this->params->get('show_description_image') && $this->category->getParams()->get('image')) : ?> <img src="<?php echo $this->category->getParams()->get('image'); ?>" alt="<?php echo $this->category->getParams()->get('image'); ?>" class="uk-align-right"> <?php endif; ?> <?php if ($this->params->get('show_description') && $this->category->description) echo JHtml::_('content.prepare', $this->category->description, '', 'com_content.category'); ?> <?php if ($this->params->get('show_tags', 1) && !empty($this->category->tags->itemTags)) { JLoader::register('TagsHelperRoute', JPATH_BASE . '/components/com_tags/helpers/route.php'); echo '<p>'.JText::_('TPL_WARP_TAGS').': '; foreach ($this->category->tags->itemTags as $i => $tag) { if (in_array($tag->access, JAccess::getAuthorisedViewLevels(JFactory::getUser()->get('id')))) { if($i > 0) echo ', '; echo '<a href="'.JRoute::_(TagsHelperRoute::getTagRoute($tag->tag_id . ':' . $tag->alias)).'">'.$this->escape($tag->title).'</a>'; } } echo '</p>'; } ?> </div> <?php endif; ?> </div> </div> </div> <?php endif; ?> <?php if (empty($this->lead_items) && empty($this->link_items) && empty($this->intro_items)) : ?> <?php if ($this->params->get('show_no_articles', 1)) : ?> <div class="uk-alert"><?php echo JText::_('COM_CONTENT_NO_ARTICLES'); ?></div> <?php endif; ?> <?php endif; ?> <?php // init vars $articles = ''; // leading articles if (!empty($this->lead_items)) { $articles .= '<div class="uk-grid tm-leading-article"><div class="uk-width-1-1"><div class="block">'; foreach ($this->lead_items as $item) { $this->item = $item; $articles .= $this->loadTemplate('item'); } $articles .= '</div></div></div>'; } // intro articles $num_columns = $this->params->get('num_columns', 2); $columns = array(); $i = 0; foreach ($this->intro_items as $item) { $column = $i++ % $num_columns; if (!isset($columns[$column])) { $columns[$column] = ''; } $this->item = $item; $this->item->is_column_item = ($num_columns > 1); $columns[$column] .= $this->loadTemplate('item'); } // render intro columns if ($count = count($columns)) { $articles .= '<div class="uk-grid" data-uk-grid-match data-uk-grid-margin>'; for ($i = 0; $i < $count; $i++) { $articles .= '<div class="uk-width-medium-1-'.$count.'">'.$columns[$i].'</div>'; } $articles .= '</div>'; } if ($articles) echo $articles; ?> <?php if (!empty($this->link_items)) : ?> <div class="uk-grid"> <div class="uk-width-1-1"> <div class="uk-panel uk-panel-header"> <h3 class="uk-panel-title"><?php echo JText::_('COM_CONTENT_MORE_ARTICLES'); ?></h3> <ul class="uk-list"> <?php foreach ($this->link_items as &$item) : ?> <li><a href="<?php echo JRoute::_(ContentHelperRoute::getArticleRoute($item->slug, $item->catid)); ?>"><?php echo $item->title; ?></a></li> <?php endforeach; ?> </ul> </div> </div> </div> <?php endif; ?> <?php if (($this->params->def('show_pagination', 1) == 1 || ($this->params->get('show_pagination') == 2)) && ($this->pagination->get('pages.total') > 1)) : ?> <?php echo $this->pagination->getPagesLinks(); ?> <?php endif; ?>
Catchable fatal error: Object of class stdClass could not be converted to string in /var/www/vhosts/u0382878.plsk.regruhosting.ru/httpdocs/dentikviks.ru/templates/jp-gusto/warp/systems/joomla/layouts/com_content/category/blog.phpon line 105
беспридел) тогда так $articles.='<div class="uk-width-medium-1-'.$count.'">-----див-----'.$columns[$i].'------/див---</div>';
$articles.='<div class="uk-width-medium-1-'.$count.'">-----див-----'.$columns[$i].'------/див---</div>'; вот так я делала. так получается НО он заводит в блок ВСЮ колонку/ А мне надо только итем! (артикля)
не может быть в нем(( это файл вывода блока..... тут и надо править ВИД блока а $this->loadTemplate('item'); это мол сам итем там оттуда его тащить но в том виде который написан в этом файле я не сильна в пхп((( не могу врубиться ГДЕ он запрашивает вывод итема именно в колонке --- Добавлено --- PHP: // intro articles $num_columns = $this->params->get('num_columns', 2); $columns = array(); $i = 0; foreach ($this->intro_items as $item) { $column = $i++ % $num_columns; if (!isset($columns[$column])) { $columns[$column] = ''; } $this->item=$item; $this->item->is_column_item = ($num_columns > 1); $columns[$column] .= $this->loadTemplate('item'); } я так понимаю вот он говорит что в колонке брать итем..... вот как взять его в ДИВЕ?(((((
ребят ну помоги(( ну очень надо((( если надо то вот loadTemplate('item'); PHP: <?php /** * @package Warp Theme Framework * @author YOOtheme http://www.yootheme.com * @copyright Copyright (C) YOOtheme GmbH * @license http://www.gnu.org/licenses/gpl.html GNU/GPL */ // no direct access defined('_JEXEC') or die; // Create a shortcut for params. $item = $this->item; $params = $item->params; $canEdit = $this->item->params->get('access-edit'); $args = include(__DIR__.'/../article_defaults.php'); JHtml::addIncludePath(JPATH_COMPONENT.'/helpers/html'); // template args $args = array_merge($args, array( 'image' => isset($images->image_intro) ? htmlspecialchars($images->image_intro) : '', 'image_alignment' => !isset($images->float_intro) || empty($images->float_intro) ? htmlspecialchars($params->get('float_intro')) : htmlspecialchars($images->float_intro), 'image_alt' => isset($images->image_intro_alt) ? htmlspecialchars($images->image_intro_alt) : '', 'image_caption' => isset($images->image_intro_caption) ? htmlspecialchars($images->image_intro_caption) : '', 'article' => $this->item->introtext, 'is_column_item' => (isset($this->item->is_column_item)) ? $this->item->is_column_item : 0 )); // set edit $args['edit'] = $canEdit ? JHtml::_('icon.edit', $this->item, $params) : ''; $args['edit'] .= $params->get('show_print_icon') ? JHtml::_('icon.print_popup', $this->item, $params) : ''; $args['edit'] .= $params->get('show_email_icon') ? JHtml::_('icon.email', $this->item, $params) : ''; // set url if ($params->get('access-view')) { $link = JRoute::_(ContentHelperRoute::getArticleRoute($this->item->slug, $this->item->catid)); } else { $menu = JFactory::getApplication()->getMenu(); $active = $menu->getActive(); $itemId = $active->id; $link1 = JRoute::_('index.php?option=com_users&view=login&Itemid=' . $itemId); $returnURL = ContentHelperRoute::getArticleRoute($this->item->slug, $this->item->catid); $link = new JURI($link1); $link->setVar('return', base64_encode($returnURL)); } $args['url'] = $link; // set more if ($params->get('show_readmore') && $this->item->readmore) { if (!$params->get('access-view')) { $args['more'] = JText::_('COM_CONTENT_REGISTER_TO_READ_MORE'); } elseif ($readmore = $this->item->alternative_readmore) { $args['more'] = $readmore; } else { $args['more'] = JText::_('TPL_WARP_CONTINUE_READING'); } } // render template echo $warp['template']->render('article', $args);
Вот что говорит гугл https://magazine.joomla.org/issues/...-alternative-layouts-for-articles-and-modules
к сожалению это мне не поможет, как ПОМЕНЯТЬ див я уже научилась. как ПРОПИСАТЬ новый див я врубилась что править надо этот файл PHP: <?php /** * @package Warp Theme Framework * @author YOOtheme http://www.yootheme.com * @copyright Copyright (C) YOOtheme GmbH * @license http://www.gnu.org/licenses/gpl.html GNU/GPL */ // no direct access defined('_JEXEC') or die; // Create a shortcut for params. $item = $this->item; $params = $item->params; $canEdit = $this->item->params->get('access-edit'); $args = include(__DIR__.'/../article_defaults.php'); JHtml::addIncludePath(JPATH_COMPONENT.'/helpers/html'); // template args $args = array_merge($args, array( 'image' => isset($images->image_intro) ? htmlspecialchars($images->image_intro) : '', 'image_alignment' => !isset($images->float_intro) || empty($images->float_intro) ? htmlspecialchars($params->get('float_intro')) : htmlspecialchars($images->float_intro), 'image_alt' => isset($images->image_intro_alt) ? htmlspecialchars($images->image_intro_alt) : '', 'image_caption' => isset($images->image_intro_caption) ? htmlspecialchars($images->image_intro_caption) : '', 'article' => $this->item->introtext, 'is_column_item' => (isset($this->item->is_column_item)) ? $this->item->is_column_item : 0 )); // set edit $args['edit'] = $canEdit ? JHtml::_('icon.edit', $this->item, $params) : ''; $args['edit'] .= $params->get('show_print_icon') ? JHtml::_('icon.print_popup', $this->item, $params) : ''; $args['edit'] .= $params->get('show_email_icon') ? JHtml::_('icon.email', $this->item, $params) : ''; // set url if ($params->get('access-view')) { $link = JRoute::_(ContentHelperRoute::getArticleRoute($this->item->slug, $this->item->catid)); } else { $menu = JFactory::getApplication()->getMenu(); $active = $menu->getActive(); $itemId = $active->id; $link1 = JRoute::_('index.php?option=com_users&view=login&Itemid=' . $itemId); $returnURL = ContentHelperRoute::getArticleRoute($this->item->slug, $this->item->catid); $link = new JURI($link1); $link->setVar('return', base64_encode($returnURL)); } $args['url'] = $link; // set more if ($params->get('show_readmore') && $this->item->readmore) { if (!$params->get('access-view')) { $args['more'] = JText::_('COM_CONTENT_REGISTER_TO_READ_MORE'); } elseif ($readmore = $this->item->alternative_readmore) { $args['more'] = $readmore; } else { $args['more'] = JText::_('TPL_WARP_CONTINUE_READING'); } } // render template echo $warp['template']->render('article', $args); Мне надо его ВЕСЬ взять в див....
Там какая то магия. А мне кажется ссылка должна помочь. Предположительно нужно смотреть здесь $args =include(__DIR__.'/../article_defaults.php');
в этом файле такая же магия(( ни одного дива PHP: <?php /** * @package Warp Theme Framework * @author YOOtheme http://www.yootheme.com * @copyright Copyright (C) YOOtheme GmbH * @license http://www.gnu.org/licenses/gpl.html GNU/GPL */ $default_args = array( 'permalink' => '', 'image' => '', 'image_alignment' => '', 'image_alt' => '', 'image_caption' => '', 'title' => '', 'title_link' => '', 'author' => '', 'author_url' => '', 'date' => '', 'datetime' => '', 'category' => '', 'category_url' => '', 'hook_aftertitle' => '', 'hook_beforearticle' => '', 'hook_afterarticle' => '', 'article' => '', 'tags' => '', 'edit' => '', 'url' => '', 'more' => '', 'previous' => '', 'next' => '', 'is_column_item' => '' ); if (!isset($item, $params)) { return $default_args; } // Create shortcuts to some parameters. $images = json_decode($item->images); $args = array_merge($default_args, array( 'permalink' => JRoute::_(ContentHelperRoute::getArticleRoute($item->slug, $item->catslug), true, -1), 'image' => isset($images->image_fulltext) && $params->get('access-view') ? htmlspecialchars($images->image_fulltext) : '', 'image_alignment' => !isset($images->float_fulltext) || empty($images->float_fulltext) ? htmlspecialchars($params->get('float_fulltext')) : htmlspecialchars($images->float_fulltext), 'image_alt' => isset($images->image_fulltext_alt) ? htmlspecialchars($images->image_fulltext_alt) : '', 'image_caption' => isset($images->image_fulltext_caption) ? htmlspecialchars($images->image_fulltext_caption) : '', 'title' => $params->get('show_title') ? $this->escape($item->title) : '', 'title_link' => $params->get('link_titles'), 'author' => $params->get('show_author') ? ($item->created_by_alias ? $item->created_by_alias : $item->author) : '', 'author_url' => !empty($item->contactid) && $params->get('link_author') == true ? JRoute::_('index.php?option=com_contact&view=contact&id='.$item->contactid) : '', 'date' => $params->get('show_create_date') ? $item->created : '', 'date_published' => $params->get('show_publish_date') ? $item->publish_up : '', 'date_modified' => $params->get('show_modify_date') ? $item->modified : '', 'datetime' => substr($item->publish_up, 0, 10), 'category' => $params->get('show_category') ? $this->escape($item->category_title) : '', 'category_url' => $params->get('link_category') && $item->catslug ? JRoute::_(ContentHelperRoute::getCategoryRoute($item->catslug)) : '', 'hits' => $params->get('show_hits') ? $item->hits : '', 'hook_aftertitle' => !$params->get('show_intro') ? $item->event->afterDisplayTitle : '', 'hook_beforearticle' => $item->event->beforeDisplayContent.(isset($item->toc) ? $item->toc : ''), 'hook_afterarticle' => $item->event->afterDisplayContent )); return $args;
нет))) еще раз. мне НЕ надо менять все артикли на всем сайте! Мне нужно КОНКРЕТНО в БЛОГЕ категорий сделать див вокруг итема(артикля) путем тыканий я поняла что и где менять осталось понять КАК ибо я не знаю ПХП!!!!! PHP: // template args $args = array_merge($args, array( 'image' => isset($images->image_intro) ? htmlspecialchars($images->image_intro) : '', 'image_alignment' => !isset($images->float_intro) || empty($images->float_intro) ? htmlspecialchars($params->get('float_intro')) : htmlspecialchars($images->float_intro), 'image_alt' => isset($images->image_intro_alt) ? htmlspecialchars($images->image_intro_alt) : '', 'image_caption' => isset($images->image_intro_caption) ? htmlspecialchars($images->image_intro_caption) : '', 'article' => $this->item->introtext, 'is_column_item' => (isset($this->item->is_column_item)) ? $this->item->is_column_item : 0 )); // set edit $args['edit'] = $canEdit ? JHtml::_('icon.edit', $this->item, $params) : ''; $args['edit'] .= $params->get('show_print_icon') ? JHtml::_('icon.print_popup', $this->item, $params) : ''; $args['edit'] .= $params->get('show_email_icon') ? JHtml::_('icon.email', $this->item, $params) : ''; // set url if ($params->get('access-view')) { $link = JRoute::_(ContentHelperRoute::getArticleRoute($this->item->slug, $this->item->catid)); } else { $menu = JFactory::getApplication()->getMenu(); $active = $menu->getActive(); $itemId = $active->id; $link1 = JRoute::_('index.php?option=com_users&view=login&Itemid=' . $itemId); $returnURL = ContentHelperRoute::getArticleRoute($this->item->slug, $this->item->catid); $link = new JURI($link1); $link->setVar('return', base64_encode($returnURL)); } $args['url'] = $link; // set more if ($params->get('show_readmore') && $this->item->readmore) { if (!$params->get('access-view')) { $args['more'] = JText::_('COM_CONTENT_REGISTER_TO_READ_MORE'); } elseif ($readmore = $this->item->alternative_readmore) { $args['more'] = $readmore; } else { $args['more'] = JText::_('TPL_WARP_CONTINUE_READING'); } } // render template echo $warp['template']->render('article', $args); Начиная с 7 строки(включительно) и до 41 строки мне ВСЕ это надо взять в DIV как ни пыталась - ругается то на одно то на другое((( чаще орет что мол ">" низк, надо ")" меняю на ) опять на что то ругается.... КАК именно мне взять это в див?
Ну значит этим же методом и нужно продолжать. Он никогда не поводит) '<div>'.$this->item->introtex.'</div>'
УРА!! У меня получилось! Если вдруг кому -то поможет Вот код (blog_item.php) PHP: foreach ($this->intro_items as $item) { $column = $i++ % $num_columns; if (!isset($columns[$column])) { $columns[$column] = ''; } $this->item=$item; $this->item->is_column_item = ($num_columns > 1); $columns[$column] .= '<div class="block_formy">'; $columns[$column] .= $this->loadTemplate('item'); $columns[$column] .= '</div>'; } где $columns[$column] .= $this->loadTemplate('item'); -вывод итема(артикля) в колонках поэтому просто взяла и обособила команду дивом $columns[$column] .= '<div class="block_formy">'; $columns[$column] .= $this->loadTemplate('item'); $columns[$column] .= '</div>'; Всем спасибо за интенцию!!!