Public Access
feat(blog): publish "Our freelancer directory opens on 1 December. Help us get the signup right"
Adds the soft-launch news post (pipeline record id=128, category News) as blog/posts/freelancer-directory-soft-launch.html. Body pasted verbatim from the inbox source block (sha256 14f61402…, byte-identical in the page). - chrome copied from blog/posts/odoo-20-is-live-on-our-servers-here-is-what-changed.html (the newest post); inline <style> trimmed of the rules this page does not use (ul/ol, li, figure, figure img, figcaption) — the body carries no list or figure - card/OG image wired additively: img.post-image (alt = the page h1), og:image, twitter:card, and the new blog/index.json "image" key - BlogPosting JSON-LD with url == canonical - blog/index.json: one entry, first, key order id,date,area,headline,teaser,link,image (text splice, not json.dumps) - sitemap.xml: one <url>, first in the blog group, lastmod 2026-11-04 - llms.txt: one line at the top of the blog list - work/verify-html.py FILES extended with the new page Blog stays English-only. No older post touched.
This commit is contained in:
1 parent
1fd092a9f0
commit
bde9dbc48d
4 files changed
+99
No files matched your search
@@ -1,5 +1,14 @@
|
||||
{
|
||||
"posts": [
|
||||
{
|
||||
"id": "freelancer-directory-soft-launch",
|
||||
"date": "2026-11-04",
|
||||
"area": "news",
|
||||
"headline": "Our freelancer directory opens on 1 December. Help us get the signup right",
|
||||
"teaser": "We need your help! We are opening our Odoo Community Freelancer directory on 1 December. Before real clients start brows",
|
||||
"link": "blog/posts/freelancer-directory-soft-launch.html",
|
||||
"image": "https://image.office.odoo4projects.com/img/freelance_platform.png"
|
||||
},
|
||||
{
|
||||
"id": "odoo-20-is-live-on-our-servers-here-is-what-changed",
|
||||
"date": "2026-11-03",
|
||||
|
||||
@@ -0,0 +1,83 @@
|
||||
<!doctype html>
|
||||
<html lang="en-US">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Our freelancer directory opens on 1 December. Help us get the signup right | ODOO4projects</title>
|
||||
<meta name="description" content="We need your help! We are opening our Odoo Community Freelancer directory on 1 December. Before real clients start brows" />
|
||||
<link rel="canonical" href="https://odoo4projects.com/blog/posts/freelancer-directory-soft-launch.html" />
|
||||
<meta property="og:title" content="Our freelancer directory opens on 1 December. Help us get the signup right" />
|
||||
<meta property="og:description" content="We need your help! We are opening our Odoo Community Freelancer directory on 1 December. Before real clients start brows" />
|
||||
<meta property="og:url" content="https://odoo4projects.com/blog/posts/freelancer-directory-soft-launch.html" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:image" content="https://image.office.odoo4projects.com/img/freelance_platform.png" />
|
||||
<meta name="twitter:card" content="summary_large_image" />
|
||||
<link rel="icon" href="../../images/favicon.ico" />
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
||||
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Inter+Tight:wght@500;600;700;800&display=swap" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css" />
|
||||
<link rel="stylesheet" href="../../style.css?v=061517baef" />
|
||||
<style>
|
||||
body { background: #0d1b2e; }
|
||||
.blog-post { max-width: 720px; margin: 0 auto; padding: 3rem 1.5rem 6rem; color: #171c26; background: #faf7f1; min-height: 100vh; }
|
||||
.blog-post h1 { font-family: 'Marcellus', Georgia, serif; font-size: 2.4rem; font-weight: 400; margin: 0 0 0.5rem; color: #0d1b2e; }
|
||||
.blog-post .post-meta { font-family: Inter, sans-serif; font-size: 0.82rem; color: rgba(23,28,38,0.6); margin-bottom: 2rem; }
|
||||
.blog-post .post-meta .badge { display: inline-block; font-size: 0.68rem; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #c9a227; margin-right: 0.75rem; }
|
||||
.blog-post .post-image { width: 100%; border-radius: 0.75rem; margin-bottom: 2rem; box-shadow: 0 2px 8px rgba(13,27,46,0.08); }
|
||||
.blog-post p { font-family: Inter, sans-serif; font-size: 1rem; line-height: 1.7; margin-bottom: 1.2rem; }
|
||||
.blog-post h2 { font-family: 'Marcellus', Georgia, serif; font-size: 1.6rem; font-weight: 400; margin: 2rem 0 0.75rem; color: #0d1b2e; }
|
||||
.blog-post a { color: #8a6f1f; text-decoration: underline; }
|
||||
.blog-post strong { font-weight: 600; }
|
||||
.back-link { display: inline-block; margin-top: 2rem; font-family: 'Marcellus', Georgia, serif; font-size: 0.9rem; text-transform: uppercase; letter-spacing: 0.04em; color: #c9a227; text-decoration: none; }
|
||||
.back-link:hover { text-decoration: underline; }
|
||||
@media (max-width: 600px) { .blog-post h1 { font-size: 1.7rem; } .blog-post { padding: 2rem 1rem 4rem; } }
|
||||
</style>
|
||||
<script type="application/ld+json">
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "BlogPosting",
|
||||
"headline": "Our freelancer directory opens on 1 December. Help us get the signup right",
|
||||
"datePublished": "2026-11-04",
|
||||
"url": "https://odoo4projects.com/blog/posts/freelancer-directory-soft-launch.html",
|
||||
"image": "https://image.office.odoo4projects.com/img/freelance_platform.png",
|
||||
"author": {
|
||||
"@type": "Organization",
|
||||
"name": "ODOO4projects",
|
||||
"url": "https://odoo4projects.com/"
|
||||
},
|
||||
"publisher": {
|
||||
"@type": "Organization",
|
||||
"name": "ODOO4projects",
|
||||
"url": "https://odoo4projects.com/",
|
||||
"logo": {
|
||||
"@type": "ImageObject",
|
||||
"url": "https://odoo4projects.com/images/logo.png"
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<!-- Privacy-friendly analytics by Plausible -->
|
||||
<script async src="https://plausible.office.odoo4projects.com/js/pa-NhA7Rf-79VopXFQXhSS4e.js"></script>
|
||||
<script>
|
||||
window.plausible=window.plausible||function(){(plausible.q=plausible.q||[]).push(arguments)},plausible.init=plausible.init||function(i){plausible.o=i||{}};
|
||||
plausible.init()
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<main class="blog-post">
|
||||
<span class="badge">news</span>
|
||||
<h1>Our freelancer directory opens on 1 December. Help us get the signup right</h1>
|
||||
<div class="post-meta">November 4, 2026 · News</div>
|
||||
<img src="https://image.office.odoo4projects.com/img/freelance_platform.png" alt="Our freelancer directory opens on 1 December. Help us get the signup right" class="post-image" loading="lazy" />
|
||||
<div class="post-body">
|
||||
<p>We need your help!<br><br>We are opening our <b>Odoo Community Freelancer directory</b> on 1 December. Before real clients start browsing it, we want the signup to work, and we would like your help to get it right.</p>
|
||||
<p>So this is a soft launch. Sign up for free and tell us how the signup went: where you got stuck, what you expected to find, what you would change. That feedback is what we fix before opening day.</p>
|
||||
<p>Joining is free, for freelancers and clients both. The directory is where a freelancer describes their work, in their own words.</p>
|
||||
<p>If you are a member of the Odoo Community Association, this is a chance to be seen alongside your community. Your profile card carries an OCA Member Profile badge, and a visitor can filter the directory by OCA membership. We mark it, and the choice of who to contact stays with the visitor.</p>
|
||||
<p>Start here: <a href="https://odoo4projects.com/feedback/">odoo4projects.com/feedback</a></p>
|
||||
</div>
|
||||
<a href="../../index.html#blog" class="back-link">← Back to the Blog</a>
|
||||
</main>
|
||||
</body>
|
||||
</html>
|
||||
Reference in new issue
Block a user