Changes for page Resources
Last modified by Alex Cotiuga on 2026/07/21 13:07
From version 12.1
edited by Alex Cotiuga
on 2026/07/03 11:10
on 2026/07/03 11:10
Change comment:
There is no comment for this version
To version 2.1
edited by Alex Cotiuga
on 2026/05/19 03:41
on 2026/05/19 03:41
Change comment:
There is no comment for this version
Summary
-
Page properties (3 modified, 0 added, 0 removed)
-
Objects (0 modified, 0 added, 1 removed)
Details
- Page properties
-
- Title
-
... ... @@ -1,1 +1,1 @@ 1 - Resources1 +resources - Default language
-
... ... @@ -1,0 +1,1 @@ 1 +en - Content
-
... ... @@ -1,124 +3,175 @@ 1 -{{include reference="PublicWebSite.MacrosAndVariables" /}} 2 - 3 3 {{velocity}} 4 -#set ($discard = $xwiki.ssx.use('PublicWebSite.WebHome')) 5 -{{html clean="false"}} 6 - ## PAGE HEADER 7 - <section class="hero hero-centered" aria-labelledby="hero-title"> 8 - <div class="container hero-inner"> 9 - <div class="hero-kicker"> 10 - <i class="fa fa-book" aria-hidden="true"></i> 11 - XWiki resources 12 - </div> 13 - <h1 id="hero-title">XWiki resources for upgrades, security and maintainability</h1> 14 - <p class="lead"> 15 - Practical articles for teams that want to keep XWiki secure, upgradeable and easier to maintain over time. 16 - </p> 17 - <div class="hero-actions"> 18 - <a class="btn btn-primary" href="$freeXWikiReviewCallURL">$freeXWikiReviewCallLabel</a> 19 - <a class="btn btn-secondary" href="$xwiki.getURL('services.WebHome')">View XWiki services</a> 20 - </div> 21 - </div> 22 - </section> 23 - ## RESOURCE CARDS 24 - #set ($resourceItems = [{ 25 - 'title': 'What should an XWiki security review include', 26 - 'icon': 'shield', 27 - 'url': 'resources.xwiki-security-review', 28 - 'content': 'A practical overview of what to review in an XWiki instance: version status, access rights, authentication, extensions, custom code, infrastructure, backups and operations.', 29 - 'linkLabel': 'Read article' 30 - },{ 31 - 'title': 'Why upgrade your XWiki instance', 32 - 'icon': 'refresh', 33 - 'url': 'resources.why-upgrade-xwiki', 34 - 'content': 'A practical explanation of why regular XWiki upgrades matter for security, stability, extension compatibility and long-term maintenance.', 35 - 'linkLabel': 'Read article' 36 - },{ 37 - 'title': 'How to customize XWiki safely', 38 - 'icon': 'code', 39 - 'url': 'resources.xwiki-custom-development', 40 - 'content': 'Guidance for organizing XWiki custom code, scripts, templates and extensions so they remain easier to maintain across upgrades.', 41 - 'linkLabel': 'Read article' 42 - },{ 43 - 'title': 'From Google Workspace to XWiki', 44 - 'icon': 'exchange', 45 - 'url': 'resources.from-google-workspace-to-xwiki', 46 - 'content': 'A practical transition guide explaining what can move from Google Workspace to XWiki, what should remain in office collaboration tools, and which open-source alternatives can complete the stack.', 47 - 'linkLabel': 'Read guide' 48 - }]) 49 - <section id="resources-list" class="services resources-index-page" aria-labelledby="resources-title"> 50 - <div class="container"> 51 - <h2 id="resources-title">Useful XWiki resources</h2> 52 - <p class="section-intro"> 53 - Focused guidance for production XWiki platforms, covering upgrade planning, custom development, 54 - maintainability and safer long-term evolution. 55 - </p> 56 - <div class="services-grid resources-grid"> 57 - #foreach ($entry in $resourceItems) 58 - <article class="service resource-card"> 59 - <div class="service-icon" aria-hidden="true"> 60 - <i class="fa fa-$entry.icon"></i> 61 - </div> 62 - <div class="service-body"> 63 - <h4>$entry.title</h4> 64 - <p>$entry.content</p> 65 - <p class="card-link"> 66 - <a href="$xwiki.getURL($entry.url)">$entry.linkLabel</a> 67 - </p> 68 - </div> 69 - </article> 70 - #end 71 - </div> 72 - </div> 73 - </section> 74 - ## UPCOMING TOPICS 75 - #set ($upcomingTopicItems = [{ 76 - 'title': 'Access rights governance', 77 - 'content': 'How to keep XWiki groups, inherited permissions, restricted areas and page-level exceptions understandable over time.' 78 - },{ 79 - 'title': 'Authentication and access control', 80 - 'content': 'Why SSO, LDAP, OIDC, SAML and MFA should be reviewed together with XWiki groups, rights and fallback access.' 81 - },{ 82 - 'title': 'Backup and restore validation', 83 - 'content': 'Why backups are only useful when restore expectations, included data and recovery steps are clearly understood.' 84 - }]) 85 - <section class="split-section" aria-labelledby="upcoming-title"> 86 - <div class="container"> 87 - <div class="split-grid"> 88 - <div class="split-copy"> 89 - <h2 id="upcoming-title">More practical XWiki topics coming soon</h2> 90 - <p> 91 - This section will expand the XWiki security review series with focused topics such as access rights, 92 - authentication, script and programming rights, backup validation, extension review and operational practices. 93 - </p> 94 - <p> 95 - The goal is to publish useful guidance that helps teams make better decisions before an upgrade, 96 - customization, migration or long-term maintenance engagement. 97 - </p> 98 - </div> 99 - <ol class="process-list"> 100 - #foreach ($entry in $upcomingTopicItems) 101 - <li> 102 - <strong>$entry.title</strong> 103 - $entry.content 104 - </li> 105 - #end 106 - </ol> 107 - </div> 108 - </div> 109 - </section> 110 - ## CTA 111 - <section class="cta-section" aria-labelledby="resource-cta-title"> 112 - <div class="container"> 113 - <div class="cta-panel"> 114 - <h2 id="resource-cta-title">Need help with an XWiki project?</h2> 115 - <p> 116 - If your XWiki instance needs an upgrade, custom development, integration work or a technical review, 117 - Agnease can help evaluate the current state and define practical next steps. 118 - </p> 119 - <a class="btn btn-primary" href="$xwiki.getURL('contact.WebHome')">Contact Agnease</a> 120 - </div> 121 - </div> 122 - </section> 123 -{{/html}} 2 +#if ("$!xcontext.userReference" == '') 3 + #set ($discard = $xwiki.ssx.use('PublicWebSite.WebHome')) 4 + {{html clean="false"}} 5 + 6 + <li class="dropdown agnease-services-menu"> 7 + <a class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false" 8 + href="$xwiki.getURL('services.WebHome')"> 9 + Services <span class="caret"></span> 10 + </a> 11 + 12 + <ul class="dropdown-menu agnease-services-dropdown"> 13 + <li> 14 + <a href="$xwiki.getURL('services.WebHome')"> 15 + <span class="menu-icon"><i class="fa fa-th-large" aria-hidden="true"></i></span> 16 + <span class="menu-text"> 17 + <strong>All XWiki services</strong> 18 + <small>Overview of available services</small> 19 + </span> 20 + </a> 21 + </li> 22 + 23 + <li role="separator" class="divider"></li> 24 + 25 + <li> 26 + <a href="$xwiki.getURL('services.xwiki-upgrades')"> 27 + <span class="menu-icon"><i class="fa fa-refresh" aria-hidden="true"></i></span> 28 + <span class="menu-text"> 29 + <strong>XWiki Upgrade Services</strong> 30 + <small>Safe LTS upgrades and validation</small> 31 + </span> 32 + </a> 33 + </li> 34 + 35 + <li> 36 + <a href="$xwiki.getURL('services.xwiki-maintenance-support')"> 37 + <span class="menu-icon"><i class="fa fa-life-ring" aria-hidden="true"></i></span> 38 + <span class="menu-text"> 39 + <strong>Support & Maintenance</strong> 40 + <small>Ongoing care for production instances</small> 41 + </span> 42 + </a> 43 + </li> 44 + 45 + <li> 46 + <a href="$xwiki.getURL('services.xwiki-development-integrations')"> 47 + <span class="menu-icon"><i class="fa fa-cogs" aria-hidden="true"></i></span> 48 + <span class="menu-text"> 49 + <strong>Development & Integrations</strong> 50 + <small>Applications, workflows and APIs</small> 51 + </span> 52 + </a> 53 + </li> 54 + 55 + <li> 56 + <a href="$xwiki.getURL('services.xwiki-migrations')"> 57 + <span class="menu-icon"><i class="fa fa-exchange" aria-hidden="true"></i></span> 58 + <span class="menu-text"> 59 + <strong>XWiki Migrations</strong> 60 + <small>Move knowledge into XWiki</small> 61 + </span> 62 + </a> 63 + </li> 64 + 65 + <li> 66 + <a href="$xwiki.getURL('services.xwiki-authentication-access-control')"> 67 + <span class="menu-icon"><i class="fa fa-lock" aria-hidden="true"></i></span> 68 + <span class="menu-text"> 69 + <strong>Authentication & Access Control</strong> 70 + <small>SSO, LDAP, groups and rights</small> 71 + </span> 72 + </a> 73 + </li> 74 + 75 + <li> 76 + <a href="$xwiki.getURL('services.xwiki-security-review')"> 77 + <span class="menu-icon"><i class="fa fa-shield" aria-hidden="true"></i></span> 78 + <span class="menu-text"> 79 + <strong>XWiki Security Review</strong> 80 + <small>Version, rights and configuration review</small> 81 + </span> 82 + </a> 83 + </li> 84 + </ul> 85 + </li> 86 + 87 + <li class="dropdown agnease-products-menu"> 88 + <a class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false" 89 + href="$xwiki.getURL('products.WebHome')"> 90 + Products <span class="caret"></span> 91 + </a> 92 + 93 + <ul class="dropdown-menu agnease-products-dropdown"> 94 + <li> 95 + <a href="$xwiki.getURL('products.WebHome')"> 96 + <span class="menu-icon"><i class="fa fa-cube" aria-hidden="true"></i></span> 97 + <span class="menu-text"> 98 + <strong>All products</strong> 99 + <small>XWiki applications and extensions</small> 100 + </span> 101 + </a> 102 + </li> 103 + 104 + <li role="separator" class="divider"></li> 105 + 106 + <li> 107 + <a href="$xwiki.getURL('products.xwiki-two-factor-authentication')"> 108 + <span class="menu-icon"><i class="fa fa-lock" aria-hidden="true"></i></span> 109 + <span class="menu-text"> 110 + <strong>Two-Factor Authentication</strong> 111 + <small>Second verification step for XWiki login</small> 112 + </span> 113 + </a> 114 + </li> 115 + 116 + <li> 117 + <a href="$xwiki.getURL('products.xwiki-task-flow')"> 118 + <span class="menu-icon"><i class="fa fa-check-square-o" aria-hidden="true"></i></span> 119 + <span class="menu-text"> 120 + <strong>Task Flow for XWiki</strong> 121 + <small>Lightweight tasks inside XWiki pages</small> 122 + </span> 123 + </a> 124 + </li> 125 + </ul> 126 + </li> 127 + 128 + <li class="dropdown agnease-resources-menu"> 129 + <a class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false" 130 + href="$xwiki.getURL('resources.WebHome')"> 131 + Resources <span class="caret"></span> 132 + </a> 133 + 134 + <ul class="dropdown-menu agnease-resources-dropdown"> 135 + <li> 136 + <a href="$xwiki.getURL('resources.WebHome')"> 137 + <span class="menu-icon"><i class="fa fa-book" aria-hidden="true"></i></span> 138 + <span class="menu-text"> 139 + <strong>All resources</strong> 140 + <small>Practical XWiki guidance</small> 141 + </span> 142 + </a> 143 + </li> 144 + 145 + <li role="separator" class="divider"></li> 146 + 147 + <li> 148 + <a href="$xwiki.getURL('resources.why-upgrade-xwiki')"> 149 + <span class="menu-icon"><i class="fa fa-refresh" aria-hidden="true"></i></span> 150 + <span class="menu-text"> 151 + <strong>Why upgrade XWiki regularly?</strong> 152 + <small>Security, stability and maintenance risks</small> 153 + </span> 154 + </a> 155 + </li> 156 + 157 + <li> 158 + <a href="$xwiki.getURL('resources.xwiki-custom-development')"> 159 + <span class="menu-icon"><i class="fa fa-code" aria-hidden="true"></i></span> 160 + <span class="menu-text"> 161 + <strong>Safe XWiki customization</strong> 162 + <small>Custom code without upgrade problems</small> 163 + </span> 164 + </a> 165 + </li> 166 + </ul> 167 + </li> 168 + 169 + <li> 170 + <a href="$xwiki.getURL('contact.WebHome')">Contact</a> 171 + </li> 172 + 173 + {{/html}} 174 +#end 124 124 {{/velocity}}
- Agnease.Code.SEODetailsClass[0]
-
- metaDescription
-
... ... @@ -1,1 +1,0 @@ 1 -Practical XWiki resources from Agnease covering upgrades, security, custom development, maintainability, workflows and long-term platform care. - metaTitle
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki Resources and Guides for Upgrades, Security and Development | Agnease