在Joomla组件com_search中,我修改了以下行:
<?php if ($this->params->get('show_date')) echo JText::sprintf('Published %s', $result->created).'. '; ?>
为:
<?php if ($this->params->get('show_date')) echo '<span>'.JText::_('PUBLISHED').': '.'</span>'.JText::sprintf('%s', JHtml::_('date',$result->created, JText::_('d. m. Y, H:i'))); ?>
并在搜索时遇到错误500:
DateTime::__construct(): Failed to parse time string (19. 06. 2012) at position 0 (1): Unexpected character
哪里有问题?
来自com_search的整个代码(default_results.php)以便更好地理解:
<div class="items">
<?php foreach ($this->results as $result) : ?>
<article class="item">
<header>
<?php if ( $result->href ) : ?>
<h1 class="title"><a href="<?php echo JRoute::_($result->href); ?>" <?php if ($result->browsernav == 1 ) echo 'target="_blank"'; ?>><?php echo $this->escape($result->title); ?></a></h1>
<?php else : ?>
<h1 class="title"><?php echo $this->escape($result->title); ?></h1>
<?php endif; ?>
<?php if ($result->section || $this->params->get('show_date')) : ?>
<p class="meta">
<?php if ($this->params->get('show_date')) echo '<span>'.JText::_('PUBLISHED').': '.'</span>'.JText::sprintf('%s', JHtml::_('date',$result->created, JText::_('d. m. Y, H:i'))); ?>
<?php if ($result->section) echo JText::_('TPL_WARP_POSTED_IN').' '.$this->escape($result->section); ?>
</p>
<?php endif; ?>
</header>
<div class="content clearfix"><?php echo $result->text; ?></div>
</article>
<?php endforeach; ?>
</div>
<?php echo $this->pagination->getPagesLinks(); ?>
答案 0 :(得分:0)
我刚刚将您的新系列复制并粘贴到Joomla 2.5.6的本地托管副本中,它完全正常 - 完全没有错误!
答案 1 :(得分:0)
DateTime :: __ construct():无法在位置0(1)处解析时间字符串(19. 06. 2012):意外字符
19. 06. 2012
不是PHP的DateTime
类接受的日期格式,请参阅PHP手册页“Date Formats”以获取理解的格式列表。
答案 2 :(得分:0)
在谷歌上花了四个小时来解决这个问题,结果证明我的原因是不可写的/logs
和/tmp
文件夹。
要验证,请按以下步骤操作:
http://www.example.com/administrator/index.php?option=com_admin&view=sysinfo
logs
和tmp
是否可写以下是帮助我得出这个结论的Joomla forum topic的相关引用:
您好,我最近遇到了同样的问题,但发现了这个伎俩!
日志目录($ log_path)./ logs / Unwritable
临时目录($ tmp_path)./ tmp /不可写正确的目录路径必须是:
日志目录($ log_path)../ logs /
日志目录($ log_path)../ tmp /
答案 3 :(得分:-1)
在Joomla中,当尝试安装任何类型的扩展时,也会发生此错误,但PHP代码无法写入temp和logs目录。
如果进入系统,系统信息和目录权限,则所有权限都应该是可写的。可以在configuration.php中更改temp和logs目录的路径,也可以使用Global Configuration菜单和System and Server选项卡。