Grav Admin backend broke after installing plugin

Howdy. Loving my experience thus far with converting my Wordpress site to Grav, but I’ve come across a killer bug and would hope some of you lovely people could help me figure it out - or just revert what happened.

Basically, I had my admin backend up and running and decided to install the Google-Maps plugin, hoping it would make things easier to work with. Upon clicking install the site stalled and once it refreshed itself (not me force-refreshing it), it showed the following error/log pages. I attempted to delete the plugin from the “plugins” directory, but that caused the admin panel to redirect to the 404 page.

I am currently running this locally on my MacBook Pro.

Thanks in advance.

EDIT: The main website continues to work, only the admin panel is broken.

  • grav/logs/grav.log *
[2016-05-16 22:53:52] grav.CRITICAL: Cannot redeclare class Grav\Plugin\Shortcodes\MapShortcode - Trace: #0 /Library/WebServer/Documents/grav/vendor/filp/whoops/src/Whoops/Run.ph p(357): Whoops\Run->handleError(64, 'Cannot redeclar...', '/Library/WebSer...', 35) #1 [internal func tion]: Whoops\Run->handleShutdown() #2 {main} [] []
[2016-05-16 22:53:56] grav .CRITICAL: Cannot redeclare class Grav\Plugin\Shortcodes\MapShortcode - Trace: #0 /Library/WebServer/Documents/grav/vendor/filp/whoops/src/Whoops/Run.ph p(357): Whoops\Run->handleError(64, 'Cannot redeclar...', '/Library/WebSer...', 35) #1 [internal function]: Whoops\Run->handleShutdown() #2 {main} [] []
[2016-05-16 22:54:03] grav.CRITICAL: Cannot redeclare class Grav\Plugin\Shortcodes\MapShortcode - Trace: #0 /Library/WebServer/Documents/grav/vendor/filp/whoops/src/Whoops/Run.ph p(357): Whoops\Run->handleError(64, 'Cannot redeclar...', '/Library/WebSer...', 35) #1 [internal function]: Whoops\Run->handleShutdown() #2 {main} [] []
[2016-05-16 22:54:07] grav.CRITICAL: Cannot redeclare class Grav\Plugin\Shortcodes\MapShortcode - Trace: #0 /Library/WebServer/Documents/grav/vendor/filp/whoops/src/Whoops/Run.ph p(357): Whoops\Run->handleError(64, 'Cannot redeclar...', '/Library/WebSer...', 35) #1 [internal function]: Whoops\Run->handleShutdown() #2 {main} [] []
[2016-05-16 22:54:40] grav.CRITICAL: Template "error.html.twig" is not defined. - Trace: #0 /Library/WebServer/Documents/grav/system/src/Grav/Common/Grav.php(186) : Grav\Common\Twig\Twig->processSite(NULL) #1 /Library/WebServer/Documents/grav/vendor/pimple/pimple/src/Pimple/Cont ainer.php(113): Grav\Common\Grav::Grav\Common\{closure}(Object(Grav\Common\Grav)) #2 /Library/WebServer/Documents/grav/system/src/Grav/Common/Grav.php(288) : Pimple\Container->offsetGet('output') #3 /Library/WebServer/Documents/grav/index.php(38): Grav\Common\Grav->process() #4 {main} [] []
[2016-05-16 22:55:39] grav.CRITICAL: Template "error.html.twig" is not defined. - Trace: #0 /Library/WebServer/Documents/grav/system/src/Grav/Common/Grav.php(186) : Grav\Common\Twig\Twig->processSite(NULL) #1 /Library/WebServer/Documents/grav/vendor/pimple/pimple/src/Pimple/Cont ainer.php(113): Grav\Common\Grav::Grav\Common\{closure}(Object(Grav\Common\Grav)) #2 /Library/WebServer/Documents/grav/system/src/Grav/Common/Grav.php(288) : Pimple\Container->offsetGet('output') #3 /Library/WebServer/Documents/grav/index.php(38): Grav\Common\Grav->process() #4 {main} [] []
[2016-05-16 23:01:06] grav.CRITICAL: Cannot redeclare class Grav\Plugin\Shortcodes\MapShortcode - Trace: #0 /Library/WebServer/Documents/grav/vendor/filp/whoops/src/Whoops/Run.ph p(357): Whoops\Run->handleError(64, 'Cannot redeclar...', '/Library/WebSer...', 35) #1 [internal function]: Whoops\Run->handleShutdown() #2 {main} [] []
  • Error Page Exception *
Whoops\Exception\ErrorException thrown with message "Cannot redeclare class Grav\Plugin\Shortcodes\MapShortcode"

Stacktrace:
#0 Whoops\Exception\ErrorException in /Library/WebServer/Documents/grav/user/plugins/google-maps/shortcodes/ MapShortcode.php:35
  • Environment & Details *

GET Data empty
POST Data empty
Files empty
Cookies
grav-site-219fb32-admin	
"fnabaj32kjssed89rrffolr6d5"
grav-site-219fb32	
"rob9q6gmdgikmhk2hl77q33vf0"
Session
user	
User {▼
  #gettersVariable: "items"
  #items: []
  #blueprints: null
  #storage: null
}
Server/Request Data
REDIRECT_STATUS	
"200"
HTTP_HOST	
"localhost"
HTTP_CONNECTION	
"keep-alive"
HTTP_CACHE_CONTROL	
"max-age=0"
HTTP_ACCEPT	
"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*; q=0.8"
HTTP_UPGRADE_INSECURE_REQUESTS	
"1"
HTTP_USER_AGENT	
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36"
HTTP_DNT	
"1"
HTTP_ACCEPT_ENCODING	
"gzip, deflate, sdch"
HTTP_ACCEPT_LANGUAGE	
"en-US,en;q=0.8"
HTTP_COOKIE	
"grav-site-219fb32-admin=fnabaj32kjssed89rrffolr6d5; grav-site-219fb32=rob9q6gmdgikmhk2hl77q33vf0"
PATH	
"/usr/bin:/bin:/usr/sbin:/sbin"
SERVER_SIGNATURE	
""
SERVER_SOFTWARE	
"Apache/2.4.16 (Unix) PHP/5.5.27"
SERVER_NAME	
"localhost"
SERVER_ADDR	
"::1"
SERVER_PORT	
"80"
REMOTE_ADDR	
"::1"
DOCUMENT_ROOT	
"/Library/WebServer/Documents"
REQUEST_SCHEME	
"http"
CONTEXT_PREFIX	
""
CONTEXT_DOCUMENT_ROOT	
"/Library/WebServer/Documents"
SERVER_ADMIN	
"you@example.com"
SCRIPT_FILENAME	
"/Library/WebServer/Documents/grav/index.php"
REMOTE_PORT	
"57708"
REDIRECT_URL	
"/grav/cp"
GATEWAY_INTERFACE	
"CGI/1.1"
SERVER_PROTOCOL	
"HTTP/1.1"
REQUEST_METHOD	
"GET"
QUERY_STRING	
""
REQUEST_URI	
"/grav/cp"
SCRIPT_NAME	
"/grav/index.php"
PHP_SELF	
"/grav/index.php"
REQUEST_TIME_FLOAT	
1463464866.286
REQUEST_TIME	
1463464866
Environment Variables empty
Registered Handlers
0. Whoops\Handler\PrettyPageHandler
1. Whoops\Handler\CallbackHandler
---

Can’t figure out how to edit the darn post. Unfortunately, it appears as though I cannot view any other pages. The site is completely broken.

Did you try editing the .yaml file for the plugin, and setting enabled: false? By its very nature the issue caused by the plugin is contained as it does not altar Grav’s core files, so disabling it and clearing-cache should resolve any issue.

It seems both the shortcode and google-maps plugin have the same class. You probably should let the authors of both of those plugins know (via github issues links) so one of them can change the classname or namespace.

But to get yourself running again, as @gingah says, you can add a user/config/plugins/shortcode.yaml file and set:

enabled: false

Or you can simply delete the user/plugins/shortcode folder to remove the plugin and get things working agian.