2

I'm attempting to get an instance of Civi up and running on a WordPress site. The install says it goes fine, but when I try to enter the dashboard, I get this: enter image description here

I did a test install of WP and civi on a different site using the same host and got no problems. I checked the PHP settings against each other and they are the same.

The System Status: Error link takes me no where, nor does the Configure Your Dashboard link. By which I mean the URLs they give are just

  • http://mydomain.website/civitest2/wp-admin/admin.php?page=CiviCRM#
  • http://mydomain.website/civitest2/wp-admin/admin.php?page=CiviCRM&q=civicrm/a/#/status

When I click on them, the page just loads for a while and I'm taken to this screen:

enter image description here

Update:

I've tried visiting civi features by inputing the URLs directly, for example ?page=CiviCRM&q=civicrm%2Fadmin%2Fconfigtask&reset=1 to reach the configuration checklist. I suppose the problem then is that the CiviCRM Dashboard and Toolbar do not show up when I try to access Civi. Another interesting thing is that Civi's CSS does not render when I'm in the backend. The image below is my contact group manager:

enter image description here

Update 2: As requested I checked he JS Console and hoo boy are there a lot of errors! 64 in all. Mainly 404 errors. For instance, jquery.min.js fails to load because the server responded with 404. It's the same story for most of them. Nearly all of the errors are 404s, but there are a few that read Uncaught TypeError which I'll reproduce here:

Uncaught TypeError: Cannot read property '_defaults' of undefined
    at admin.php:8
    at admin.php:102
Uncaught TypeError: $ is not a function
    at admin.php:7
    at admin.php:146
Uncaught TypeError: CRM.$ is not a function
    at admin.php:517

For all the 404 errors can navigate to that in my file in FTP and look at it, but cannot access them through my browser, which is something I can do on installs that work. For example /wp-content/plugins/civicrm/civicrm/bower_components/font-awesome/css/font-awesome.min.css is present in my files, but I can't navigate to it in browser.

Looking at the permissions to get to that file, every directory is 755 and the resource itself is 644.

Update

I checked settings.civicrm.config and found the global variable $civicrm_root was set correctly to /home/USER/public_html/civitest2/wp-content/plugins/civicrm/‌​civicrm/. I went to the Resource URLs settings page and replaced the CiviCRM Resource URL which was defaulted to [civicrm.root]/ with http://mydomain.website/civitest2/wp-content/plugins/civicrm‌​/civicrm/. On refresh, the menu and dashboard were there.

This could have been discovered faster had I bothered to read the URLs more intently and see that it was duplicating my domain root.

  • Can you expand on "takes me nowhere"? Do those links have URLs? Are the URLs correct (do they point to the site you're currently on, and are valid URLs you can visit)? Does clicking them change the browser location? – Chris Burgess Mar 2 '17 at 6:19
  • Thanks for responding. See my edits. Basically I can reach features with direct URLs, but I don't have a Civi toolbar or dash. – Tomulent Mar 2 '17 at 19:08
  • Please check your edits, the "this screen" image is missing? This sounds like it could be a javascript issue preventing links working in CiviCRM, so check your browser's console for error messages that may relate? And show (or tell) what "this screen" looks like :) The more details you give, the better answers you'll get ;) – Chris Burgess Mar 2 '17 at 20:04
  • I'm not sure why it won't show. It basically shows the civi home with no dashboard. Checking the console yielded 64 errors. See my update. Again, thanks! – Tomulent Mar 2 '17 at 21:02
  • I think this question is relevant civicrm.stackexchange.com/questions/2705/… – Tomulent Mar 2 '17 at 21:17
3

From what you describe, there are some javascript issues in your page, possibly because the URL of some required resources is misconfigured.

I'd inspect the URLs related to errors like the 404 for jquery.min.js you report, and compare those URLs with the actual locations on disk of the same files.

This can happen many ways -

  • CiviCRM was incompletely uploaded, or
  • CiviCRM is configured to request files at an incorrect path (see note below), or
  • CRM-17633: WordPress in its own directory breaks CiviCRM, or
  • the file is somehow named jQuErY.mIn.Js, or
  • permissions don't allow you to access some resources (as JohnFF suggested), or
  • some .htaccess or nginx or apache config prevents access, or
  • ... something ...

"CiviCRM is configured to request files at an incorrect path"

As of 4.7, Civi needs configuration in two places to get things working right! To check this, verify both the CIVICRM_BASEURL setting in civicrm.settings.php and the resource URLs in CiviCRM UI at Administer ➡ System Settings ➡ Resource URLs (wp-admin/admin.php?page=CiviCRM&q=civicrm%2Fadmin%2Fsetting%2Furl&reset=1).

If the files are at the correct URL but inaccessible, your webserver error logs should show information on why the webserver doesn't want to serve that file to your browser.

Hope that helps :)

  • Two questions: 1) could the fact that this is a .website domain mean anything? 2) does the stuff after the file extension matter? Here's the end of an address for a 404 resource that I pulled from the console jquery-ui.css?r=fYKIr. Again, thank you so much! Once this is resolved I'll be documenting the hell out of this. – Tomulent Mar 3 '17 at 17:11
  • 1
    "Paris is beautiful in the the Spring". So my brain completely skipped over the fact that the error file paths were repeating the WP install's subdirectory. So http://mysite.website/civitest2/civitest2/wp-content/plugins/civicrm/civicrm/bower_components/jquery/dist/jquery.js?r=fYKIr naturally returns 404 because it repeats civitest2 twice!!! The question now is how do i fix this? – Tomulent Mar 3 '17 at 18:17
  • 1
    Updating answer to reference a known current limitation of CiviCRM - it appears it doesn't like being installed to a subdirectory. If you want to be part of fixing this, the best place next would be to join the Wordpress channel on chat.civicrm.org ... see also CRM-17633: WordPress in its own directory breaks CiviCRM, as well as wiki "Wordpress installed in its own directory issues" and [Path problem in CiviCRM under WordPress]. – Chris Burgess Mar 4 '17 at 6:30
  • 1
    Actually, I really don't know if CRM-17633 is relevant to you. Do check the config settings I mentioned in answer. CRM-17633 may be about moving the wordpress codebase outside the wordpress root, but it may also relate to wordpress moved outside the webroot entirely. Asking in the Wordpress channel on chat.civicrm.org is probably your next step. – Chris Burgess Mar 4 '17 at 6:39
  • 3
    Chris, you get all my upvotes! I checked settings.civicrm.config and found the global variable $civicrm_root was set correctly to /home/USER/public_html/civitest2/wp-content/plugins/civicrm/civicrm/. I went to the Resource URLs settings page and replaced the CiviCRM Resource URL which was defaulted to [civicrm.root]/ with http://mydomain.website/civitest2/wp-content/plugins/civicrm/civicrm/. On refresh, the menu and dashboard were there! I truly appreciate your help on all this and so do my students who won't have to stress :) – Tomulent Mar 6 '17 at 18:38
1

To further expand on Chris' Answer I'll add one last thiught.

If WP is installed in it's own directory as detailed here: https://codex.wordpress.org/Giving_WordPress_Its_Own_Directory CiviCRM will not 'just work' Custom settings will be needed.

The best way to tell if WP is in it's own directory is if the public url is https://example.org but the url to wp-admin is https://example.org/subdirname/wp-admin

If that is the case, this wiki page details where we are on the process of getting CiviCRM to work with this setup and some custom configurations that you can try - https://wiki.civicrm.org/confluence/display/CRM/WordPress+installed+in+its+own+directory+issues

  • Thanks for the wiki article, it will help a lot in understanding the issue in general. Interestingly, on my other domain (incidentally a .org not a .webstie) has no problem "just working" in sub directories. At least it doesn't have the issue dealt with on this question. – Tomulent Mar 6 '17 at 22:23
0

Time to check out permission settings! 644 for files and 755 for directories. Also, check the .htaccess files, those sometimes get missed during copies.

  • I can't see any incorrect permissions, although there are a lot of files....htaccess is there and looks same as the .htaccess on the functioning domain – Tomulent Mar 1 '17 at 22:46
  • I don't see how this would lead to the symptoms described above? Have you seen that behaviour before @JohnFF? – Chris Burgess Mar 2 '17 at 20:22

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.