如何解决Joomla错误"此显示的模板不可用".

Shi*_*iva 2 php migration joomla joomla3.0

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

这是我遵循的步骤^ 1.

  1. FTP备份iPage
  2. 在Newhosting上FTP上传
  3. 数据库导出(来自旧服务器)
  4. 数据库导入(到新服务器)
  5. Configuration.php修改

这是配置详细信息,这些只是我用新数据更改的详细信息

var $host = 'localhost'; 
var $user = 'the_db_username';
var $password = 'the_db_password';
Run Code Online (Sandbox Code Playgroud)

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

"此显示的模板不可用.请与网站管理员联系."

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

这是网站的主页

这是管理员面板

任何建议.. !!

谢谢

Ric*_*orn 6

当管理员或站点的所选模板(在管理员 - >扩展 - >模板中)不可用时,将引发此错误.

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

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

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

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

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

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

更新解决方案:

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

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

JPATH_THEMES/includes/defines.phpas中定义

define('JPATH_THEMES',        JPATH_BASE . '/templates');
Run Code Online (Sandbox Code Playgroud)

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

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