2015-11-06 36 views
2

在一個Joomla 3.4網站,文章默認顯示這樣的 「詳細資料」 部分:如何修改Joomla文章中的佈局?

詳細

撰稿李四

發佈時間:2015年10月26日

要更改哪個文件(如果可能的話)以獲得以下結果?

通過李四,於11月4日,@itoctopus答案後,2015年


編輯:

您將需要更改覆蓋文件。你可以通過改變 文件/templates/your-template/html/com_content/article/default.php

下面是如default.php的內容。

應該改變以達到上述結果?我在這個文件中沒有看到與「細節」部分相關的任何內容。

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

defined('_JEXEC') or die; 

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

// Create shortcuts to some parameters. 
$params = $this->item->params; 
$images = json_decode($this->item->images); 
$urls = json_decode($this->item->urls); 
$canEdit = $params->get('access-edit'); 
$user = JFactory::getUser(); 
$info = $params->get('info_block_position', 0); 
JHtml::_('behavior.caption'); 
?> 
<div class="item-page<?php echo $this->pageclass_sfx; ?>" itemscope itemtype="http://schema.org/Article"> 
    <meta itemprop="inLanguage" content="<?php echo ($this->item->language === '*') ? JFactory::getConfig()->get('language') : $this->item->language; ?>" /> 
    <?php if ($this->params->get('show_page_heading')) : ?> 
    <div class="page-header"> 
     <h1> <?php echo $this->escape($this->params->get('page_heading')); ?> </h1> 
    </div> 
    <?php endif; 
    if (!empty($this->item->pagination) && $this->item->pagination && !$this->item->paginationposition && $this->item->paginationrelative) 
    { 
     echo $this->item->pagination; 
    } 
    ?> 

    <?php // Todo Not that elegant would be nice to group the params ?> 
    <?php $useDefList = ($params->get('show_modify_date') || $params->get('show_publish_date') || $params->get('show_create_date') 
    || $params->get('show_hits') || $params->get('show_category') || $params->get('show_parent_category') || $params->get('show_author')); ?> 

    <?php if (!$useDefList && $this->print) : ?> 
     <div id="pop-print" class="btn hidden-print"> 
      <?php echo JHtml::_('icon.print_screen', $this->item, $params); ?> 
     </div> 
     <div class="clearfix"> </div> 
    <?php endif; ?> 
    <?php if ($params->get('show_title') || $params->get('show_author')) : ?> 
    <div class="page-header"> 
     <h2 itemprop="name"> 
      <?php if ($params->get('show_title')) : ?> 
       <?php echo $this->escape($this->item->title); ?> 
      <?php endif; ?> 
     </h2> 
     <?php if ($this->item->state == 0) : ?> 
      <span class="label label-warning"><?php echo JText::_('JUNPUBLISHED'); ?></span> 
     <?php endif; ?> 
     <?php if (strtotime($this->item->publish_up) > strtotime(JFactory::getDate())) : ?> 
      <span class="label label-warning"><?php echo JText::_('JNOTPUBLISHEDYET'); ?></span> 
     <?php endif; ?> 
     <?php if ((strtotime($this->item->publish_down) < strtotime(JFactory::getDate())) && $this->item->publish_down != JFactory::getDbo()->getNullDate()) : ?> 
      <span class="label label-warning"><?php echo JText::_('JEXPIRED'); ?></span> 
     <?php endif; ?> 
    </div> 
    <?php endif; ?> 
    <?php if (!$this->print) : ?> 
     <?php if ($canEdit || $params->get('show_print_icon') || $params->get('show_email_icon')) : ?> 
      <?php echo JLayoutHelper::render('joomla.content.icons', array('params' => $params, 'item' => $this->item, 'print' => false)); ?> 
     <?php endif; ?> 
    <?php else : ?> 
     <?php if ($useDefList) : ?> 
      <div id="pop-print" class="btn hidden-print"> 
       <?php echo JHtml::_('icon.print_screen', $this->item, $params); ?> 
      </div> 
     <?php endif; ?> 
    <?php endif; ?> 

    <?php if ($useDefList && ($info == 0 || $info == 2)) : ?> 
     <?php echo JLayoutHelper::render('joomla.content.info_block.block', array('item' => $this->item, 'params' => $params, 'position' => 'above')); ?> 
    <?php endif; ?> 

    <?php if ($info == 0 && $params->get('show_tags', 1) && !empty($this->item->tags->itemTags)) : ?> 
     <?php $this->item->tagLayout = new JLayoutFile('joomla.content.tags'); ?> 

     <?php echo $this->item->tagLayout->render($this->item->tags->itemTags); ?> 
    <?php endif; ?> 

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

    <?php if (isset($urls) && ((!empty($urls->urls_position) && ($urls->urls_position == '0')) || ($params->get('urls_position') == '0' && empty($urls->urls_position))) 
     || (empty($urls->urls_position) && (!$params->get('urls_position')))) : ?> 
    <?php echo $this->loadTemplate('links'); ?> 
    <?php endif; ?> 
    <?php if ($params->get('access-view')):?> 
    <?php if (isset($images->image_fulltext) && !empty($images->image_fulltext)) : ?> 
    <?php $imgfloat = (empty($images->float_fulltext)) ? $params->get('float_fulltext') : $images->float_fulltext; ?> 
    <div class="pull-<?php echo htmlspecialchars($imgfloat); ?> item-image"> <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); ?>" itemprop="image"/> </div> 
    <?php endif; ?> 
    <?php 
    if (!empty($this->item->pagination) && $this->item->pagination && !$this->item->paginationposition && !$this->item->paginationrelative): 
     echo $this->item->pagination; 
    endif; 
    ?> 
    <?php if (isset ($this->item->toc)) : 
     echo $this->item->toc; 
    endif; ?> 
    <div itemprop="articleBody"> 
     <?php echo $this->item->text; ?> 
    </div> 

    <?php if ($useDefList && ($info == 1 || $info == 2)) : ?> 
     <?php echo JLayoutHelper::render('joomla.content.info_block.block', array('item' => $this->item, 'params' => $params, 'position' => 'below')); ?> 
     <?php if ($params->get('show_tags', 1) && !empty($this->item->tags->itemTags)) : ?> 
      <?php $this->item->tagLayout = new JLayoutFile('joomla.content.tags'); ?> 
      <?php echo $this->item->tagLayout->render($this->item->tags->itemTags); ?> 
     <?php endif; ?> 
    <?php endif; ?> 

    <?php 
    if (!empty($this->item->pagination) && $this->item->pagination && $this->item->paginationposition && !$this->item->paginationrelative): 
     echo $this->item->pagination; 
    ?> 
    <?php endif; ?> 
    <?php if (isset($urls) && ((!empty($urls->urls_position) && ($urls->urls_position == '1')) || ($params->get('urls_position') == '1'))) : ?> 
    <?php echo $this->loadTemplate('links'); ?> 
    <?php endif; ?> 
    <?php // Optional teaser intro text for guests ?> 
    <?php elseif ($params->get('show_noauth') == true && $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) : ?> 
    <?php $menu = JFactory::getApplication()->getMenu(); ?> 
    <?php $active = $menu->getActive(); ?> 
    <?php $itemId = $active->id; ?> 
    <?php $link = new JUri(JRoute::_('index.php?option=com_users&view=login&Itemid=' . $itemId, false)); ?> 
    <?php $link->setVar('return', base64_encode(JRoute::_(ContentHelperRoute::getArticleRoute($this->item->slug, $this->item->catid, $this->item->language), false))); ?> 
    <p class="readmore"> 
     <a href="<?php echo $link; ?>" class="register"> 
     <?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 
    if (!empty($this->item->pagination) && $this->item->pagination && $this->item->paginationposition && $this->item->paginationrelative) : 
     echo $this->item->pagination; 
    ?> 
    <?php endif; ?> 
    <?php echo $this->item->event->afterDisplayContent; ?> 
</div> 
+0

爲什麼不選擇隱藏詳細信息的選項?這在創建文章時可用,但通常我會全局更改它以隱藏所有內容。 (點擊文章管理器中的選項)。 – Elin

+0

@Elin那麼你將如何展示「通過John Doe,2015年11月4日」?目標不是完全刪除細節,而是要定製它...... –

+0

我會設置作者來顯示,發佈日期以顯示,其他所有要隱藏。 – Elin

回答

1

使用CSS 語言覆蓋計算出來。

CSS:display:none擺脫不需要的東西並顯示:inline-block將所有內容放在一行中。

更改Joomla中的單詞3。4後端:

  • 從控制面板中,單擊語言工具欄菜單
  • 點擊「覆蓋」
  • 選擇在「過濾器」在
  • 點擊「新建」
  • 語言表單字段旁邊的「搜索」按鈕,在你想改變
  • 選擇正確的字符串變量
  • 鍵入所需文本的文本類型
  • 保存

完成。

1

您可以通過CSS來完成上述操作 - 但有時候這有點棘手,所以您需要更改覆蓋文件。您可以通過更改文件/templates/your-template/html/com_content/article/default.php

如果你無法找到文件(或目錄結構)做到這一點,那麼你就需要這個文件components/com_content/views/article/tmpl/default.php複製到/templates/your-template/html/com_content/article/default.php(如果有一個目錄不例如,如果只能在templates文件夾下找到/templates/your-template/html,則需要在html文件夾下創建com_content文件夾,然後在com_content文件夾下創建article文件夾)。

然後,您可以修改default.php文件以更改佈局。確保清除Joomla緩存以查看您的更改。

+0

偉大的,這是明確的「在哪裏......」我不讀PHP,但我不能識別任何「細節」或「書面」的話......它似乎隱藏在變量中。 感謝您對此解密。 –