@prefix sioc: <http://rdfs.org/sioc/ns#> .
@prefix dc: <http://purl.org/dc/elements/1.1/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix content: <http://purl.org/rss/1.0/modules/content/> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .

<https://lhero.org/?post_type=lh-portfolio&#038;p=151886>
  a sioc:Post ;
  dc:title "LH Multiple Roles" ;
  dcterms:identifier 151886 ;
  dc:modified "2026-10-20T15:52:33Z"^^xsd:dateTime ;
  dc:created "2026-10-20T15:52:33Z"^^xsd:dateTime ;
  sioc:link <https://lhero.org/portfolio/lh-multiple-roles/> ;
  sioc:has_creator <https://lhero.org/author/1/#account> ;
  sioc:has_container <https://lhero.org/#posts> ;
  content:encoded "<ul class=\"lh_portfolio-meta\"><li><strong>Type:</strong> Plugin</li><li><strong>Lifecycle Stage:</strong> Active</li></ul><p class=\"wp-block-paragraph\">Gives every user up to one role in each of three buckets, so the roles that different plugins add stop competing for a single slot.</p><ul class=\"wp-block-list\"><li><strong>Role</strong>: the site role, meaning the WordPress core roles plus any custom role that is not in another bucket.</li><li><strong>Forum role</strong>: the bbPress roles.</li><li><strong>Shop role</strong>: the WooCommerce roles.</li></ul><p class=\"wp-block-paragraph\">The Add User and Edit User screens show one select per bucket, and the users list shows one column per bucket. The site role uses WordPress&#8217;s own role select, so core&#8217;s checks keep working. The forum role is saved through bbPress&#8217;s own handling. The shop role is restored after WordPress resets a user&#8217;s roles on save, and is carried through multisite invitations and signups. A bucket is hidden on any site where the plugin behind it is not active.</p><p class=\"wp-block-paragraph\">Which roles belong to the forum and shop buckets can be changed with filters.</p><ul class=\"lh_portfolio-doc-toc\"><li><a href=\"https://lhero.org/portfolio/lh-multiple-roles/architecture/\">Architecture</a></li><li><a href=\"https://lhero.org/portfolio/lh-multiple-roles/changelog/\">Changelog</a></li></ul>"^^rdf:XMLLiteral ;
  sioc:content "Type: PluginLifecycle Stage: ActiveGives every user up to one role in each of three buckets, so the roles that different plugins add stop competing for a single slot.Role: the site role, meaning the WordPress core roles plus any custom role that is not in another bucket.Forum role: the bbPress roles.Shop role: the WooCommerce roles.The Add User and Edit User screens show one select per bucket, and the users list shows one column per bucket. The site role uses WordPress&#8217;s own role select, so core&#8217;s checks keep working. The forum role is saved through bbPress&#8217;s own handling. The shop role is restored after WordPress resets a user&#8217;s roles on save, and is carried through multisite invitations and signups. A bucket is hidden on any site where the plugin behind it is not active.Which roles belong to the forum and shop buckets can be changed with filters.ArchitectureChangelog" ;
  sioc:topic <https://lhero.org/lh_portfolio-type/plugin/>, <https://lhero.org/lh_portfolio-lifecycle-stage/active/>, <https://lhero.org/?taxonomy=lh_portfolio-tags&term=users>, <https://lhero.org/?taxonomy=lh_portfolio-tags&term=multisite>, <https://lhero.org/?taxonomy=lh_portfolio-tags&term=woocommerce>, <https://lhero.org/?taxonomy=lh_portfolio-tags&term=bbpress>, <https://lhero.org/?taxonomy=lh_portfolio-tags&term=roles>, <https://lhero.org/?taxonomy=author&term=cap-1> .

<https://lhero.org/author/1/#account> rdfs:seeAlso <https://lhero.org/author/1/?feed=lhrdf&format=turtle> .
<https://lhero.org/lh_portfolio-type/plugin/> rdfs:seeAlso <https://lhero.org/lh_portfolio-type/plugin/?feed=lhrdf&format=turtle> .
<https://lhero.org/lh_portfolio-lifecycle-stage/active/> rdfs:seeAlso <https://lhero.org/lh_portfolio-lifecycle-stage/active/?feed=lhrdf&format=turtle> .
<https://lhero.org/?taxonomy=lh_portfolio-tags&term=users> rdfs:seeAlso <https://lhero.org/?taxonomy=lh_portfolio-tags&term=users&feed=lhrdf&format=turtle> .
<https://lhero.org/?taxonomy=lh_portfolio-tags&term=multisite> rdfs:seeAlso <https://lhero.org/?taxonomy=lh_portfolio-tags&term=multisite&feed=lhrdf&format=turtle> .
<https://lhero.org/?taxonomy=lh_portfolio-tags&term=woocommerce> rdfs:seeAlso <https://lhero.org/?taxonomy=lh_portfolio-tags&term=woocommerce&feed=lhrdf&format=turtle> .
<https://lhero.org/?taxonomy=lh_portfolio-tags&term=bbpress> rdfs:seeAlso <https://lhero.org/?taxonomy=lh_portfolio-tags&term=bbpress&feed=lhrdf&format=turtle> .
<https://lhero.org/?taxonomy=lh_portfolio-tags&term=roles> rdfs:seeAlso <https://lhero.org/?taxonomy=lh_portfolio-tags&term=roles&feed=lhrdf&format=turtle> .
<https://lhero.org/?taxonomy=author&term=cap-1> rdfs:seeAlso <https://lhero.org/?taxonomy=author&term=cap-1&feed=lhrdf&format=turtle> .
