Changes for page Resources
Last modified by Alex Cotiuga on 2026/07/21 13:07
From version 1.6
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
To version 10.19
edited by Alex Cotiuga
on 2026/05/28 08:51
on 2026/05/28 08:51
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Objects (0 modified, 1 added, 0 removed)
Details
- Page properties
-
- Title
-
... ... @@ -1,1 +1,1 @@ 1 - resources1 +Resources - Content
-
... ... @@ -1,175 +1,120 @@ 1 1 {{velocity}} 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 2 +#set ($discard = $xwiki.ssx.use('PublicWebSite.WebHome')) 3 +{{html clean="false"}} 4 + ## PAGE HEADER 5 + <section class="hero hero-centered" aria-labelledby="hero-title"> 6 + <div class="container hero-inner"> 7 + <div class="hero-kicker"> 8 + <i class="fa fa-book" aria-hidden="true"></i> 9 + XWiki resources 10 + </div> 11 + <h1 id="hero-title">XWiki resources for upgrades, security and maintainability</h1> 12 + <p class="lead"> 13 + Practical articles for teams that want to keep XWiki secure, upgradeable and easier to maintain over time. 14 + </p> 15 + <div class="hero-actions"> 16 + <a class="btn btn-primary" href="https://calendly.com/alex-agnease/30min?back=1&month=2026-06"> 17 + Book a free XWiki review call 18 + </a> 19 + <a class="btn btn-secondary" href="$xwiki.getURL('services.WebHome')"> 20 + View XWiki services 21 + </a> 22 + </div> 23 + </div> 24 + </section> 25 + ## RESOURCE CARDS 26 + #set ($resourceItems = [{ 27 + 'title': 'What should an XWiki security review include', 28 + 'icon': 'shield', 29 + 'url': 'resources.xwiki-security-review', 30 + 'content': 'A practical overview of what to review in an XWiki instance: version status, access rights, authentication, extensions, custom code, infrastructure, backups and operations.', 31 + 'linkLabel': 'Read article' 32 + },{ 33 + 'title': 'Why upgrade your XWiki instance', 34 + 'icon': 'refresh', 35 + 'url': 'resources.why-upgrade-xwiki', 36 + 'content': 'A practical explanation of why regular XWiki upgrades matter for security, stability, extension compatibility and long-term maintenance.', 37 + 'linkLabel': 'Read article' 38 + },{ 39 + 'title': 'How to customize XWiki safely', 40 + 'icon': 'code', 41 + 'url': 'resources.xwiki-custom-development', 42 + 'content': 'Guidance for organizing XWiki custom code, scripts, templates and extensions so they remain easier to maintain across upgrades.', 43 + 'linkLabel': 'Read article' 44 + }]) 45 + <section id="resources-list" class="services resources-index-page" aria-labelledby="resources-title"> 46 + <div class="container"> 47 + <h2 id="resources-title">Useful XWiki resources</h2> 48 + <p class="section-intro"> 49 + Focused guidance for production XWiki platforms, covering upgrade planning, custom development, 50 + maintainability and safer long-term evolution. 51 + </p> 52 + <div class="services-grid resources-grid"> 53 + #foreach ($entry in $resourceItems) 54 + <article class="service resource-card"> 55 + <div class="service-icon" aria-hidden="true"> 56 + <i class="fa fa-$entry.icon"></i> 57 + </div> 58 + <div class="service-body"> 59 + <h4>$entry.title</h4> 60 + <p>$entry.content</p> 61 + <p class="card-link"> 62 + <a href="$xwiki.getURL($entry.url)">$entry.linkLabel</a> 63 + </p> 64 + </div> 65 + </article> 66 + #end 67 + </div> 68 + </div> 69 + </section> 70 + ## UPCOMING TOPICS 71 + #set ($upcomingTopicItems = [{ 72 + 'title': 'Upgrade planning', 73 + 'content': 'How to prepare XWiki upgrades when custom code, extensions, authentication and workflows are involved.' 74 + },{ 75 + 'title': 'Access and security', 76 + 'content': 'Practical notes on permissions, authentication options, MFA, SSO and security-aware administration.' 77 + },{ 78 + 'title': 'Maintainable customization', 79 + 'content': 'How to extend XWiki without creating unnecessary upgrade and maintenance problems.' 80 + }]) 81 + <section class="split-section" aria-labelledby="upcoming-title"> 82 + <div class="container"> 83 + <div class="split-grid"> 84 + <div class="split-copy"> 85 + <h2 id="upcoming-title">More practical XWiki topics coming soon</h2> 86 + <p> 87 + Future resources will cover XWiki access rights, authentication, migrations, security reviews, 88 + structured applications, workflows and practical administration patterns. 89 + </p> 90 + <p> 91 + The goal is to publish useful guidance that helps teams make better decisions before an upgrade, 92 + customization, migration or long-term maintenance engagement. 93 + </p> 94 + </div> 95 + <ol class="process-list"> 96 + #foreach ($entry in $upcomingTopicItems) 97 + <li> 98 + <strong>$entry.title</strong> 99 + $entry.content 100 + </li> 101 + #end 102 + </ol> 103 + </div> 104 + </div> 105 + </section> 106 + ## CTA 107 + <section class="cta-section" aria-labelledby="resource-cta-title"> 108 + <div class="container"> 109 + <div class="cta-panel"> 110 + <h2 id="resource-cta-title">Need help with an XWiki project?</h2> 111 + <p> 112 + If your XWiki instance needs an upgrade, custom development, integration work or a technical review, 113 + Agnease can help evaluate the current state and define practical next steps. 114 + </p> 115 + <a class="btn btn-primary" href="$xwiki.getURL('contact.WebHome')">Contact Agnease</a> 116 + </div> 117 + </div> 118 + </section> 119 +{{/html}} 175 175 {{/velocity}}
- Agnease.Code.SEODetailsClass[0]
-
- metaDescription
-
... ... @@ -1,0 +1,1 @@ 1 +Practical XWiki resources from Agnease covering upgrades, security, custom development, maintainability, workflows and long-term platform care. - metaTitle
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki Resources and Guides for Upgrades, Security and Development | Agnease