Changes for page Resources

Last modified by Alex Cotiuga on 2026/07/21 13:07

From version 9.3
edited by Alex Cotiuga
on 2026/05/22 09:01
Change comment: There is no comment for this version
To version 12.1
edited by Alex Cotiuga
on 2026/07/03 11:10
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -XWiki Resources and Guides
1 +Resources
Default language
... ... @@ -1,1 +1,0 @@
1 -en
Content
... ... @@ -1,7 +1,9 @@
1 +{{include reference="PublicWebSite.MacrosAndVariables" /}}
2 +
1 1  {{velocity}}
2 2  #set ($discard = $xwiki.ssx.use('PublicWebSite.WebHome'))
3 3  {{html clean="false"}}
4 -
6 + ## 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,115 @@
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 -
14 - <p class="resource-summary">
15 - Articles and practical notes about XWiki upgrades, custom development, governance, security,
16 - integrations and maintainable knowledge platforms.
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.
17 17   </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>
18 18   </div>
19 19   </section>
20 -
21 - <section class="resources-index-page">
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">
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>
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
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 -
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>
78 78   </div>
79 -
80 - <div class="resources-next">
81 - <h2>More topics coming soon</h2>
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>
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 help you evaluate the current state and define the safest next steps.
117 + 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}}