Новости Joomla

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

Zaus

  • Осваиваюсь на форуме
  • 35
  • 0 / 0
Кнопка "поделиться" не хотят опускаться сразу после материала а торчат наверху. В той же модульной позиции (т.е. после текста материала) стоят jcomments и vkcomments, так вот "поделиться" опускается либо в самый низ под комментарии (где конечно её никто не увидит), либо выползает перед текстом статьи (что нелогично).

Так что же делать? Как помочь пионерам делиться материалом после его прочтения и до высказывания своего ценнейшего мнения?
*

Zaus

  • Осваиваюсь на форуме
  • 35
  • 0 / 0
тут я чего не понимаю. Комментарии все - это плагины, они, да, упорядовачиваются в менеджере, а вот кнопки эти - модуль с хтлм кодом. Как их между собой подружить?

Короче, посмотрите как сейчас на uchlya.ru , на главной эти кнопки внизу как надо а в материалах лезут наверх

...
Ну есть еще вариант с Modules Anywhere, но что ж их, руками что ли прибивать к каждой статье? О_о7
« Последнее редактирование: 16.10.2012, 12:04:43 от Zaus »
*

Zaus

  • Осваиваюсь на форуме
  • 35
  • 0 / 0
Получается надо создавать новую модульную позицию? Или можно как-то еще заставить *******ый модуль вылезать сразу после текста?
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
*

Zaus

  • Осваиваюсь на форуме
  • 35
  • 0 / 0
Отлично! Так получилось почти что надо. Осталась такая проблема: плагин JL_vk_comments выводится сразу после текста, несмотря на то, что в com_content\articles\default.php вроде как я прописал за текстом выводить кнопки "поделиться"... Изменение позиции в менеджере плагинов ни на что не влияет. Пока кнопки прилеплены к заду контактовских комментов...

Подскажите, как изменить порядок вывода плагинов вручную?
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Надо понять как вы модуль выводите в статье. Если с помощью кода (к примеру по id модуля) то никаких проблем быть не должно
*

Zaus

  • Осваиваюсь на форуме
  • 35
  • 0 / 0
Вот default.php

Код
<?php
/**
 * @package Joomla.Site
 * @subpackage com_content
 * @copyright Copyright (C) 2005 - 2012 Open Source Matters, Inc. All rights reserved.
 * @license GNU General Public License version 2 or later; see LICENSE.txt
 */

// no direct access
defined('_JEXEC') or die;

JHtml::addIncludePath(JPATH_COMPONENT . '/helpers');

// Create shortcuts to some parameters.
$params = $this->item->params;
$images = json_decode(isset($this->item->images)? $this->item->images : null);
$urls = json_decode(isset($this->item->urls)? $this->item->urls : null);
$canEdit = $this->item->params->get('access-edit');
$user = JFactory::getUser();
?>
<div class="item-page<?php echo $this->pageclass_sfx?>">
<?php if ($this->params->get('show_page_heading', 1)) : ?>
<h1>
<?php echo $this->escape($this->params->get('page_heading')); ?>
</h1>
<?php endif; ?>
<div class="header-content clearfix">
<?php if ($params->get('show_title')) : ?>
<h2>
<?php if ($params->get('link_titles') && !empty($this->item->readmore_link)) : ?>
<a href="<?php echo $this->item->readmore_link; ?>">
<?php echo $this->escape($this->item->title); ?></a>
<?php else : ?>
<?php echo $this->escape($this->item->title); ?>
<?php endif; ?>
</h2>
<?php endif; ?>


<?php if ($canEdit ||  $params->get('show_print_icon') || $params->get('show_email_icon')) : ?>
<ul class="actions">
<?php if (!$this->print) : ?>
<?php if ($params->get('show_print_icon')) : ?>
<li class="print-icon">
<?php echo JHtml::_('icon.print_popup',  $this->item, $params); ?>
</li>
<?php endif; ?>

<?php if ($params->get('show_email_icon')) : ?>
<li class="email-icon">
<?php echo JHtml::_('icon.email',  $this->item, $params); ?>
</li>
<?php endif; ?>

<?php if ($canEdit) : ?>
<li class="edit-icon">
<?php echo JHtml::_('icon.edit', $this->item, $params); ?>
</li>
<?php endif; ?>

<?php else : ?>
<li>
<?php echo JHtml::_('icon.print_screen',  $this->item, $params); ?>
</li>
<?php endif; ?>

</ul>
<?php endif; ?>
</div>
<?php  if (!$params->get('show_intro')) :
echo $this->item->event->afterDisplayTitle;
endif; ?>

<?php echo $this->item->event->beforeDisplayContent; ?>

<?php $useDefList = (($params->get('show_author')) OR ($params->get('show_category')) OR ($params->get('show_parent_category'))
OR ($params->get('show_create_date')) OR ($params->get('show_modify_date')) OR ($params->get('show_publish_date'))
OR ($params->get('show_hits'))); ?>

<?php if ($useDefList) : ?>
<dl class="article-info">
<?php endif; ?>
<?php if ($params->get('show_parent_category') && $this->item->parent_slug != '1:root') : ?>
<dd class="parent-category-name">
<?php $title = $this->escape($this->item->parent_title);
$url = '<a href="'.JRoute::_(ContentHelperRoute::getCategoryRoute($this->item->parent_slug)).'">'.$title.'</a>';?>
<?php if ($params->get('link_parent_category') AND $this->item->parent_slug) : ?>
<?php echo JText::sprintf('COM_CONTENT_PARENT', $url); ?>
<?php else : ?>
<?php echo JText::sprintf('COM_CONTENT_PARENT', $title); ?>
<?php endif; ?>
</dd>
<?php endif; ?>
<?php if ($params->get('show_category')) : ?>
<dd class="category-name">
<?php $title = $this->escape($this->item->category_title);
$url = '<a href="'.JRoute::_(ContentHelperRoute::getCategoryRoute($this->item->catslug)).'">'.$title.'</a>';?>
<?php if ($params->get('link_category') AND $this->item->catslug) : ?>
<?php echo JText::sprintf('COM_CONTENT_CATEGORY', $url); ?>
<?php else : ?>
<?php echo JText::sprintf('COM_CONTENT_CATEGORY', $title); ?>
<?php endif; ?>
</dd>
<?php endif; ?>
<?php if ($params->get('show_create_date')) : ?>
<dd class="create">
<?php echo JText::sprintf('COM_CONTENT_CREATED_DATE_ON', JHtml::_('date',$this->item->created, JText::_('DATE_FORMAT_LC2'))); ?>
</dd>
<?php endif; ?>
<?php if ($params->get('show_modify_date')) : ?>
<dd class="modified">
<?php echo JText::sprintf('COM_CONTENT_LAST_UPDATED', JHtml::_('date',$this->item->modified, JText::_('DATE_FORMAT_LC2'))); ?>
</dd>
<?php endif; ?>
<?php if ($params->get('show_publish_date')) : ?>
<dd class="published">
<?php echo JText::sprintf('COM_CONTENT_PUBLISHED_DATE_ON', '<span>'.JHtml::_('date',$this->item->publish_up, JText::_('DATE_FORMAT_LC3')).'</span>'); ?>
</dd>
<?php endif; ?>
<?php if ($params->get('show_author') && !empty($this->item->author )) : ?>
<dd class="createdby">
<?php $author = $this->item->created_by_alias ? $this->item->created_by_alias : $this->item->author; ?>
<?php if (!empty($this->item->contactid) && $params->get('link_author') == true): ?>
<?php
  $needle = 'index.php?option=com_contact&view=contact&id=' . $this->item->contactid;
  $item = JSite::getMenu()->getItems('link', $needle, true);
  $cntlink = !empty($item)? $needle . '&Itemid=' . $item->id : $needle;
?>
  <?php echo JText::sprintf('COM_CONTENT_WRITTEN_BY', JHtml::_('link', JRoute::_($cntlink), $author)); ?>
<?php else: ?>
  <?php echo JText::sprintf('COM_CONTENT_WRITTEN_BY', $author); ?>
<?php endif; ?>
</dd>
<?php endif; ?>
<?php if ($params->get('show_hits')) : ?>
<dd class="hits">
<?php echo JText::sprintf('COM_CONTENT_ARTICLE_HITS', $this->item->hits); ?>
</dd>
<?php endif; ?>
<?php if ($useDefList) : ?>
</dl>
<?php endif; ?>

<?php if (isset ($this->item->toc)) : ?>
<?php echo $this->item->toc; ?>
<?php endif; ?>
<?php if ($params->get('access-view')):?>

<?php  if (isset($images->image_fulltext) and !empty($images->image_fulltext)) : ?>
<?php $imgfloat = (empty($images->float_fulltext))? $params->get('float_fulltext') : $images->float_fulltext; ?>
<div class="img-fulltext-<?php echo htmlspecialchars($imgfloat); ?>">
<img
<?php if ($images->image_fulltext_caption):
echo 'class="caption"'.' title="' .htmlspecialchars($images->image_fulltext_caption).'"';
endif; ?>
src="<?php echo htmlspecialchars($images->image_fulltext); ?>" alt="<?php echo htmlspecialchars($images->image_fulltext_alt); ?>"/>
</div>
<?php endif; ?>

<?php echo $this->item->text; ?>

<?php //выводим модуль по id
$document = &JFactory::getDocument();
$renderer = $document->loadRenderer('module');
$params = array('style'=>'xhtml');
$dbo = JFactory::getDBO();
//получить модуль как объект
$dbo->setQuery("SELECT * FROM #__modules WHERE id='114' ");
$module = $dbo->loadObject();
//убрать предупреждение
$module->user = '';
echo $renderer->render($module, $params);
 ?>

<?php
if (!empty($this->item->pagination) AND $this->item->pagination AND !$this->item->paginationposition AND !$this->item->paginationrelative):
echo $this->item->pagination;
 endif;
?>

<?php
if (!empty($this->item->pagination) AND $this->item->pagination AND $this->item->paginationposition AND!$this->item->paginationrelative):
echo $this->item->pagination;?>
<?php endif; ?>

<?php //optional teaser intro text for guests ?>
<?php elseif ($params->get('show_noauth') == true AND  $user->get('guest') ) : ?>
<?php echo $this->item->introtext; ?>
<?php //Optional link to let them register to see the whole article. ?>
<?php if ($params->get('show_readmore') && $this->item->fulltext != null) :
$link1 = JRoute::_('index.php?option=com_users&view=login');
$link = new JURI($link1);?>
<p class="readmore">
<a href="<?php echo $link; ?>">
<?php $attribs = json_decode($this->item->attribs);  ?>
<?php
if ($attribs->alternative_readmore == null) :
echo JText::_('COM_CONTENT_REGISTER_TO_READ_MORE');
elseif ($readmore = $this->item->alternative_readmore) :
echo $readmore;
if ($params->get('show_readmore_title', 0)!= 0) :
    echo JHtml::_('string.truncate', ($this->item->title), $params->get('readmore_limit'));
endif;
elseif ($params->get('show_readmore_title', 0) == 0) :
echo JText::sprintf('COM_CONTENT_READ_MORE_TITLE');
else :
echo JText::_('COM_CONTENT_READ_MORE');
echo JHtml::_('string.truncate', ($this->item->title), $params->get('readmore_limit'));
endif; ?></a>
</p>
<?php endif; ?>
<?php endif; ?>
<?php echo $this->item->event->afterDisplayContent; ?>
</div>

но блин:

Код
<p>   текст_текст_текст_текст_текст_текст_текст_текст_текст_текст_текст_текст </p>
<hr />
<p> </p>
<div id='jlvkcomments'></div>
<script type='text/javascript'>
VK.Widgets.Comments('jlvkcomments', {limit: 20, width: '0', attach: 'false', autoPublish: 1, norealtime: 0},42);
</script>

<div class="moduletable">
<script type="text/javascript" src="//yandex.st/share/share.js" charset="utf-8"></script>
<div align=right class="yashare-auto-init" data-yashareL10n="ru" data-yashareType="button" data-yashareQuickServices="vkontakte,facebook,twitter,odnoklassniki,lj,gplus"></div> </div>

и вот почему же камменты первые? ((
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Плагин срабатывает на событие.
Попробуйте удалить(переместить) в коде строку <?php echo $this->item->event->beforeDisplayContent; ?>
*

Zaus

  • Осваиваюсь на форуме
  • 35
  • 0 / 0
Ура!
Плюнул я короче на плагин этот с ВК камментами (JL_vkcomments), а взял просто код изконтактика и сделал из него еще один модуль. Ну и всё построилось как надо.
Всем спасибо.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться