If I have thousands of lists......how to do better?

6 years 5 months ago - 6 years 5 months ago #298818 by mk3

krileon wrote: Creating thousands of menu items is not maintainable.

What you proposed again is no different than the filters as you can already pre-filter a userlist from GET. For example create an External URL menu item to the below and it'd filter cb_country to USA.

index.php?option=com_comprofiler&view=userslist&cb_country=USA

But Joomla does not utilize SEO for External URL menu items. What you're needing is to be able to create an internal menu item with Community Builder > Userlist menu type and to be able to specify the filters there, but again that's still having to maintain thousands of menu items which is not maintainable.

I'm starting to understand a little bit more...but still not enough.

Just create custom htaccess rewrite rules and utilize 1 menu item and 1 userlist.

Could you please explain more in details here? And how could I do that if I do not want to use any external SEO extension? How would I than treat my SEO for each list (by countries, citys...) as it seems to be 100% virtual userlists?

custom htaccess rewrite rules

Isn't thousands rewrite rules in htaccess file bad? I've heard the htaccess file shouldn't be that big.

Please Log in to join the conversation.

6 years 5 months ago #298821 by krileon

Could you please explain more in details here? And how could I do that if I do not want to use any external SEO extension? How would I than treat my SEO for each list (by countries, citys...) as it seems to be 100% virtual userlists?

You'll have to write a custom mod_rewrite rule and add it to your htaccess file.

Isn't thousands rewrite rules in htaccess file bad? I've heard the htaccess file shouldn't be that big.

No, mod_rewrite rules can utilize REGEXP so you'd have 1 rewrite rule, 1 menu item, and 1 userlist to cover your entire needs. See the below guide to help you get started.

httpd.apache.org/docs/2.0/misc/rewriteguide.html

So ideally you'd create a Joomla menu item to your userlist. Lets just say its menu alias is "members", which gives you the below URL.

example.com/members

You'll probably want a rewrite rule to rewrite something like the below.

example.com/members/usa

That'd send them to the raw URL like the below, but they'll see the above in their browser.

index.php?option=com_comprofiler&view=userslist&cb_country=usa&Itemid=MENU_ID_HERE


Kyle (Krileon)
Community Builder Team Member
Before posting on forums: Read FAQ thoroughly + Read our Documentation + Search the forums
CB links: Documentation - Localization - CB Quickstart - CB Paid Subscriptions - Add-Ons - Forge
--
If you are a Professional, Developer, or CB Paid Subscriptions subscriber and have a support issue please always post in your respective support forums for best results!
--
If I've missed your support post with a delay of 3 days or greater and are a Professional, Developer, or CBSubs subscriber please send me a private message with your thread and will reply when possible!
--
Please note I am available Monday - Friday from 8:00 AM CST to 4:00 PM CST. I am away on weekends (Saturday and Sunday) and if I've missed your post on or before a weekend after business hours please wait for the next following business day (Monday) and will get to your issue as soon as possible, thank you.
--
My role here is to provide guidance and assistance. I cannot provide custom code for each custom requirement. Please do not inquire me about custom development.

Please Log in to join the conversation.

6 years 5 months ago - 6 years 5 months ago #298826 by mk3

krileon wrote:

Could you please explain more in details here? And how could I do that if I do not want to use any external SEO extension? How would I than treat my SEO for each list (by countries, citys...) as it seems to be 100% virtual userlists?

You'll have to write a custom mod_rewrite rule and add it to your htaccess file.

Isn't thousands rewrite rules in htaccess file bad? I've heard the htaccess file shouldn't be that big.

No, mod_rewrite rules can utilize REGEXP so you'd have 1 rewrite rule, 1 menu item, and 1 userlist to cover your entire needs. See the below guide to help you get started.

httpd.apache.org/docs/2.0/misc/rewriteguide.html

So ideally you'd create a Joomla menu item to your userlist. Lets just say its menu alias is "members", which gives you the below URL.

example.com/members

You'll probably want a rewrite rule to rewrite something like the below.

example.com/members/usa

That'd send them to the raw URL like the below, but they'll see the above in their browser.

index.php?option=com_comprofiler&view=userslist&cb_country=usa&Itemid=MENU_ID_HERE

Ok, great explanation, thanks! I think I know how to do that! :) I just need to name Country fields values like "usa", "ch", "fr"... and use those same values in htaccess rewrite rule.

However,
1) could you please explain more in details : how would I than treat my SEO for each rewrited by htaccess list (by countries, citys...) - where will I put the metatags (keywords, description) data for each "virtual" userlist without using external SEO extention?

2) just thought of another very important moment: as we were discussing it in another topic, my site is multilanguage, so as Google says, there must be hreflang tag in the HEAD section of the code. I know that a possibility to make it correcty (and make appear this tag in the code) is to create same menu items for each language and link them in the Associations tab of menu item members. Once again it is possible to achieve this by creating manually thousands of menu items... But how on earth can I manage to do so, by using rewrite rules with htaccess?

PS: this kind of questions are really annoying and blocking me in my process :(

Please Log in to join the conversation.

6 years 5 months ago - 6 years 5 months ago #298828 by krileon

However,
could you please explain more in details : how would I than treat my SEO for each rewrited by htaccess list (by countries, citys...) - where will I put the metatags (keywords, description) data for each "virtual" userlist without using external SEO extention?

You can't without an SEF extension or I guess CB Auto Actions to insert metatags. SEF extension would likely be the easiest approach and offer the most customization. Joomla does not offer strong SEF out of the box. It's all done on a per menu item basis, which can be limiting based off needs.

You're just not going to have strong SEO without the help of an SEO extension like sh404SEF or something similar since you need dynamic URLs and dynamic metadata. If you only needed dynamic URLs that's easy enough using custom rewrite rules as already explained. Your only other option is to just go ahead with creating thousands of userlists and thousands of menu items.

I've added a feature ticket to review support for filters in the userlist menu type. This would at least mean you'd only need 1 userlist, but you'd still need thousands of menu items. No idea when I'll have this implemented as am currently busy with a CB Conditional release.

forge.joomlapolis.com/issues/6844

2) just thought of another very important moment: as we were discussing it in another topic, my site is multilanguage, so as Google says, there must be hreflang tag in the HEAD section of the code. I know that a possibility to make it correcty (and make appear this tag in the code) is to create same menu items for each language and link them in the Associations tab of menu item members. Once again it is possible to achieve this by creating manually thousands of menu items... But how on earth can I manage to do so, by using rewrite rules with htaccess?

You'd have 1 menu item to your userlist per language so maybe 1-10 menu items. Your htaccess rewrite rule should see the language tag added by Joomlas language filter plugin and you can send them to the appropriate userlist based off that. Otherwise I don't know and I guess you'd need a SEF extension.


Kyle (Krileon)
Community Builder Team Member
Before posting on forums: Read FAQ thoroughly + Read our Documentation + Search the forums
CB links: Documentation - Localization - CB Quickstart - CB Paid Subscriptions - Add-Ons - Forge
--
If you are a Professional, Developer, or CB Paid Subscriptions subscriber and have a support issue please always post in your respective support forums for best results!
--
If I've missed your support post with a delay of 3 days or greater and are a Professional, Developer, or CBSubs subscriber please send me a private message with your thread and will reply when possible!
--
Please note I am available Monday - Friday from 8:00 AM CST to 4:00 PM CST. I am away on weekends (Saturday and Sunday) and if I've missed your post on or before a weekend after business hours please wait for the next following business day (Monday) and will get to your issue as soon as possible, thank you.
--
My role here is to provide guidance and assistance. I cannot provide custom code for each custom requirement. Please do not inquire me about custom development.
The following user(s) said Thank You: nant, mk3

Please Log in to join the conversation.

6 years 5 months ago - 6 years 5 months ago #298856 by mk3
I have the fieling, that with a SEO extention, I would also work with thousands of pages, as I would need to configure each page meta tags... So it would be the same as creating 1000's of menu items (using one userlist). So it would be the same amount of work anyway....
Am I right?

And another thought: maybe it's possible to make the Link in the Menu item active? Like on the screenshot we see, by default it's deactivated....
Attachments:

Please Log in to join the conversation.

6 years 5 months ago #298882 by krileon

I have the fieling, that with a SEO extention, I would also work with thousands of pages, as I would need to configure each page meta tags...

You'd have 1 menu item and 1 userlist. The SEO extension would then have your thousands of dynamic URL rewrites. Yes, no matter how you slice it you will be making thousands of something and that's because you want unique URLs and unique metadata per URL.

And another thought: maybe it's possible to make the Link in the Menu item active? Like on the screenshot we see, by default it's deactivated....

That's not possible. Joomla does not allow that. See my comment regarding adding filters to a userlist menu item and subsequent feature ticket.

I suggest going the mod_rewrite path and forget having URL specific metadata. I've nothing more to suggest, sorry.


Kyle (Krileon)
Community Builder Team Member
Before posting on forums: Read FAQ thoroughly + Read our Documentation + Search the forums
CB links: Documentation - Localization - CB Quickstart - CB Paid Subscriptions - Add-Ons - Forge
--
If you are a Professional, Developer, or CB Paid Subscriptions subscriber and have a support issue please always post in your respective support forums for best results!
--
If I've missed your support post with a delay of 3 days or greater and are a Professional, Developer, or CBSubs subscriber please send me a private message with your thread and will reply when possible!
--
Please note I am available Monday - Friday from 8:00 AM CST to 4:00 PM CST. I am away on weekends (Saturday and Sunday) and if I've missed your post on or before a weekend after business hours please wait for the next following business day (Monday) and will get to your issue as soon as possible, thank you.
--
My role here is to provide guidance and assistance. I cannot provide custom code for each custom requirement. Please do not inquire me about custom development.

Please Log in to join the conversation.

Moderators: beatnantkrileon
Time to create page: 0.329 seconds

Facebook Twitter LinkedIn