Profile page help (could be interesting)

My app is functioning well. However, I want to add this. Just like in Facebook , one should be able to visit another user’s page through the URL (both first name and last name that are in the profile page.

Currently, when I give the above URL, I get an error page. How can I fix this? As of now when I log in I am able to clearly see another user’s profile page but I want a public URL also as above. Can anyone help me with this?

There is another catch - What if more than one user have the same name?
One cannot have the same URL for more than one user.
Perhaps I can use the unique id but is too big. Is there any small part of the unique id which is also unique so that I can generate a unique URL for every member.


In order to get a unique URL for each user of your app you can use the slug feature: Bubble manual
To properly display data to logged in users or not, you should check your privacy rules settings: Privacy rules doc

Hi thanks a lot for this info. This is good but it still does not solve the problem for cases where more than one person has the same name. What should I do in that case?

The slug will automatically be fixed with a number appended when there are raw duplicates ensuring a unique slug in the end.

that is wonderful. I was thinking I will have to write a dataflow for it. thanks a ton.

1 Like

What do I do for the users who have already registered. When I give https://www.appname/username , I still get an error page plus the bubble icon and brand name appears in the title so how can I get rid of it.

In the profile page I have given the username as a backup for the url.


You can’t use that URL structure for this in Bubble… there might be some complicated workarounds you can try (you can search the forum for info on that), but the standard Bubble URL structure is:

So you need to include the pagename in the URL path, then the slug of the Thing.

Regarding the page titles and metadata, you can set all of that in your app settings (the favicon can be set on the General tab, the rest is set on the SEO tab, although each page can also have it’s own setting which can be defined in the properties editor for the page).

For user’s who have already registered but don’t have a slug you’ll need to run a workflow to set one for them.

Hi thanks, I have fixed this issue for new users but have no idea how I should do for existing ones. I mean where and what workflow should I write?

Just set up a backend workflow, to set a thing’s slug, and set it to the first name and last name (or whatever it is you want it to be).

I’d put a condition on the workflow so it only runs if they don’t already have a slug.

Then you can run it as a bulk action on the Users from within your App data tab, or create a temporary page to trigger the workflow from.

Okay understood and tried but unlike fields that can be in a list, slugs cannot be done like that (in a list). Pl see the image. What mistake am I doing.?

I have set up a temporary page with a button so when I click the button, all users without a slug will get one.

Don’t use ‘make changes to a list of things’ - you need to use the action ‘set a thing’s slug’. then you can run that workflow on the backend on a list of Users.

It might be better to set the list of user’s to run the workflow on the backend as well, to avoid the workflow timing out in the browser - but that depends on how big the list is.

Hi earlier I thought of that only. Please see the image. This part in Bubble always confuses me…manipulating lists. What should I write here now? There is a list but it gives option for the first item, second item…I need to roll on a list.

You can only set a single thing’s slug, not a list…

So the backend workflow should have a parameter for User:

Then the workflow action should just be:


Then the workflow used to trigger that workflow should look like this (you can run this on the front or backend depending on the size of the list):

Hi thanks. I did what you said and learned about backend workflows (no idea till now). The slug is however working only when I am logged in. I want that even when the user is logged out his or her profile page should appear with the slug…just like a public profile. How can I do that?

Hi Adam,
It is all working now. However, for my own knowledge I have a couple of questions.

  1. There are 2 profile pages I have made one is for the user to update his/her profile and the other is seeprofile with only text fields. The link works only for the seeprofile page in public mode (just as for FB, linkedin) but not for updateprofile. Although this is how it should be, I still want to know why it does not work for updateprofile page. Is it due to the presence of a button or input fields? I don’t think this could be the reason as there are buttons on the seeprofile page also.

  2. In the seeprofile there are a couple of buttons that I do not want to be seen in public view. How can I disable those…are there any privacy settings that need to be done? Please help.

I don’t fully understand your question or the issues you’ve described…

but just a few things to consider…

Firstly, there’s no need to use two separate pages to do what you’ve described (although there’s nothing wrong with doing so) - you can just set up the edit details UX on the profile page, and only allow users to update their own profiles with the appropriate conditionals and privacy rules (i.e. when the Current User is the Current Page’s User).

I don’t understand the second part of your first question… maybe some screenshots or links would help make it clearer…

To answer your second question, just add conditional formatting on the buttons so they only show for certain Users.

thanks Adam, I think your suggestion for 1 is right. I was also earlier thinking of keeping only 1 profile page with conditional controls. Now that my Bubble knowledge has vastly improved, I will do this.

Regarding my second question - If on a public profile page that is seen by anyone on the internet (not necessarily logged into my site), I do not want to show certain buttons what should I do. Will using the ‘Current User’’ not logged in solve the problem?

That obviously depends on who you want to see them and who you don’t - but if you want logged in users to see them and logged out users not to, then yes that will work.

Hi Adam,
One more thing on this topic - If I want the page to be not visible at all to public when the person is logged out, what should I do. Instead I would want the person to be redirected to the Error Page.


You can create a Page Load workflow, with a condition to only run when the current User is logged out.