We have a theme developed for us by another developer. I recently upgraded the site from 8.5.19 to Version 9.3.8 but now have the error:
Target class \Application\Theme\MyTheme\PageTheme does not exist
(MyTheme is not the actual name)
I have edited the page_theme.php and changed the namespace:
namespace Concrete\Theme\MyTheme
to
namespace Application\Theme\MyTheme
Cleared the Application\Files directory, and cleared browser cache. Still get this error.
The site is totally offline.
First question, is there a way to disable caching in the database? Some info points to the config table, but there is nothing in there relating to caching.
Where was the package installed?
In the root/packages folder, or the application/themes folder?
If your theme was installed in the application/themes folder, the namespace would look like this:
namespace Application\Theme\Yourtheme;
If it was installed as part of a package in the root/packages folder, the namespace would look like this:
Here is the top of the page_theme file, theme name edited. The namespace was Concrete\Theme\MyTheme, but i have since changed it to Application\Theme\MyTheme
namespace Application\Theme\MyTheme;
use Concrete\Core\Page\Theme\Theme as Theme;
defined('C5_EXECUTE') or die("Access Denied.");
class PageTheme extends Theme
{
protected $pThemeName = 'MyTheme';
protected $pThemeDescription = 'MyTheme - 2020 Theme';
protected $pThemeHandle = 'MyTheme';
protected $pThemeGridFrameworkHandle = 'bootstrap3';
/**
* Register theme assets, see http://goo.gl/rpJUSy
*
*/ public function registerAssets() {
$this->providesAsset('css', 'bootstrap/*');
/* $this->providesAsset('css', 'blocks/form');
*/ $this->requireAsset('javascript', 'jquery');
}
/*/