By Dave Parker on Wednesday, 19 November 2014
Posted in Technical Issues
Replies 7
Likes 0
Views 762
Votes 0
Hi guys.
I've noticed something funny happening on ES which has only started recently. Profiles of users are now pointing to https://guys4guys.social/easysocial/PROFILE instead of https://guys4guys.social/social/PROFILENAME on the dashboard view. However, if you click on the username, and then start looking at their profile information, the URL correctly changes back to https://guys4guys.social/social/PROFILENAME.
My understanding is that the URL path takes the form of the alias after the domain name from the menu alias. This is set to "social". This is only affecting profiles. Groups get the correct URL path of https://guys4guys.social/social/groups.
Any ideas what might be causing this?
Dave
Hi,

I believe you've recently changed the menu item alias for EasySocial Dashboard from "easysocial" to "social"? This would explain it because it seems like "easysocial/PROFILENAME" is generated when the menu item alias is "easysocial".

What I did was delete the entry of "easysocial/383-bearcub974" in backend -> SH404, and refresh the page, SH404 will then regenerate a new link with the updated alias, and it is now showing "social/383-bearcub974" properly.
·
Wednesday, 19 November 2014 12:14
·
0 Likes
·
0 Votes
·
0 Comments
·
Hi Jason...
Sorry, I may have confused you! I haven't recently changed the menu alias from "easysocial" to "social". It's always been set as "social" and hasn't changed. What is happening is that when a user creates an account now, the url to their profile is set to /easysocial/PROFILENAME when viewing the dashboard hyperlink, and when initially clicking that link to view the profile. However, when you then click any other link on their profile page, the URL correctly shows /social/PROFILENAME.
Does that clarify the issue?
Dave
·
Wednesday, 19 November 2014 16:50
·
0 Likes
·
0 Votes
·
0 Comments
·
Hi,

Ah I see. It seems like links are generated wrongly for newly registered user.

Could you advise your FTP access again? I can't seem to log in to your site's FTP with the credentials provided.
·
Wednesday, 19 November 2014 17:39
·
0 Likes
·
0 Votes
·
0 Comments
·
Hi Jason.... Maybe I entered the password wrong on my site details section... Will put it in the tab below as well as updating them.
Thanks
Dave
·
Wednesday, 19 November 2014 18:59
·
0 Likes
·
0 Votes
·
0 Comments
·
Hi,

After some deep digging on your site, it seems like the issue lies between SH404 and Joomla.

You might have to consult with the team from SH404 regarding this. Here is my full report regarding this issue, in which you will need to include when reporting to SH404.

When a user registers on your site, upon registration successfully, EasySocial will then point the user to the dashboard, in which renders SH404 to generate a link for the new user once. Take note that this process only happen once.

What SH404 does is, to find if the component has an extension file to help generate the link, in which lies in /components/com_easysocial/sef_ext/com_easysocial.php

On line 61, EasySocial calls SH404's method getMenuTitle in order to get the menu alias.

From here, this goes into the file /administrator/components/com_sh404sef/sh404sef.class.php

On line 2210, it seems like Joomla is not returning your site's menu item properly where EasySocial's menu item is missing from it, and as such, causes SH404 to not able to retrieve the alias properly.

The main issue here is when SH404 tries to get the full list of menu item from your site, the method however, is not returning the correct set of data.
·
Thursday, 20 November 2014 16:33
·
0 Likes
·
0 Votes
·
0 Comments
·
Hi Jason.

When reading your reply, something clicked. So I thought I would share what was causing the problem, just in case someone else ever experiences it.

The problem isn't with EasySocial, or sh404sef for that matter.

Here's a synopsis of my site:
GUEST USERS:
Using the Chameleon plugin, it interrogates the request to the webpage, and if the user is not logged in, it redirects them to a different template and webpage, and sets the default menu item to be the "guest-login" menu item.
REGISTERED USERS AND ABOVE:
Again, using the Chameleon plugin, it interrogates the request, and if the user is logged in, allows them to view the website, and sets the "social" menu item as default.

Now... this is where I messed up, but it's an important lesson for anyone else using Chameleon (which is actually a very good extension for doing what I wanted, which is basically to segregate the website into guests and registered user areas).

With guest users, I'd told the plugin to unpublish the main menu, of which "social" is part of this if the rule for guests succeeded. If the rule failed, then I told Chameleon to process the next rule in the chain (which will deal with the user if they are logged in!).

Spot the mistake! By telling Chameleon to unpublish them main menu for guests, when a user registered for a new account, EasySocial and sh404sef did not know the existence of the "social" menu item when creating the account, and therefore assigned the component name ("easysocial") when writing the record to the sh404sef database.

So, if anyone is using Chameleon, it's vital that you don't hide/disable the menu item that is used for EasySocial, otherwise your SEF won't point to it when a new user signs up and logs in for the first time.

Hope this helps other people who may experience similar issues.

So sorry for wasting your precious time Jason However, thanks to your description of the process on how ES and sh404sef work, I was able to track the issue down.

Dave
·
Thursday, 20 November 2014 18:03
·
0 Likes
·
0 Votes
·
0 Comments
·
Hey Dave,

Great to hear that! And no worries about wasting time. This is what our crew are here for.

On my part, I apologize for not knowing what Chameleon actually does. But it is great to hear that this is the solution.
·
Thursday, 20 November 2014 18:09
·
0 Likes
·
0 Votes
·
0 Comments
·
View Full Post