Changes for page Resources

Last modified by Agnease on 2026/05/28 08:53

From version 10.18
edited by Agnease
on 2026/05/28 08:50
Change comment: There is no comment for this version
To version 9.3
edited by Agnease
on 2026/05/22 09:01
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -Resources
1 +XWiki Resources and Guides
Content
... ... @@ -1,7 +1,7 @@
1 1  {{velocity}}
2 2  #set ($discard = $xwiki.ssx.use('PublicWebSite.WebHome'))
3 3  {{html clean="false"}}
4 - ## PAGE HEADER
4 +
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,113 +8,94 @@
8 8   <i class="fa fa-book" aria-hidden="true"></i>
9 9   XWiki resources
10 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.
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.
14 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 23   </div>
24 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">
20 +
21 + <section class="resources-index-page">
46 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
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>
67 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>
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 +
103 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>
79 +
80 + <div class="resources-next">
81 + <h2>More topics coming soon</h2>
111 111   <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>
112 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.
92 + we can help you evaluate the current state and define the safest next steps.
114 114   </p>
115 115   <a class="btn btn-primary" href="$xwiki.getURL('contact.WebHome')">Contact Agnease</a>
116 116   </div>
96 +
117 117   </div>
118 118   </section>
99 +
119 119  {{/html}}
120 120  {{/velocity}}