Changes for page Resources
Last modified by Alex Cotiuga on 2026/07/21 13:07
From version 10.1
edited by Alex Cotiuga
on 2026/05/22 10:08
on 2026/05/22 10:08
Change comment:
There is no comment for this version
To version 10.16
edited by Alex Cotiuga
on 2026/05/28 08:49
on 2026/05/28 08:49
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
Details
- Page properties
-
- Title
-
... ... @@ -1,1 +1,1 @@ 1 - XWikiResourcesand Guides1 +Resources - Content
-
... ... @@ -1,7 +1,7 @@ 1 1 {{velocity}} 2 2 #set ($discard = $xwiki.ssx.use('PublicWebSite.WebHome')) 3 3 {{html clean="false"}} 4 - 4 + ## PAGE HEADER 5 5 <section class="hero hero-centered" aria-labelledby="hero-title"> 6 6 <div class="container hero-inner"> 7 7 <div class="hero-kicker"> ... ... @@ -8,94 +8,113 @@ 8 8 <i class="fa fa-book" aria-hidden="true"></i> 9 9 XWiki resources 10 10 </div> 11 - 12 - <h1 id="hero-title">Practical XWiki guidance for better long-term maintenance</h1> 13 - 11 + <h1 id="hero-title">XWiki resources for upgrades, security and maintainability</h1> 14 14 <p class="lead"> 15 - Articles and practical notes about XWiki upgrades, custom development, governance, security, 16 - integrations and maintainable knowledge platforms. 13 + Practical articles for teams that want to keep XWiki secure, upgradeable and easier to maintain over time. 17 17 </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> 18 18 </div> 19 19 </section> 20 - 21 - <section class="resources-index-page"> 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"> 22 22 <div class="container"> 23 - 24 - <div class="resources-intro"> 25 - <p> 26 - XWiki is a flexible platform, but the long-term quality of an instance depends on how it is configured, 27 - customized, upgraded and maintained. These resources are written for teams that want to keep their 28 - XWiki platform stable, useful and easier to evolve over time. 29 - </p> 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 30 30 </div> 31 - 32 - <div class="resources-grid"> 33 - 34 - <article class="resource-card"> 35 - <div class="resource-card-icon"> 36 - <i class="fa fa-refresh" aria-hidden="true"></i> 37 - </div> 38 - <div class="resource-card-body"> 39 - <div class="resource-card-label">Upgrade guidance</div> 40 - <h2> 41 - <a href="$xwiki.getURL('resources.why-upgrade-xwiki')"> 42 - Why upgrading your XWiki instance should be a regular priority 43 - </a> 44 - </h2> 45 - <p> 46 - Understand why postponed upgrades can increase security exposure, compatibility risk and 47 - long-term maintenance cost. 48 - </p> 49 - <a class="resource-card-link" href="$xwiki.getURL('resources.why-upgrade-xwiki')"> 50 - Read the article 51 - <i class="fa fa-angle-right" aria-hidden="true"></i> 52 - </a> 53 - </div> 54 - </article> 55 - 56 - <article class="resource-card"> 57 - <div class="resource-card-icon"> 58 - <i class="fa fa-code" aria-hidden="true"></i> 59 - </div> 60 - <div class="resource-card-body"> 61 - <div class="resource-card-label">Custom development</div> 62 - <h2> 63 - <a href="$xwiki.getURL('resources.xwiki-custom-development')"> 64 - How to customize XWiki safely without creating upgrade problems 65 - </a> 66 - </h2> 67 - <p> 68 - Learn how to organize custom XWiki code, scripts, templates and extensions so they remain 69 - maintainable across upgrades. 70 - </p> 71 - <a class="resource-card-link" href="$xwiki.getURL('resources.xwiki-custom-development')"> 72 - Read the article 73 - <i class="fa fa-angle-right" aria-hidden="true"></i> 74 - </a> 75 - </div> 76 - </article> 77 - 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> 78 78 </div> 79 - 80 - <div class="resources-next"> 81 - <h2>More topics coming soon</h2> 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> 82 82 <p> 83 - Future resources will cover XWiki access rights, authentication, migrations, security reviews, 84 - structured applications, workflows and practical administration patterns. 85 - </p> 86 - </div> 87 - 88 - <div class="resource-cta"> 89 - <h3>Need help with an XWiki project?</h3> 90 - <p> 91 91 If your XWiki instance needs an upgrade, custom development, integration work or a technical review, 92 - we can helpyouevaluate the current state and definethe safest next steps.113 + Agnease can help evaluate the current state and define practical next steps. 93 93 </p> 94 94 <a class="btn btn-primary" href="$xwiki.getURL('contact.WebHome')">Contact Agnease</a> 95 95 </div> 96 - 97 97 </div> 98 98 </section> 99 - 100 100 {{/html}} 101 101 {{/velocity}}