如何解决Joomla错误“此显示的模板不可用”。

时间:2014-03-29 00:17:12

标签: php joomla migration joomla3.0

非常感谢您花时间阅读我的问题, 我过去几年使用iPages作为主持人,现在我有了一个新的托管服务提供商,所以我正在迁移我的Joomla! 3.1.5从iPage到我的新托管服务提供商。

以下是我遵循的步骤^1

  1. FTP备份iPage
  2. Newhosting上的FTP上传
  3. 数据库导出(来自旧服务器)
  4. 数据库导入(到新服务器)
  5. Configuration.php修改
  6. 这是配置细节,这些只是我用新数据改变的细节

    var $host = 'localhost'; 
    var $user = 'the_db_username';
    var $password = 'the_db_password';
    

    毕竟,我无法看到网站的上一个外观。当我登录时,我在主页上获得登录选项说:

      

    “此显示的模板不可用。请与网站管理员联系。”

    我可以使用管理员凭据访问管理面板,但是我到达那里的错误消息相同。

    This is the home page of website

    This is admin panel

    任何建议.. !!

    由于

3 个答案:

答案 0 :(得分:6)

如果管理员或网站的所选模板(在administrator-> extensions->模板中)不可用,则会引发此错误。

由于您进行了完整的ftp备份,因此它可以是以下两种方法之一:

  • 模板未包含在备份中;可能是因为错误的权限(有时ftp帐户和网络帐户在不同的用户下运行)

  • 运行当前apache的用户无法读取该模板:它可能在新服务器上具有错误的权限或错误的所有权或两者都有。

根据上述情况,您可能需要重新检查整个安装,并运行更新包以保证安全。

第三种,尽管不太可能,选择是在数据库中#___templates表是 - 出于某些有趣的原因 - 没有复制或有些损坏。

错误消息有点误导(什么是显示?)。

使用解决方案更新:

消息在libraries/cms/application/site.php文件中通过以下行生成:

if (!file_exists(JPATH_THEMES . '/' . $template->template . '/index.php'))
{
    $this->enqueueMessage(JText::_('JERROR_ALERTNOTEMPLATE'), 'error');

JPATH_THEMES/includes/defines.php中定义为

define('JPATH_THEMES',        JPATH_BASE . '/templates');

所以错误绝对是缺少的模板。

我只需选择扩展程序 - >模板 - > **并将** Bluestork 作为默认模板,就可以在另一个Joomla 3.2网站上重现这一点。将其切换为 Isis ,问题就会消失;我想你可以为选择另一个模板的前端做同样的事情。

答案 1 :(得分:0)

我在Joomla 3.8.6的管理员后端中遇到此问题(从早期的Joomla版本更新后)。我已经尝试将默认模板切换到Isis,但在我的情况下,这并没有解决它,其他解决方案都没有工作。最终我能够通过编辑phpMyAdmin中的数据库来修复它,如下所示:打开_template_styles并更改了" home" " isis"的价值模板从0到1。

答案 2 :(得分:0)

我也有这个问题,看来我的3.x版本仍在寻找bluestork(仅在Joomla!2.5.x之前可用)

我能够通过以下方式修复它 扩展>管理>发现(按模板过滤),然后从2.5.x卸载bluestork和其他未处理的东西