# bePublish > Transforming your writing into a profitable startup. Public Ghost content for AI and LLM tooling. This file includes a bounded export of public pages first, then recent public posts. Append `.md` to any post or page URL to get the content in Markdown (for example, `/example-post.md`). ## Pages ### About me URL: https://bepublish.com/about/ Last updated: 2025-09-30T05:22:35.000Z 👋 Hi there! **I'm Cuong**, **and I'm a freelancer and tutorial blogger**. In my articles, I help beginners learn how to blog with ghost CMS. I also give tips and tricks to help people become better bloggers. I believe that blogging has the power to change lives, and I want to help as many people as I can to become successful bloggers. **This blog will allow me to:** - Writing tutorials for ghost CMS in a series - Share the best tips for building a ghost blog - Blog lessons I've learned over the years If you're into the same stuff I'm into, subscribe so you don't miss any new posts 👇 ### Home URL: https://bepublish.com/homepage/ Last updated: 2023-08-27T01:10:31.000Z _No content available._ ### Privacy URL: https://bepublish.com/privacy/ Last updated: 2024-07-27T23:56:17.000Z At ghostFam, I respect your privacy and are committed to protecting your information. Do not share or use your information for commercial or other purposes without your consent. ### What types of data ghostFam collects and how it is collected The information ghostFam collects from your membership registration includes: 1. Your name (if applicable) 2. Your registration email 3. Your ghostFam login or logout information 4. Information you receive emails, open emails and click links from ghostFam emails 5. Your geolocation information is such as Vietnam, USA,... 6. Information you see specific articles on ghostFam 7. Your profile picture according to Gravatar that you set up with your registered email ![The membership information that ghost CMS hosts](https://bepublish.com/content/images/2023/04/image-1.png) The membership information that ghost CMS hosts ghostFam commits to only use [Cloudflare](https://www.cloudflare.com/web?ref=bepublish.com) Analytics and [Umami ](https://umami.is/?ref=bepublish.com)to collect anonymous data from readers, not to use any other tracking software such as Google Analytics,... so all your information is private and secure. ### How ghostFam uses the data collected ghostFam uses your email information and name to send emails notifying you of the latest articles from ghostFam. Don't post ads or content unrelated to the ghostFam blog. **The email is sent directly from the ghost CMS** that ghostFam is using. ghostFam does not extract your email to external storage or other email system. Every email that ghostFam collects is stored in the ghost's data to ensure safety or information leakage. All the information that ghostFam collects using Cloudflare Analytics and Umami are anonymous and you can rest assured of your privacy. Cookies require a member's login to determine whether you are logged in or out of the website. Cookies only store your information and delete themselves after a short time if you do not visit ghostFam. **For comment sytem**, we embed [Hyvor Talk](https://talk.hyvor.com/?ref=bepublish.com) on the website. If you create an account for commenting, your data is stored in the Hyvor Talk database, not in the ghostFam database. Hyvor Talk dashboard allows you to delete all data, including permanent accounts and specific comments. The server for Hyvor Talk is located in France. ### How we share data ghostFam hosts servers in [Vultr VPS](https://www.vultr.com/?ref=bepublish.com) with servers in Los Angeles. ghostFam is not affiliated with any 3rd parties for automatic sharing of member data. ### Revoke consent to receive emails You can revoke your consent to receive emails from ghostFam anytime you want by logging into your account and turning off your consent to receive emails directly on ghostFam's Portal. When you turn off receiving emails, you will never receive emails from ghostFam again. You can also turn on receiving emails again at any time at your account portal. ![](https://bepublish.com/content/images/2023/04/image-2.png) ### Question Any questions you can contact via email [cuong@ghostfam.com](mailto:cuong@ghostfam.com) ### Contact URL: https://bepublish.com/contact/ Last updated: 2024-07-28T00:08:47.000Z Do you have any ideas and want to contact me? Do you want to share something? Send your message to me using the form below. ### Subscribe bePublish today URL: https://bepublish.com/member-register/ Last updated: 2025-10-03T01:30:10.000Z Your email address Subscribe Please check your inbox and click the link to confirm your subscription. Please enter a valid email address! An error occurred, please try again later. 💡 The next step is to ****verify** your mailbox after registering ## What members get - 100% Free forever - Access exclusive articles from bePublish - Get notified when member-only articles are published ### Affiliate Disclosure URL: https://bepublish.com/disclosure/ Last updated: 2025-10-03T01:28:26.000Z This website contains affiliate links, which means that if you click on one of the product links, I may receive a small commission. This helps support the website and allows us to continue to provide content that is free of charge. We are a participant in the Gumroad, Lemonsqueezy, Partnerstack as affiliate advertising programs designed to provide a means for us to earn fees by linking to affiliated sites. We also participate in other affiliate programs and may receive a small commission from them as well. We are not responsible for the content of any third-party sites linked to or from our site. You should be aware that these third-party sites have their own privacy policies and terms of use. We strongly suggest that you review them before using those sites. The content on our website is provided for informational purposes only. We make no representations as to the accuracy or completeness of any information on this site or found by following any link on this site. We will not be liable for any errors or omissions in this information nor for the availability of this information. We will not be liable for any losses, injuries, or damages from the display or use of this information. This affiliate disclosure is subject to change without notice. ### Tags URL: https://bepublish.com/tags/ Last updated: 2023-09-02T08:18:25.000Z _No content available._ ### Blog URL: https://bepublish.com/blog/ Last updated: 2023-08-27T07:39:25.000Z _No content available._ ### First multilingual ghost-managed hosting service URL: https://bepublish.com/premium/ Last updated: 2023-09-04T00:03:42.000Z _No content available._ ### Showcase URL: https://bepublish.com/showcase/ Last updated: 2026-04-30T23:05:14.000Z ![](https://bepublish.com/content/images/2023/09/tumichael.webp) #### Tumichael.com Multilingual Tier You are one moment away to heal your world! [Visit Tumichael](https://tumichael.com/en/?ref=bepublish.com) ![](https://bepublish.com/content/images/2023/09/589team.webp) #### 589Team.com Basic Tier Real Estate Community for Beginners. [Visit 589Team](https://589team.com/?ref=bepublish.com) ![](https://bepublish.com/content/images/2024/01/itpro-tips.Ptdlu3Mf_Z201dnr-1.webp) #### ITPro-Tips.com TanaFlows Theme Share tips from the IT fiel [Visit ITPro-Tips](https://itpro-tips.com/?ref=bepublish.com) ![](https://bepublish.com/content/images/2024/01/tanaflows.9AoWb29C_22LSek.webp) #### BrainNodeOS.com TanaFlows theme Building a Digital Brain with Tana for Entrepreneurs [Visit BrainNode OS](https://brainnodeos.com/?ref=bepublish.com) ### Happy Guest Post URL: https://bepublish.com/guest-post-signup/ Last updated: 2025-10-22T07:52:02.000Z **bePublish opens a Free Happy Guest Post** service on its website. You can share your expertise, build your personal brand and make direct profits from each of your quality articles. Each article posted on our website will be **moderated before posting** according to the following quality standards and basic principles: - **Related topics** (Allowed to be off topic **bePublish** is writing). - **Articles over 2000 words** , with at least 3 headings. - **Content is original** . --- ## How to use Happy Guest Post service? ****TL;DR** 1\. Submit application 2\. Receive account 3\. Write post 4\. Admin notice completed After you submit your application, you will wait for a response from bePublish notifying you to receive **your Happy Guest Post author account.** 💡 bePublish has the right to refuse or contact you further if the information you provide is insufficient or needs further verification. 👍 If you are a bePublish customer, creating a Happy Guest Post account will happen automatically, with no additional authentication required. This is one of the benefits of using ghostFam's services. This is a mandatory moderation step, to protect readers and other guest post authors. We appreciate your patience and understand that there can be minor flaws in this process. Thank you for your understanding! You will receive login information to start writing articles as follows: ![Happy Guest Post account login interface](https://ghostfam.com/content/images/2023/09/Guest-Post-UI.webp) You click the button `Write a new post`and start writing. When finished, you save it, send a complete message here to bePublish to censor and post your article. You can message with the following syntax: ```plaintext Publish
- ``` --- ### Frequently asked questions #### What topics does bePublish accept? In addition to the topics that bePublish is writing about, you can absolutely choose a topic of your own as long as the content is relevant to bePublish's readers, for example: \- Freelancer writing \- Writing newsletters \- Email marketing \- Stories start a business ... #### Can I insert affiliate links into articles? It's completely fine as long as the content of your article is valuable. bePublish built the Happy Guest Post portal to help new bloggers create a playground and the opportunity to earn more income from affiliate marketing articles. #### How do I know my article is quality? Valuable content articles will have over 2000 words and ideally 3000 words, the content is original. Almost every article sharing your story will be considered a quality article. #### Is SEO a problem? Absolutely not. To make it easier for you to publish, SEO is not an issue, you can write whatever you want. Of course, knowing SEO is an advantage because your article traffic will definitely be better. #### Can I re-post articles to my site? Totally fine with bePublish alone. This is your intellectual property and it should be. I will support you how to re-post on your site with canonical, which will not affect the SEO of the article you post on bePublish. #### If my article does not meet the required quality bePublish? You will be given reasons by bePublish and support you with points to improve such as title, description,... Don't forget to subscribe to the bePublish site to follow the latest information and your own articles. Subscribe Email sent! Check your inbox to complete your signup. ### My Tools URL: https://bepublish.com/my-tools/ Last updated: 2025-10-03T01:25:06.000Z ![](https://ghostfam.com/content/images/2023/09/tanaflows-1-516x361.webp) #### TanaFlows Theme GhostFam is continuously developing the TanaFlows theme, incorporating all creative solutions and landing page template designs with one primary goal: excellent SEO, high conversion rates, beautiful websites, and smooth user experiences. #Theme [Demo >](https://ghostfam.win/?ref=bepublish.com) [Purchase TanaFlows Theme](https://ghostfam.lemonsqueezy.com/checkout/buy/b81cabe1-b10e-4830-97c0-309eebb0171d?ref=bepublish.com) ![](https://ghostfam.com/content/images/2023/09/Notion.webp) #### Notion This is my second brain, and I use it to manually create dashboards for ghostFam clients. #Productivity [Try Notion, it's free](https://affiliate.notion.so/he8qimlji65w?ref=bepublish.com) ![](https://ghostfam.com/content/images/2023/09/Camtasia.webp) #### Camtasia GhostFam's tutorial clips are recorded and edited using Camtasia and then uploaded to YouTube. #Video Editor [Purchase Camtasia](https://techsmith.z6rjha.net/96xz3?ref=bepublish.com) ![](https://ghostfam.com/content/images/2023/09/pcloud.webp) #### pCloud ghostFam backs up all databases on pCloud. Safe, fast, convenient, with ample storage space, and cost-effective! #Backup [Lifetime Deal for pCloud](https://partner.pcloud.com/r/2786?ref=bepublish.com) ![](https://ghostfam.com/content/images/2023/09/hyvortalk.webp) #### Hyvor Talk Comment A spam-protected commenting system with a beautiful interface, fast performance, and top-notch security. An excellent user experience. #Comment [Read my article about HyvorTalk >](https://bepublish.com/why-i-choose-hyvor-talk-comment/) [Dùng thử HyvorTalk](https://talk.hyvor.com/?aff=7496&ref=bepublish.com) ![](https://ghostfam.com/content/images/2023/09/getkeywords.webp) #### KeyWords GhostFam utilizes GetKeyWords for keyword research and niche market analysis. Each research is based on real-time data from GetKeyWords. #Keyword Research [Start with Free tier](https://www.getkeywords.io/?utm%5Fsource=affiliate&tracking%5Fid=cuong) ![](https://ghostfam.com/content/images/2023/09/cloudflare.webp) #### Cloudflare ghostFam optimizes website performance, security, and speed with the free Cloudflare proxy CDN service. #CDN [Almost features are free to use](https://www.cloudflare.com/?ref=bepublish.com) ### Changelog URL: https://bepublish.com/changelog/ Last updated: 2025-10-03T01:24:33.000Z _No content available._ ### Ghost Freelance URL: https://bepublish.com/ghost-done4you/ Last updated: 2025-10-02T10:36:58.000Z ![](https://ghostfam.com/content/images/2023/09/translated-ghost-theme.webp) #### Translate Ghost Theme ****$25** - Localize any theme you want, especially free Official themes. - Rewrite the sentences according to your needs. - Completion time: 24 hours. [Order Service →](https://ghostfam.lemonsqueezy.com/checkout/buy/3cf57150-33b5-4a61-bbae-42d5883b7165?embed=1&media=0&desc=0&discount=0&dark=1&disabled=128820%2C128821%2C128818&ref=bepublish.com) ![](https://ghostfam.com/content/images/2023/09/Theme.webp) #### Install Ghost Theme as Demo ****$25** - Install as Demo Premium themes that you purchase from any theme provider on the market. - Activate or deactivate some theme features for you. - Completion time: 24 hours. [Order Service →](https://ghostfam.lemonsqueezy.com/checkout/buy/79b9e630-ebc9-4502-8386-0721691063d1?embed=1&media=0&desc=0&discount=0&dark=1&disabled=128819%2C128820%2C128821&ref=bepublish.com) ![](https://ghostfam.com/content/images/2023/09/silo-page-custom.webp) #### Create a Custom Tag List ****$25** - Helps you create a general Silo Page "Tag" to customize the layout according to the theme you are using (no completely new customization). - Discuss the site structure with you before proceeding. - Completion time: 24h-48h. [DEMO >](https://589team.com/chuyen-muc/?ref=ghostfam.com) [Order Service →](https://ghostfam.lemonsqueezy.com/checkout/buy/63a1be3f-2c51-4d10-8820-78466675fbfc?embed=1&media=0&desc=0&discount=0&dark=1&disabled=128821%2C128818%2C128819&ref=bepublish.com) ![](https://bepublish.com/content/images/2023/09/tweak-theme.webp) #### Tweak The Ghost Theme ****$25/List** Supports you to customize features or edit design without changing the structure of the theme you are using. You can request a list of minor changes. For example: - Change the font (size, font family,...) - Add/change icons - Add/remove blog/home page cover photo - Change color - Enable/disable logo image Completion time: 24h-48h. [Order Service →](https://ghostfam.lemonsqueezy.com/checkout/buy/40c4ddef-632c-4991-9595-ce6eca16b326?embed=1&media=0&desc=0&discount=0&dark=1&disabled=128818%2C128819%2C128820&ref=bepublish.com) ![](https://bepublish.com/content/images/2023/10/cuong.webp) #### Cuong say hello! Cuong has been using Ghost since 2020 and is the author of the [TanaFlows theme](https://bepublish.com/tanaflows/) , one of the first multilingual premium Ghost themes in the world. In addition to providing comprehensive hosting services for Ghost websites, Cuong also provides Freelance services to meet the needs of customers. If you have ever used ghostFam's Freelance service and felt satisfied, please share [****your review about GhostFam Freelance service here**](https://app.shapo.io/forms/ca0f1c71d4?ref=ghostfam.com) . We greatly appreciate your trust and support! P/S: Don't forget that GhostFam also provides a free Happy Guest Post service for those who are passionate about writing and want to build their personal brand. ### TanaFlows Theme URL: https://bepublish.com/tanaflows/ Last updated: 2026-06-03T01:51:28.000Z A lot of writers and creators realize a strange thing after a while: Your writing gets better, but you do not sell more. You post more often, but social media still hides your posts. You have customers—but they cannot find you when they log off social media. The problem is not your writing. The problem is that **you do not own your online home.** You are building on rented land. Ghost solves this because you own your website name and your email list. **TanaFlows** is the final piece to build your home. It helps you show your products, courses, and posts in a clean, beautiful way so readers trust you and buy your work. --- ## Built-in features, zero plugins required On WordPress, you have to buy and install lots of extra add-ons (plugins) for everything: translation, table of contents, headers, and courses. They cost money, slow down your site, and often break. Ghost does not use plugins this way. Instead, TanaFlows builds these features right into the theme from the start: | Feature | WordPress Needs | TanaFlows | | ------------------ | --------------------------- | ------------------------------------- | | Translate site | Paid plugin ($50+/month) | Built-in (easy to turn on) | | Table of Contents | Extra plugin | Built-in (shows up automatically) | | Sticky Header | Extra plugin or custom code | Built-in (stays at the top smoothly) | | Course Page | Heavy LMS plugin | Built-in (lesson list + progress bar) | | Product/Sales Page | Page builder plugin | Built-in (setup via simple settings) | | Search Bar | Extra plugin | Built-in (fast search) | | Dark Mode | Extra plugin or code | Built-in (looks clean in the dark) | You do not need to install anything extra. No conflicts. No separate updates. Everything works together perfectly because it was designed as one package. --- ## Designed specifically for quiet sellers No pushy ads. No screaming for attention. Just a simple system built to accumulate trust and make it easy for readers to take action. ### 🏠 1\. Own your site — no one can delete your hard work Social media is great for sharing, but you do not own it. If the algorithm changes, or your account gets blocked for no reason, you lose your audience overnight. Your email list and customer data are not yours if you stay on rented land. Ghost + TanaFlows gives you full control: - **Your writing** is on your own website. No one can delete it or hide it. - **Your email list** belongs to you, not to Facebook or Instagram. - **You can download** your customer list anytime you want, without asking permission. This is how a "quiet seller" works: you do not chase algorithms or follow crowds. People find you because your good writing is saved on your own land. ### ✍️ 2\. Give readers a clear place to buy Good writing connects with people. But even if readers love your post, they will leave if they do not see how to buy. They need to know the price and where to click. TanaFlows helps with this first step: it makes your page look clean and professional so readers want to click. A sidebar stays on the screen as readers scroll down, showing them: - The price of your product. - A quick checklist of what they get. - Short reviews from real customers. - A button to buy (linking to Lemon Squeezy, Gumroad, or whatever you use). - A small photo and bio of you to build trust. On phones, this box moves to the top so readers see the buy button right away. **TanaFlows gets you the click.** Once they click, your payment tool (like Lemon Squeezy) handles the checkout and sends the product. ### 🎓 3\. Keep students on your own website If you sell a course, TanaFlows shows your lessons beautifully on your own website. You do not have to send students to another platform with a weird web address. Here is what your students get: - A sidebar to click through lessons so they do not get lost. - Progress memory: It remembers where they were. They can close the site today and open it tomorrow right where they left off. - Watch videos hosted on YouTube, Vimeo, Bunny, Loom, and more. - A clean reading view for text-based lessons. 💡 ****Note:** TanaFlows makes the course look good. Ghost Portal and your payment tool handle the signup and billing. ### 🌍 4\. Reach multilingual readers — proper SEO and target the right audience If you want to reach readers in other countries, TanaFlows connects two separate Ghost sites (like one in Vietnamese and one in English). You write the translation yourself and publish it on both sites: - **Great for Google**: Google finds both pages and shows the right language to the right readers. - **Separate email lists**: You can email your local and international readers separately. - **Easy switching**: Readers click a language button, and TanaFlows takes them directly to the translated page. You do not need to pay $50 a month for slow translation plugins. ### 🎯 5\. Special page layouts for every goal Every page style in TanaFlows is built to do one job well: - **Homepage**: Shares your main message and collects emails. - **Product Page**: Shows what you are selling with the price and buy button in a sidebar. - **Course Page**: Displays your lessons clearly so students can learn. - **Email Landing Page**: A simple page with no headers or footers to help you collect emails. It sends the info to tools like ConvertKit. - **CTA Banners**: Bright banners at the bottom of the page for free gifts or updates. - **In-Article Forms**: Signup boxes that appear inside your posts while people are reading. - **Blank Pages**: Let you paste custom code to design your own sales pages. --- ## Who is TanaFlows for? ### ✅ TanaFlows is built for: - **Writers who want to sell** You write well and have a product, but need a clean way to show it to buyers. - **People who want independence** You want all your links, posts, and products on your own site instead of using social media or Linktree. - **Quiet Sellers** You do not want to scream or push people to buy. You want a clean site where people buy because they trust you. - **Course Creators** You want students to learn on your website, not on someone else's platform. ### ❌ TanaFlows is not for: - **People looking for quick hacks** TanaFlows is for building a long-term business, not quick tricks. - **People who only want social media** If you prefer keeping everything on Facebook, that is fine. TanaFlows is for people ready to build their own site. - **People who do not want to write** We provide the design, but the writing must come from you. --- ## FAQ If you have any questions, please feel free to contact me via **live chat** #### Is there documentation to help me set up the theme? Check out [the documentation ](https://docs.bepublish.com/docs/getting-started/?ref=bepublish.com)for full tutorials and detailed explanations #### ****Where do I host this theme?** TanaFlows works on Ghost CMS. You can host it anywhere, but we recommend [SynapsMedia](https://www.synapsmedia.com/?ref=bepublish.com). They are the best for hosting translation sites with subfolders (like `/de/`). You can look at the [bePublish demo site](https://tanaflows.bepublish.com/?ref=bepublish.com)—it runs on SynapsMedia to show you how fast it loads. ([Check out the docs](https://docs.bepublish.com/docs/multilingual/deploy-multi-language-ghost/?ref=bepublish.com)) You can also host it yourself on cheap servers like DigitalOcean or use the official [Ghost(Pro)](https://ghost.org/?via=cuong76&ref=bepublish.com) host. #### Is it possible to use themes on Ghost (Pro)? Yes, but in one language site. You can use the theme on [ghost (Pro) tier Creator](https://ghost.org/pricing/?via=cuong76&ref=bepublish.com) or above. #### ****Can I use this for just one language?** Yes. By default, TanaFlows works for just one language. If you want to translate your site later, you can turn on the settings easily without breaking your old posts. #### ****Can I build and sell courses?** Yes, but keep it simple: TanaFlows gives you a simple, clean layout to share lessons and get email signups. It is not a super complex school platform. TanaFlows handles the design (lessons and video views), while Ghost Portal and payment tools (like Lemon Squeezy) handle signup and payments. #### Do I get a refund if I do not sastify the theme? Since TanaFlows is a digital download and you get the code immediately, we cannot give refunds. Please test the live demo site and read the guide before you buy. If you have any technical problems, email us and we will help you fix them. Since TanaFlows is a digital download and you get the code immediately, we cannot give refunds. Please test the live demo site and read the guide before you buy. If you have any technical problems, email us and we will help you fix them. ### Webhook Form Tool URL: https://bepublish.com/tool-form/ Last updated: 2024-08-06T04:02:09.000Z You need to refresh the browser when creating a new form automatically or when you want to edit the URL. Use an HTML block to add the newly created form to any page or post. Form Action URL (Webhook or [Formspark](https://bepublish.com/create-a-contact-page-with-html-form-for-ghost/) action): Page to redirect to after successful registration: Generate Form `` --- ## Add Anti-spam to the form (Optional) Add a code block before the "Submit" button. ```html
...
``` **Cloudflare Turnstile** ```html
``` Replace your Cloudflare Turnstile `[SITE KEY]` **Google reCapcha** ```html
``` Replace your Cloudflare Turnstile `[SITE KEY]` ### Ghost Integrations Hub URL: https://bepublish.com/integrate/ Last updated: 2026-04-11T02:54:24.000Z _No content available._ ### Tanaflows Theme Demo URL: https://bepublish.com/tanaflows-demo/ Last updated: 2026-05-10T11:53:48.000Z [ ![ghostFam Logo](https://bepublish.com/content/images/size/w300/format/webp/2025/09/logo-bepublish.png) bePublish ](https://bepublish.com/) Home - [Starter Page](https://ghostfam.win/en/start/?ref=bepublish.com) - [Product Page](https://ghostfam.win/en/tanaflows/?ref=bepublish.com) - [Course Hub Page](https://ghostfam.win/en/courses/?ref=bepublish.com) - [Course Page](https://ghostfam.win/en/course-page/?ref=bepublish.com) - [Curated Page](https://ghostfam.win/en/tools/?ref=bepublish.com) - [Static Page](https://ghostfam.win/en/blank-template/?ref=bepublish.com) - [Tag Page](https://ghostfam.win/en/tags/?ref=bepublish.com) - [Changelog Page](https://ghostfam.win/en/changelog/?ref=bepublish.com) - [Contact Page](https://ghostfam.win/en/contact/?ref=bepublish.com) - [Biolink Page](https://ghostfam.win/en/me/?ref=bepublish.com) - [Showcase Page](https://ghostfam.win/en/showcase/?ref=bepublish.com) - [... Home](https://ghostfam.win/en/?ref=bepublish.com) [Purchase - $149](https://shop.ghostfam.com/buy/b81cabe1-b10e-4830-97c0-309eebb0171d?embed=1&ref=bepublish.com) ### bePublish's transparency policy URL: https://bepublish.com/disclaimer/ Last updated: 2025-10-22T07:52:30.000Z **Hello there, and welcome to bePublish!** This page exists to keep everything between us **clear and transparent**. Please take a moment to read it. --- ## 🤝 About Affiliate Links You'll see that on this website, I frequently share tools and products that I love and use daily, like **Ghost**. To maintain operations and continue creating high-quality, free content for you, **bePublish** participates in **affiliate marketing programs**. This means: - When you click on a product link and make a purchase, I **may receive a small commission**. - **The great news is:** This **does not cost you anything extra**. In fact, sometimes I can even get you a special discount code! **What's most important to me:** > I **only recommend** things that I have **personally used, thoroughly tested, and truly believe in**. Your trust is the most valuable thing, and I would never compromise it for any commission. Your purchases through these links are a fantastic way to support me in continuing this work. Thank you so much! --- ## About the Information on This Website The articles on bePublish come from my **personal experience and knowledge**. They are created to **share and help the community**. However, please remember: - This is **not professional advice** (financial, legal, technical, etc.). - Information can change over time. - You should **conduct your own research** or **consult with qualified experts** before making any important decisions. I always try my best, but I cannot guarantee that everything is 100% perfect. --- ### When You Leave Our Website To provide you with rich resources, I sometimes include **links to external websites**. I **have no control over** the content and policies of those sites. Therefore, I cannot be responsible for anything that happens once you leave here. Please be cautious and read their terms carefully! --- ## Let's Respect Each Other's Work All content (articles, images, designs) on bePublish is the **product of hard work** and a lot of dedication. You are highly encouraged to: - **Share** a short excerpt with a **clear credit and link back** to the original article. However, **copying entire posts** or using images for commercial purposes without **explicit permission** is not acceptable. If you'd like to collaborate, please get in touch! --- ## Personal Views The opinions shared here are my **personal views**. They come from real-world experiences and may **not reflect the views** of any service providers (like Ghost) or other organizations. --- **Thank you so much for taking the time to read and understand this!** If you have any questions, please don't hesitate to contact me at: [cuong@bepublish.com](https://mailto:cuong@bepublish.com/). *(Last updated: October 02, 2025)* ## Posts ### How to embedding Fiverr Gig Ads into ghost URL: https://bepublish.com/fiverr-gig-ads-integrate/ Last updated: 2024-08-07T09:01:39.000Z --- Code template: ```html
... [Fiverr Gig Ads Embedded Code] ...
``` --- ## Automatic Fiverr Gig Ads Insertion 💡 Fiverr Gig Ads automatically suggests services related to your article content. Typically, you should place ads at the end of your article or right in the relevant section. 1. [Log in to your Fiverr Affiliate account](https://fiverraffiliates.com/login/?ref=ghostfam.com) (or [create a new Fiverr Affiliate account](https://go.fiverr.com/visit/?bta=116595&brand=fiverraffiliates&ref=ghostfam.com) if you don't have one). 2. Go to **Marketing Tools** \> **Fiverr Gig Ads** (on the left Sidebar) 3. Use **We pick Gigs for you** to let Fiverr create ads for you automatically. (*See detailed instructions below \*\** ) 4. Apply and get Embedded code `[Fiverr Gig Ads Embedded Code]` 5. Insert into article using `HTML card` according to the template below. ```html
... [Fiverr Gig Ads Embedded Code] ...
``` ![Set up We pick Gigs for you](https://ghostfam.com/content/images/2024/08/thiet-lap-fiverr-gig-ads.webp) Set up "We pick Gigs for you" 💡 If the theme you are using supports dark mode****,** use the template below to make your ads display better. ```html
... [Fiverr Gig Ads Embedded Code] ...
``` --- \*\* *Detailed explanation *We pick Gigs for you** - **We pick Gigs for you** will automatically create ads for you and you need to add criteria to match your article or niche. - **Category (Category)** . Choose a category in the category that suits your niche. However, because there are too many categories, you should use **Filter by relevant keywords** below which will be better and faster. - **Filter by relevant keywords** . You use English keywords to filter freelance services on Fiverr's marketplace that are relevant to your site's niche. For example: The demo above uses the keyword `design website logo`. - **Set a price range for Gigs** . You should set a price range limit according to your target customer's finances. Helps convert purchases better. - **Advanced settings** . Set the ad title and text for the **Explore more services** button . You should localize if you have the opportunity like the demo above. - Ad title - 'More services' button text --- ## Insert a specified Fiverr Gig Ads 💡 Inserting Fiverr Gig Ads specifically will help increase conversions better when you advertise a gig service that you have used and trust. 1. Go to **Marketing Tools** \> **Fiverr Gig Ads** 2. Select **Pick a specific Gig** 3. Copy **the gig link** (URL) you want to promote at [https://www.fiverr.com/](https://go.fiverr.com/visit/?bta=116595&brand=fiverrmarketplace&ref=ghostfam.com) 4. Apply and get Embedded code `[Fiverr Gig Ads Embedded Code]` 5. Insert into article using tags `HTML card` according to the template below. ```html
... [Fiverr Gig Ads Embedded Code] ...
``` For regular theme ```html
... [Fiverr Gig Ads Embedded Code] ...
``` For themes that support darkmode ![Fiverr Gig Ads specific](https://ghostfam.com/content/images/2024/08/gig-ads.webp) Manually Insert Fiverr Gig Ads --- ## How to earn with Fiverr Gig Ads? 💡 You will receive ****25% commission** when ****a new user first** clicks on the ad link to create an account and buy a freelance service (gig), you will receive another ****10%** for each gig of that user ****for 12 months** . **For example: A user first discovers Fiverr and purchases a $20** gig for sticker design. They then continue **to purchase a $20 gig every month** for the next 12 months to continue their work. You will receive from 1 user in 12 months: - $3 for first order (first month) - $2/month for 12 months = $24 In total you get **$27** in 1 year from 1 new converted user. Additionally, once you have a high volume of new converting users, you will be able to move up to Tier 2 and 3 if you meet the required number as below. [New Fiverr Affiliate](https://go.fiverr.com/visit/?bta=116595&brand=fiverraffiliates&ref=bepublish.com) will begin with Tier 1. ![Fiverr affiliate account classification](https://ghostfam.com/content/images/2024/08/tier-fiverr.webp) Fiverr affiliate account classification --- ## Things You Need to Know About Fiverr ![Things You Need to Know About Fiverr](https://ghostfam.com/content/images/2024/08/fiverr-1.webp) ### About Fiverr Fiverr offers a wide range of services from graphic design, content writing, video production, to app development. Each service on Fiverr is called a “ **gig** ” and can be priced differently depending on the freelancer’s skills and experience. While the starting price is $5, multiple gigs can bring in higher income for the seller, depending on the complexity and demand of the service. ### Fiverr Affiliate Program Fiverr's affiliate marketing program is an effective way to make money promoting freelance and gig services, while helping others find and use the services they need. You can market 3 main areas of Fiverr - Fiver Marketplace (Through Fiverr Gig Ads as instructed above or deep link) - Fiver Pro - Fiver Learn ### Become a Fiverr Seller Check out [the free course to start becoming a Fiverr Seller](https://go.fiverr.com/visit/?bta=116595&brand=fiverraffiliates&landingPage=https%253A%252F%252Flearn.fiverr.com%252Fcourses%252Fonline-freelancing-essentials-be-a-successful-fiverr-seller&ref=ghostfam.com). --- ## Frequently Asked Questions #### I am a Fiverr Seller can I market my own gig services with Fiverr Gig Ads? No. You will be violating Fiverr's rules. However, you can absolutely promote other sellers' products to earn commissions. #### Can I integrate Fiverr Gig Ads into my theme? Yes. But you need to customize the theme yourself and add the code manually. Note that high page load performance and page refresh rate may result in Fiverr limiting ad display. #### Is there any way to add Fiverr Gig Ads to automatically insert ads like Google Adsense? No. A good way to convert is to insert each article topic with keyword filter as instructed above. #### Can I use the above instructions for any ghost theme I am using? Ok. The above instructions are tested on all themes including custom code and CSS which is according to ghost core, not theme. --- Related Posts: - [Insert Google Adsense into ghost site](https://bepublish.com/insert-google-adsense-ads-to-ghost/) ### Integrating Google Analytics 4 with ghost CMS URL: https://bepublish.com/google-analytics-4-integrate/ Last updated: 2026-04-11T00:17:52.000Z Google Analytics 4 ID (Measurement ID): ``` ``` Copy Tracking Code --- ## Guide to Integrating GA4 with Ghost Google Analytics 4 (GA4) is the latest version of Google’s free data analysis and website traffic tracking tool. The basic steps to set up Google Analytics 4 with Ghost are as follows: 1. Sign in to your **Google Analytics account** ([create a new account](https://analytics.google.com/?ref=bepublish.com) if you don’t have one). 2. Create a new **Google Analytics property**. 3. Copy and paste the **Measurement ID** you just created into the tool above. 4. Click the "**Copy Tracking Code**" button and paste it into **Settings > Code injection > Site header**. ![Create a New Google Analytics Property](https://bepublish.com/content/images/2024/08/image.png) Create a New Google Analytics Property ![Paste the code into Settings > Code Injection > Site Header in Ghost](https://bepublish.com/content/images/2024/08/ghost-header.webp) Paste the code into ****Settings > Code Injection > Site Header** in Ghost --- ## How to track traffic with Google Analytics 4 After inserting tracking code into ghost you can immediately check information and traffic including yourself. There are 2 ways to access Google Analytics 4 tracking dashboard: 1. **On Google Analytics website** . You log in directly on the browser at [https://analytics.google.com/](https://analytics.google.com/?ref=ghostfam.com) and track. You can switch to real-time tracking to check if the tracking code is inserted correctly while you are viewing the website. 2. **Use the mobile app** . Download the Google Analytics app [on Android](https://play.google.com/store/apps/details?id=com.google.android.apps.giant&hl=en&ref=ghostfam.com) and [Apple stores](https://apps.apple.com/us/app/google-analytics/id881599038?ref=ghostfam.com) . Once downloaded, log in to your account and track traffic through the app. Google Analytics is one of the few traffic tracking apps that has a mobile app. 💡 For those new to Google Analytics, you can watch the quick Google Analytics tutorial below or [sign up for Google's free Google Analytics course](https://analytics.google.com/analytics/academy/course/6?ref=ghostfam.com) here. --- ## Frequently Asked Questions #### What about the automatic tracking code in Google Analytics data streams? It’s essentially the same for regular website tracking, unless you need advanced or custom tracking features. However, obtaining the tracking code from the data stream can be a bit cumbersome, and it’s easy to forget how to retrieve it if you don’t do it frequently. ghostFam provides a ready-made template for you, so you just need to enter the GA4 ID to quickly get the tracking code. Moreover, if you are a website agency, asking clients to find the tracking code in their account is quite difficult, but it is much easier for clients to retrieve the GA4 ID as it is always available on the Google Analytics homepage. #### Should you use GA4 through Google Tag Manager? You should insert the GA4 tracking code directly into your website, as this will help optimize speed more than using the third-party tool Google Tag Manager. #### Does using Google Analytics 4 affect site speed? In theory, yes, because it requires loading an additional script from Google. However, most websites today have good page load performance, so the impact is generally negligible. ### TanaFlows is live - The first multilingual ghost theme URL: https://bepublish.com/ghostfam-ra-mat-theme-tanaflows/ Last updated: 2024-01-17T04:03:06.000Z When it comes to website publishing and content creation, finding a multilingual ghost theme is key. GhostFam just released the latest masterpiece - **TanaFlows**. With seamless multilingual capabilities, this theme sets a new standard for publishers and content writers. --- ## An Overview of TanaFlows TanaFlows is not just another ghost theme; it is a game-changer. With its advanced multilingual functionality, TanaFlows allows publishers to create websites that seamlessly switch between different languages. Gone are the days when you had to hire the expert to make your theme multilingual. TanaFlows simplifies the setup process with separate installations, so publishers can reach more people. Based on `#hashtags` (internal tags) system, this theme is auto-generated schema, automated navigation, and theme functions. Here's an example: - **Would you like an article in two languages?** Use hashtag `#multilingual` on your page/post. - **Would you have a changelog page?** Use hashtag `#changelog` on your page. - **Do you want a FAQ schema?** Use hashtag `#faq-schema` on on your page/post. - **Do you want a hub for knownledbase?** Use hashtag `#docs` on your post. - **Want to add a dropdown menu for Solutions, Use-cases, and Services?** Use hashtag `#solution` `#usecase` `#service` on your pages. - **Do you want to decide which posts are guest posts?** Use hashtag `#guestpost` on your post. - ... and more [Check out the TanaFlows documentation](https://docs.ghostfam.com/?ref=bepublish.com) --- ## Unleashing the Power of Multilingual Content **What's the point of multilingual publishing?** Did you know 43% of the world's population is bilingual, 40% monolingual, and 17% multilingual? That means you can reach a lot more people with content in other languages.You can expand your customer base and increase your global reach using multilingual content. With TanaFlows, content writers can now effortlessly create and manage multilingual content. The intuitive interface of TanaFlows allows for easy language selection, enabling writers to switch between languages as they craft their content. This not only saves time but also ensures consistency across languages, providing a smooth reading experience for visitors. [Spread your content globally with TanaFlows today!](https://ghostfam.lemonsqueezy.com/checkout/buy/b81cabe1-b10e-4830-97c0-309eebb0171d?ref=bepublish.com) --- ## Conversion-focused theme GhostFam designed TanaFlows with marketer in mind, to help you boost your conversions, your money. TanaFlows makes it easy to add effective call-to-action buttons and forms throughout your website, helping you to get more leads and convert more visitors into paying customers. Also, a fallback form subscribe is available at the bottom of the global site and a subscribe button is available at the top of the main navigation menu. With TanaFlows, publishers have the freedom to create stunning multilingual websites that captivate their audience and leave a lasting impression. [Visit TanaFlows' demo site to see for yourself](https://ghostfam.win/en/?ref=bepublish.com) --- ## GhostFam multi-language managed hosting To use TanaFlows multilingual, you need to install two ghost installations and configure it yourself. Don't worry, we will provide you with support with our multi-language managed hosting that will be designed exclusively for TanaFlows theme. With the service, you will receive TanaFlows theme for free. We will optimize your site, take a full backup daily, and share your backup source with you in your customer dashboard. GhostFam is an example of a multi-language managed hosting site. ![Pricing Multilingual Hosting Tier of ghostFam](https://bepublish.com/content/images/2023/09/image.png) Pricing Multilingual Hosting Tier of ghostFam [Learn more ghostFam multi-language managed hosting](https://bepublish.com/premium/) --- Do you have any questions? Feel free to contact me through the live chat widget or [contact page](https://bepublish.com/contact/). ### How to remove the Mailgun email sending API limit on ghost URL: https://bepublish.com/remove-email-sending-limit-mailgun-on-ghost/ Last updated: 2025-10-03T02:07:52.000Z To use the ghost newsletter mailing feature, it is mandatory to have a Mailgun account that has had the API restriction removed. A newly registered Mailgun account has the following 2 main limits: 1. Only send a maximum of **100 emails/hour.** 2. A maximum of **9 emails** is sent. This means that when you have more than 9 members signing up for the newsletter on the ghost site, you will not be able to send an email and the ghost will report an error. This is not the fault of the ghost but rather because your account is blocked from sending emails by Mailgun and the ghost only tells you based on the response of the Mailgun API. --- ## Preparation stage for a new Mailgun account Mailgun will not remove account limits for you immediately, the prerequisite is that you must **USE** your Mailgun account for a period of **at least 2 weeks**. Mailgun will rely on your email sending history to approve the limit removal. Your email delivery history includes the following 2 behaviors: 1. New member registration email (Need to configure on ghost installation server `config.production.json`) 2. Outgoing newsletter emails (You configure yourself in the Ghost Dashboard with Mailgun Private API) 💡 Mailgun only cares about the emails you send, the received emails don't matter All you need to do is prove that you are using the Mailgun service for your site. Often you will receive an error because more than 9 members have registered for your site, so the first thing you need to do is make sure the number of members receiving emails **<9 members**. You go to **ghost dasboard > Members** and choose to turn off each member's email until **only up to 9 members receive the email** so that when publishing the article, the ghost will not give an error because of the Mailgun API limitation. ![Turn off the newsletters one by one](https://bepublish.com/content/images/2023/07/email-turn-off.webp) Turn off the newsletters one by one You start writing and publishing, sending emails as you normally would. 💡 The steps above can be skipped if you have used Mailgun for some time, and you can proceed with requesting to remove your account limit in the next section. --- ## Request the removal of Mailgun account limits You log in to your Mailgun account and go to this [Mailgun business verify link](https://app.mailgun.com/verification/emailing-needs?ref=bepublish.com) to request the removal of restrictions for your Mailgun account. ![Mailgun Form](https://bepublish.com/content/images/2023/07/mailgun.webp) Mailgun Form Mailgun needs you to have: 1. Privacy policy page. (You can refer to or clone [bePublish's privacy page](https://bepublish.com/privacy/) and edit your site name) 2. The page used to collect email. (You'll usually fill in the homepage URL because there's a membership registration form there) Finally, you can fill in the message field for Mailgun to browse your site faster, you can copy or customize it as you like in the following message template: ```plaintext Because my site is powered by Ghost CSM, I can use its built-in functionality to collect and send email lists. With more than 20 members, I cannot send email in batch using Mailgun API with ghost. To scale my business, I need to remove the API account for email sends. Let me know if you need anymore info from my account. ``` Mailgun's team typically responds to your information within 24 hours if you send it during the week.Mailgun will send all responses to your email and keep them in your support ticket dashboard. ![Email upon successful exit from Mailgun's limit](https://bepublish.com/content/images/2023/07/image-1.png) Email upon successful exit from Mailgun's limit --- ## Mailgun refuses approval? ![Mailgun refuses to remove the limit for you](https://bepublish.com/content/images/2023/07/image-2.png) Mailgun refuses to remove the limit for you This is normal, you just need to continue using the send for another 3-5 days and then respond to them in the [Mailgun support ticket](https://app.mailgun.com/support?ref=bepublish.com). ![Mailgun Support Ticket](https://bepublish.com/content/images/2023/07/support-ticket.webp) Mailgun Support Ticket 💡 If you continue to be rejected, send another 3-5 emails on the ghost and then respond to the Mailgun support ticket until successful. You can respond as follows: ```plaintext I've sent my email for days, hopefully I can get some good feedback to remove my limit. Could you please check my case again? If you need more info, let me know. ``` --- ## Final Thoughts... Mailgun is a paid service so as long as you're using ghosts and emailing newsletters normally, they'll definitely approve your account. If you're only using Mailgun for ghost sites, you won't have any problems as long as all you do is use it for them. The only thing you need to do is to be patient. ### Boost writing productivity in ghost with the PARA Method URL: https://bepublish.com/boost-writing-productivity-in-ghost-with-the-para-method/ Last updated: 2025-10-01T15:06:54.000Z This tutorial shows writers how to integrate PARA Method right into ghost dasboard, increasing productivity and efficiency in content creation. _This post is for subscribers only._ ### How to change fonts in Ghost Editor easily and safely URL: https://bepublish.com/change-the-font-in-ghost-editor/ Last updated: 2025-10-01T15:10:16.000Z Ghost editor uses Georgia font, which does not support some languages other than English and some devices do not support it natively. As a result, some bloggers will choose to write on an external application and copy and paste into ghost editor. Injecting CSS in site headers and site footers cannot change ghost editor fonts, since they only appear on the frontend, not on the backend. As well, you cannot mess with ghost core, which can break your site and take down your ghost instance on the server. There's a simple and safe way to change the ghost editor. Here's how. ## Requisition Only Chromium-based desktop and browsers such as Chrome, Edge, etc can use this technique. Ghost new editor beta must be enabled. Why is that? ![Enable new ghost editor](https://bepublish.com/content/images/2023/06/image-3.png) Actually, it works perfectly on the old editor, but I think we should implement it on the new Lexical editor now. There are a few minor bugs in the beta editor, but it is still stable enough to use at the moment. ## Load external CSS stylesheet by Chrome Extension We will change ghost editor's font by loading an external CSS stylesheet by a Chrome extension that runs only on your Chrome desktop, not your theme or ghost configuration. Anytime you want, you can modify or remove it safely and easily. Install the official Chrome Web Store extension **Super CSS Inject**. [Super CSS InjectKeep multiple stylesheets ready to inject and change on the fly!![](https://ssl.gstatic.com/chrome/webstore/images/icon_144px.png)Chrome Web Store![](https://lh3.googleusercontent.com/Oe3vDAclymg9fuYSxltq2vrBFkXP40nGu3CT0v1yg9Ly_VR2m3exoMbGA4_HcOKXS-a1x0uFWllHS57e2sahxtOGYQ=w128-h128-e365-rj-sc0x00ffffff)](https://chrome.google.com/webstore/detail/super-css-inject/pcfpmmmjdgngeidaggcahhoncahmpiin/?ref=bepublish.com) Install Super CSS Inject - Chrome extension Here is the URL for the external CSS file after Super CSS Inject installation. ```html https://cdn.jsdelivr.net/gh/Ghost-Github-Storage/ghostfam/Assets/css/new-ghost-editor.css ``` Inter font ![Add external CSS stylesheet on Super CSS Inject extension](https://bepublish.com/content/images/2023/06/add-stylesheets.webp) Add external CSS stylesheet on Super CSS Inject extension My link is safe to use, but you can make your own. Here's what the code inside the file looks like ```css .koenig-lexical .kg-prose :where(p,blockquote,aside,ul,ol):not(:where(.not-kg-prose,[class~="not-kg-prose"] *)) { font-family: Inter, serif; } ``` In case you need another font, you can add the URL below ```html https://cdn.jsdelivr.net/gh/Ghost-Github-Storage/ghostfam/Assets/css/ghost-editor-mulish.css ``` Mulish Font ```css @import url('https://fonts.googleapis.com/css2?family=Mulish&display=swap'); .koenig-lexical .kg-prose :where(p,blockquote,aside,ul,ol):not(:where(.not-kg-prose,[class~="not-kg-prose"] *)) { font-family: 'Mulish', serif; } ``` It is easy to create your own URL file with Google Fonts and change any font you like. [Browse Fonts - Google FontsMaking the web more beautiful, fast, and open through great typography![](https://www.gstatic.com/images/branding/product/2x/google_fonts_96dp.png)Google Fonts![](https://www.gstatic.com/images/icons/material/apps/fonts/1x/catalog/v5/opengraph_color.png)](https://fonts.google.com/?ref=bepublish.com) ## How to use Super CSS Inject The first step is to pin the extension to the Chrome Tab Bar so that you can click conveniently. While using the ghosteditor, you click on the Super CSS Inject extensionand activate. ![Click to activate](https://bepublish.com/content/images/2023/06/image.png) Click to activate The URL will be remembered, so you can exit and return at any time. When you make a new post, you have to click it again for it to remember the URL. ## Here's what we got ![](https://bepublish.com/content/images/2023/06/image-1.png) Default Georgia Font at ghost editor ![](https://bepublish.com/content/images/2023/06/image-2.png) Inter Font at ghost editor As I posted on Beta Feedback, I hope the Ghost team will permanently change Ghost Editor to Inter font so we won't need this extension in the future. ### Auto-insert Google Adsense ads to monetize ghost blog URL: https://bepublish.com/insert-google-adsense-ads-to-ghost/ Last updated: 2026-04-13T09:00:22.000Z In many cases, you have been led to believe that only [Google Blogger](https://www.blogger.com/?ref=bepublish.com) inserts the most standard and easiest [Google Adsense](https://www.google.com/intl/vi%5Fvn/adsense/start/?ref=bepublish.com) ads, optimizing monetization with ads. I don't believe that! With Ghost CMS's standard blogger blog structure, you can add Google Adsense and optimize your blog even more than Google Blogger. Following are 3 steps to insert Google Adsense code into Ghost websites. ## 1\. Adding Google Adsense code to site header After adding a new domain name in Google Adsense, you able to receive a Google Adsense code (also used to validate the domain name). ![Google AdSense Auto Code](https://bepublish.com/content/images/2023/05/image-13.png) Google AdSense Auto Code ```javascript ``` The script looks like above You go to **Ghost Admin** \> **Code Injection** and add .`Site Header` ![Add Google Adsense scripts automatically](https://bepublish.com/content/images/2021/02/image-3.png) Add Google Adsense scripts automatically Save and you wait for Google Adsense to authenticate for a few days. Complete! In the meantime, you go to Google Adsense and enable automatic ad insertion. This mode will give Google Adsense permission to create ads on your site once your site has BEEN SUCCESSFULLY authenticated. ![Set up automatic ad insertion in Google Adsense](https://bepublish.com/content/images/2021/02/image-4.png) Set up automatic ad insertion in Google Adsense ## 2\. Add AMP Google Adsense automatically to the AMP interface Ghost will have AMP enabled automatically, similar to Google Blogger, but the other difference is that you need to manually add AMP Google Adsense to Ghost. You need to create a new file `amp.hbs` for Ghost to overwrite the default amp file in ghost core. The AMP template is as follows, you just need to copy the AMP template below and add it to the Google Adsense AMP code or download the `amp.hbs` file attached below I have created for you and replace the Google Adsense Publisher ID code (in the Google Adsense account tab). [Ampamp.hbs23 KBdownload-circle](https://bepublish.com/content/files/2023/05/amp-1.hbs "Download") AMP Google Adsense will automatically require 1. AMP script at head tag 2. The AMP tag in the body tag contains your **Publisher ID** ```Javascript ``` AMP script at head tag ```html ``` The AMP tag in the body tag contains your ****Publisher ID** Replace `` with your Publisher ID which looks like .`ca-pub-xxxxxxxxxxx` ![Publisher ID trong Account Information (Google Adsense)](https://bepublish.com/content/images/2021/02/image-2.png) Publisher ID trong Account Information (Google Adsense) Upload `amp.hbs` to the root folder of your current Ghost theme (download theme, paste into root folder, re-upload to Ghost). ## 3\. Upload ads.txt for validation Google Adsense will ask you to authenticate by uploading the .`ads.txt` You use your computer's Text Editor and create a new file `ads.txt` with the following content. ```plaintext google.com, pub-0000000000000000, DIRECT, f08c47fec0942fa0 ``` TNext, you upload your current ghost theme to the root folder. Restart ghost `ghost restart` after uploading the theme with the CLI, if remote theme deploys, there is no need to start. ## Final Thoughts... Remember that you have to wait for Google Adsense to approve your website before the ads show automatically. With the AMP interface, you want to check if Google Adsense is set up correctly or not, then you add `amp/#development=1` to the end of the URL on the browser to check for errors with the Inspect Tool. If you want to use Google Adsense's Ad Units, you have to customize ghost's theme to add ads to placements like Sidebar, Comment, ,... of course, you should only use Ad Units when you know how to customize the ghost theme. ### Anti-downloading of video courses with Bunny Stream HLS URL: https://bepublish.com/anti-download-solution-with-bunny/ Last updated: 2026-04-04T12:32:52.000Z Video piracy is a global problem and there has never been a solution that is 100% effective even if you use the most modern tools today. The only way is that you will try to make this "contradiction and contradiction" game as difficult as possible. Professional hijacker clips can still download and pirate you with advanced tricks, but normal people will not be able to. For me, this is enough. Even if you steal professionally, it will be very difficult😁, it will not be worth their time to crack your clip. I would like to introduce you to an anti-download video course solution using [Bunny Stream HLS](https://bunny.net/?ref=t0llshkh2c) that combines some practical experience to help you protect your digital assets effectively. ## Great pros of Bunny Stream There are 4 great advantages of Bunny Video that you will fall in love with the first time you use it. 1. Video protection with HLS and many modern technologies combined 2. Videos load fast even on US servers 3. Powerful built-in Video Player 4. Cheap There are many similar solution providers who have difficulty balancing the 4 factors above.Despite only launching this streaming service recently, Bunny is one of the few who can handle it all. Bunny will update many other features in the future such as how they update their CDN service. Pay attention to Bunny's cost, which is extremely important when calculating the cost of your site after development. ![$0.005/GB per GB of bandwidth and $0.01/GB per GB of storage](https://bepublish.com/content/images/2021/05/image-42.png) ****$0.005/**GB per GB of bandwidth and ****$0.01/**GB per GB of storage (calculate pricing [here](https://bunny.net/pricing/stream/?ref=t0llshkh2c)) If you store **100GB** of video clips and use **1TB of bandwidth** you'll only pay **$6/month**. ## How to add HLS Bunny Stream to website The procedure for uploading videos and using Bunny Stream is as follows: 1. Create or login [Bunny account](https://bunny.net/?ref=t0llshkh2c) and create a collection collection 2. Upload a video 3. Wait for the encode to finish 4. HLS configuration 5. Get the code 6. Embed code on your website Collections help you categorize video management for each of your different projects (each site is a project or each course is a project). ![Create a Bunny Stream Collection](https://bepublish.com/content/images/2021/05/image-41.png) Create a Bunny Stream Collection The process of uploading the video is also quite fast, but then you need to wait for Bunny to encode your video the same way that Youtube does, but the encoding time will be longer because Bunny will create more HLS Playlists for your video. ![Upload Videos to Bunny Stream](https://bepublish.com/content/images/2021/05/image-35.png) Upload Videos to Bunny Stream By default Bunny will not enable HLS for you, you must enable HLS in the **Security** tab. Note that you should always use **Allow Domains** (whitelist domain) in the security tab to increase security and protect your Bunny account bandwidth (Bunny costs are based on bandwidth). ![Enable MediaCage Basic DRM (HLS) and Whitelist domains in Bunny Stream](https://bepublish.com/content/images/2021/05/image-36.png) Enable MediaCage Basic DRM (HLS) and Whitelist domains in Bunny Stream Once that's done, you can take the code and embed it in the webite using an HTML block. Pretty simple. ![Get the Embed Code of the video you just uploaded (after encoding)](https://bepublish.com/content/images/2021/05/image-37.png) Get the Embed Code of the video you just uploaded (after encoding) You will get the video as below ↓ ```html
``` Bunny Stream Embed Code (illustrated) ## Why Bunny Sream is so good for course videos Bunny Stream comes with a built-in Video Player, you just need to embed it on any platform you want, and Bunny's Video Player is very beautiful, allowing you to customize a lot of trendy features such as Picture in Picture, Play speed, main colors,... ![Customizability for Video Player Bunny Stream](https://bepublish.com/content/images/2021/05/image-39.png) Customizability for Video Player Bunny Stream Bunny also does not require you to use their Video Player, you can use any HTML5 Player HLS you like with the video source created from Bunny Stream. Very flexible. A very nice feature is that Bunny creates his own animated webp images for the video cover. This feature is great for your sales page or video listing page. Increase conversions better. You even use it for blog cover. ![Bunny tự tạo ảnh webp động cho bìa video](https://vz-52806003-f33.b-cdn.net/c661ce11-9cb6-420b-a87e-b06bd68ebf30/preview.webp) Bunny created his own animated webp for the video cover The Bunny Player embed code is well coded, both optimized for mobile and allows loading lazyloads. Convenient for anyone whether they know how to code or not. Bunny's Watermark feature is encoded from the moment you upload the video, not a simple layer of the video, and even better is that Bunny encodes the video for you for free. Bunny Stream supports Caption, this feature is very good, very necessary for everyone to create course videos. ## Final Thoughts... With AMP, when you insert Bunny Stream Player, the video will not display in the AMP article interface, but with just a code inserted into the unique head tag, you will help ghost display the video including AMP. ```javascript ``` ![Bunny Stream AMP video support for Ghost](https://bepublish.com/content/images/2021/05/image-38.png) Bunny Stream AMP video support for Ghost This code automatically converts iframes to amp-iframes. This is Google's AMP module script. Bunny Stream Player is not yet AMP compatible, so if you use Bunny Stream Video, you will lose AMP for that page. This course anti-download solution is not only limited to courses, you can also insert them for membership sites. ### The dark mode toggle for Casper theme without modifying it URL: https://bepublish.com/dark-mode-toggle-for-casper/ Last updated: 2025-10-01T14:59:57.000Z Ghost added dark mode to the Casper theme in a recently updated version. Casper's dark mode is activated automatically based on the dark mode settings of the browser the user is using, instead of allowing the user to select this mode. The provision of a dark mode toggle is a more convenient option for users. Users can optionally enable or disable dark mode in the website, giving them direct control over the appearance of the website better. This provides more convenience and flexibility for users. This tutorial will help you add a dark mode toggle to your Casper theme simply without having to customize the theme. 💡 Especially useful when you are using [ghost (Pro) Starter](https://ghost.org/pricing/?via=cuong76&ref=ghostfam.com) service. ![Sau khi thêm nút chuyển Dark Mode](https://bepublish.com/content/images/2023/05/image-7.png) After adding the Dark Mode switch ## Step 1: Add CSS code to the site header You copy the CSS code below into the site header `/ghost/#/settings/code-injection` ```html ``` ![Setting > Code injection > Site Header](https://bepublish.com/content/images/2023/05/image-8.png) Setting > Code injection > Site Header The main color of the button will be based on the color of the ghost accent color. ![Màu nút sẽ theo Accent Color](https://bepublish.com/content/images/2023/05/image-10.png) Màu nút sẽ theo Accent Color ## Step 2: Add JavaScript code to site footer You copy and paste the code below into the site footer `/ghost/#/settings/code-injection` ```html ``` ![Setting > Code injection > Site Footer](https://bepublish.com/content/images/2023/05/image-9.png) Setting > Code injection > Site Footer ![Toggle on the Desktop](https://bepublish.com/content/images/2023/05/image-11.png) Toggle on the Desktop ![Toggle on the Desktop](https://bepublish.com/content/images/2023/05/image-12.png) Toggle on the mobile ## **Final Thoughts...** Unfortunately, the button will not work to switch the theme to Light Mode if the user is using the default Dark Mode for the system. Good luck! ### Simple way to create a table of contents for Ghost articles URL: https://bepublish.com/create-a-table-of-contents-for-ghost/ Last updated: 2025-10-01T15:02:41.000Z With most articles exceeding 2,000 words and many headings, readers would find it challenging to understand and enjoy them without a table of contents. If you have a long-term article, readers are more likely to read it in pieces than to read it all at once. It is always a good idea to provide readers with a table of contents, which can serve as a mini menu to help them navigate the content and ensure the reading circuit is not broken. The following instructions will show you how to create an automatic table of contents for Ghost and manually insert it anywhere (including the sidebar) in your post. This is especially useful for [Ghost (Pro) Starter](https://ghost.org/pricing/?via=cuong76&ref=bepublish.com) users who cannot modify their themes. (**Check out the last section of this article**) ## Create an automatic table of contents with TOCBOT [TOCBOT](https://tscanlin.github.io/tocbot/?ref=bepublish.com) (table of content bot) is an external script that helps you automatically create a table of contents based on the heading heading in the article. The installation method is as follows: ### Step#1: TOCBOT script installation ```html ``` place code at Post header {{ghost\_head}} ```html ``` place code at Post footer {{ghost\_foot}} ![Code injection](https://bepublish.com/content/images/2023/05/image-4.png) Code injection 💡 This code must be injected as above tutorial to prevent TOCBOT not working ### Step#2: Place the styled table of contents anywhere you like I need to use **HTML card** to insert the code below ![Use HTML card to insert the table of content everywhere you like](https://bepublish.com/content/images/2023/05/image-3.png) Use HTML card to insert the table of content everywhere you like ```html
``` Should be saved as snippet TOC to use ![Create Snippet TOC to reuse](https://bepublish.com/content/images/2023/05/image-6.png) Create Snippet TOC to reuse ![Name Snippet TOC to remember](https://bepublish.com/content/images/2023/05/image-5.png) Name Snippet TOC to remember for recall ### For example, I placed a table of contents right below this paragraph You should insert it into the **Post Head** instead of the **Ghost Head** because you should only insert the table of contents into long posts. Short articles are not recommended (As you can see, this one is not advisable 😅). Try to make it as easy on the eyes and convenience as possible for the reader. Remember **to save to Content Snipet** as Table of Contents or TOC to reuse for future posts. ## Note when inserting the table of contents automatically using TOCBOT After you have installed TOCBOT, add the following HTML card to any post you want. An extremely important note is that each theme will not be the same and will have different content classes. `contentSelector: '.c-content'` ![ContentSelector based on theme](https://bepublish.com/content/images/2023/05/Code-tocbot.webp) `ContentSelector` based on theme For example, all [Aspire](https://gumroad.com/a/566326387?ref=ghostfam.com) theme themes will have a class `.c-content`, while [Fueko themes](https://1.envato.market/rAyrQ?ref=ghostfam.com) will have a class `.post-content`, [Casper theme](https://github.com/TryGhost/Casper?ref=bepublish.com) will also have a class `.gh-content`, etc If you have the wrong class, the table of contents will not be created automatically. Each theme will have a Class Name depending on the developer's preferences. If you have problems calling the right class name or error style when using a certain theme, please let me know at comment below. ## For ghost (Pro) user using Casper theme 💡 The below code only works with the Casper theme. Thanks to **Ben** for pointing out that the code didn't work with Casper theme, so I rewrote it and tested it myself. With this dedicated code, you can automatically inject the ToC for Casper theme with two simple copy&paste on Site Header and Site Footer: ```html ``` ![inject code to site header](https://bepublish.com/content/images/2023/06/inject-site-head.webp) Site Header ```html ``` ![inject code to site footer](https://bepublish.com/content/images/2023/06/Settings---Code-injection-.webp) Site Footer The final result: ![ToC on Casper theme](https://bepublish.com/content/images/2023/06/the-result.webp) ToC on Casper theme ## Final Thoughts... A theme should not be inserted directly into articles (except in the case of a custom post template), but should only be manually inserted as a guide for the best results in terms of site speed and reader experience. In a nutshell, you will do the following when adding an automatic table of contents to an article: 1. Insert TOCBOT into the post head. 2. Insert the Content Snipet card saved above in any location you want of the post. ### Simple tips for creating ghost notification popups URL: https://bepublish.com/simple-tips-for-creating-ghost-popups/ Last updated: 2025-10-01T15:29:43.000Z One of the ways to help you increase conversion rates quite effectively is Popup, so professional popup tools like [ConvertBox](https://convertbox.com/private-lifetime/?affiliate=cuongthach&ref=bepublish.com) always cost quite a lot, including lifetime. To save you money, I'll guide you through creating a simple notification popup that's more than enough for you to use for your basic needs. It's free! ## Add popup snipet code to Ghost website Copy and paste the code snipet below according to the instructions (the copy button will appear in the right corner when you hover over the code). ```html ``` Code #1 ```html ``` Code #2 The code is super lightweight, weighing just over 2KB without gzip. You have 2 ways to add depending on your wishes. 1. **Add the whole site**. Add the style to the site head and the rest to the Ghost's body tag. 2. **Add a popup to the specified post or page**. You add styles and and the rest to .`Post headerPost footer` ![Add a entire site popup](https://bepublish.com/content/images/2021/05/image-51.png) Add a entire site popup ![Or - 2. Add a popup to a specified post or page](https://bepublish.com/content/images/2023/05/image-2.png) Or - 2\. Add a popup to a specified post or page Note, you can only choose one of 2 ways, not using both will cause an error. You should consider which one suits your needs best. ## How does this popup work? ![How the popup look like](https://bepublish.com/content/images/2023/05/image-1.png) How the popup look like The popup will be displayed an unlimited number of times, unless the viewer clicks the "**X"** button to close the popup, it will not be visible for the next **7 days**. This means that when viewers don't want your popup to bother, they will press **the "X"** button to close the popup, when they view your other pages will no longer be visible, even when they return to your site. The reader experience will be guaranteed. When viewers click on the CTA call button, the popup will stop showing for **3 days** to avoid feeling spammed for viewers. To change the page redirect of the CTA button and the default display date, follow the instructions below ↓ ## How do I customize the popup display? To change the path to the desired landing page, change code **#2** to the slug of the page or the URL you want. For example, you change from `location.href='#'` to `location.href='/YOUR_PAGE_SLUG/'` ![](https://bepublish.com/content/images/2023/05/customize-code.webp) Example: `location.href='#'` To change the content, edit the CTA button text and text as shown above `[Demo] ghostFam just release new services` and `Learn More` . To change the default number of days you change (3 days) and (7 days) to the number of days you want. The way to calculate dates is to use \*24\*60\. `max-age=4320` `max-age=10080` ![3 days = max-age=4320 & 7 days = max-age=10080](https://bepublish.com/content/images/2023/05/customize.webp) 3 days = `max-age=4320` & 7 days = `max-age=10080` ## Final Thoughts... This is just a simple but highly effective code snipet for you. You can use it on any landing page or other platform as you like. Please see the popup demo on this page on the left. Good luck! ### How to configure Mailgun for email sending in Ghost URL: https://bepublish.com/how-to-configure-mailgun-for-email-sending-in-ghost/ Last updated: 2025-10-01T15:31:38.000Z Check out our Mailgun configuration guide for Ghost to ensure you're getting the most out of email. _This post is for subscribers only._ ### Your blog should have a comment system for these reasons URL: https://bepublish.com/yout-blog-should-have-a-comment-system/ Last updated: 2025-08-03T00:42:02.000Z Many of you ask is it worth paying for a commenting system? Is it worth investing time in complex configuration settings for the seemingly simple comment section under each article? There's no answer for you, as it depends on whether or not this comment section brings any "real" benefit to your blog. Too many benefits? Ok, let's install it. No benefits? You can turn it off. The decision is yours. Here are some "good" points that the comments section can help you with. Please refer to your decision! ## 1\. Comments help build credibility for your blog Nowadays as you can see, spam blogs have always existed and it is very normal for them to steal your content. So what's the difference between your blog and blogs that steal or recraft your content? The difference lies in the fact that you have the ability to answer every root of the problem with the comments section below each article. Readers have now also become sophisticated, they can distinguish between original articles and duplicate articles by looking at the comments below. The comment section is something that cannot be copied because it is always changing and has security features. Comments help you prove this is your article, you understand it best. Not only will you keep your credibility, but you'll also increase it. Very beneficial! Conversely, imagine, you don't have comments while the blog copying your content does. So what would it look like? They will "unknowingly" be more reputable than you. ## 2\. Look for new post ideas Idea squash has always been a problem for every blogger. It's not that they don't know anything to write more, it's that they don't know what readers need. No one wants to write things that your readers don't need. The most effective way of all time is to give yourself a recommendation reader. Don't expect readers to email you, most won't. They may email appreciation or thanks for something via email, but suggestions usually don't. The comments section is the most convenient place for any reader to quickly suggest their opinions, these suggestions will be your next new post. Not to mention, sometimes discussions among readers also inspire your new ideas. Very effective! After reading this article, remember to comment your wishes in the comments section below, I believe there will be a new article faster. ## 3\. Increase your post's conversion rate Once you see an article with a lot of positive comments, it means that in the future, it will have a much better conversion rate. It has the same rule as the reviews and comments of products that sell well on the e-commerce platform. So a post without a comment section will lower your conversion rate. Especially if you are doing affiliate marketing of a certain product. As you know the rules when doing marketing, the playing field is not just you, the post with a high conversion rate will be the winner. Comments contribute to your victory. There are comments, which means that someone has done it, the same experience as you,... Readers will take action now because they are convinced by you and other readers. In addition, it creates a "social proof" crowd effect for better conversions. Social Proof is one of the most powerful factors that easily create super-fast conversions. ## 4\. Better Article SEO Google has always focused on quality content, and the comments section of the article will prove it. The comment section is always loaded with the page, as you can see below this article, the comment section uses JavaScript to render HTML and is updated in real time. Usually, posts with lively comments will have more chances of ranking higher than others. It's true, Google has also repeatedly mentioned the SEO element of the comment section. It is one of the factors for the Google algorithm to rank your article. Why? Comments help you increase your time on page to boost the ranking of posts with a lot of comments, or at least to give readers a reason to stay on your page longer for leaving comments at the end of the post. "Time On Page" is a strong ranking factor for an article. More posts with such comments will again help you increase your "Time On Site" to further contribute to article promotion, if you have good internal site links. ## 5\. Update or add to the main content Some types of articles will need a slight updating of relevant or fringe information. Imagine like a Facebook post, where do you update information constantly? Did you edit the main content to update it? What will the article page cache look like if you keep clearing the cache just to update? What will you see them doing at Facebook? They updated in the comments. They add in the comments section to sub-content that they fear dilutes the main content above. Thanks to comments, you can add information that is separate or indirectly related to your main content. These comments are often "pinned" to the top for everyone to see. ## 6\. Comments are highly entertaining for your mind Honestly, any blog that doesn't have a comment I always felt it wasn't a blog. It's a news page or an announcement page or a more documentary page. Your feelings, I think, will be the same as mine. Commenting is the specialty of blogging. Without comments, the blog feels like it's no longer a blog. Regardless of whether the comments are positive or negative, it will bring you a high level of mental entertainment. Do you always feel happy every time you make a new comment? Expect a comment? Turning it off is sad. Right? ## Final Thoughts... Conversely, some of you choose to turn off the comment section or do not pay enough attention to the comment section for the following reasons: 1. Takes up too much time for you to respond, distracting from publishing subsequent quality articles. 2. The cost of integration is higher than the benefits that the comment section offers. 3. Too many spammed links, security. Personally, commenting is the best way to understand your readers, missing the comment section as if I am writing for myself to read rather than for you to read. [Why I choose Hyvor Talk Comment for my ghost Blog?Is there a reason why I chose Hyvor Talk for commenting on the Ghost website and every other platform I use?![](https://bepublish.com/content/images/icon/ghostfam.webp)ghostFamCuong Thach![](https://bepublish.com/content/images/thumbnail/photo-1606159068539-43f36b99d1b2)](https://bepublish.com/why-i-choose-hyvor-talk-comment/) What about you? What do you think of the comments section? Leave your comments for discussion below! ### A guide to adding Giscus comments to ghost URL: https://bepublish.com/adding-giscus-comments-to-ghost/ Last updated: 2026-05-02T04:04:26.000Z Giscus is a free commenting app with a database stored in your Github account instead of the service's database like other comment apps. Giscus links to the Github Discussion API to create comments for your site. The advantages of Giscus are free, spam-resistant, and quite beautiful. The disadvantage is that it is mandatory to have a Github account to be able to comment. How to use Giscus is as follows: ## 1\. Create and Configure Github Repo [Log in to](https://github.com/login?ref=bepublish.com) your Github account (or create a new [Github account](https://github.com/signup?ref=bepublish.com)) and create a new **public repo** (not private). You give this Github Repo a memorable name. Then you need [to install the Giscus App for the newly created Repo](https://github.com/apps/giscus?ref=bepublish.com). ![Select Configure to install](https://bepublish.com/content/images/2021/09/cai-dat-Giscus-App-cho-Repo-cua-ban.png) Select Configure to install ![Use the Only select repositories option for your newly created repo (don't use the All repositories option)](https://bepublish.com/content/images/2021/09/Chon-Giscus-Repo.webp) Use the Only select repositories option for your newly created repo (don't use ****the All repositories option)** In the settings, turn on the Discussion feature (it turns off by default). ![Open the Discussions option for your newly created Github Repo](https://bepublish.com/content/images/2021/09/mo-discussion-feature.png) Open the Discussions option for your newly created Github Repo Get it done on Github. ## 2\. Generate Giscus App code automatically You go to [the Giscus.app](https://giscus.app/?ref=bepublish.com) to create, here there is old technology available for you to create code. You need to enter "username/reponame". Username is your Github username, reponame is the Repo name you set above. Customize the interface and some features of Giscus as follows. ![Note Your Username and Repo](https://bepublish.com/content/images/2021/09/Huong-dan-su-dung-Giscus.webp) Note Your Username and Repo Note, you should choose a preference color because it will be based on the Darkmode (if any) of the Ghost theme you use. You can also choose to toggle the reaction widget on and off. Finally, you create the code and paste it into the Ghost theme. ## 3\. Secure your Giscus commenting system Very important for this step, you need to make sure Giscus is only visible on your site. Since Giscus scripts are client scripts, they are easily stolen. To avoid that, you need to whitelist the domain you use Giscus. You create a new file named , paste the code below`giscus.json` ```json { "origins": [ "https://yourdomain.com" ] } ``` Change to the domain you are using, insert Giscus.`yourdomain.com` ![Create a new file giscus.json](https://bepublish.com/content/images/2021/09/tao-moi-giscus-json.webp) Create a new file `giscus.json` Done, now Giscus only loads comments on the specified domain you declared above. ## 4\. Set up comment notifications This is better than Telegram comments for Ghost because notifications can be created. [How to use Telegram as a commenting system for ghostHow to use Telegram Comments as a commenting system for Ghost. It is simple to set up Telegram Comments for Ghost.![](https://ghostfam.com/en/content/images/size/w256h256/format/png/2023/08/ghostfam.webp)ghostFamCuong![](https://images.unsplash.com/photo-1666152686616-3e1c9b8bffc9?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8c2VhcmNofDM0fHx0ZWxlZ3JhbXxlbnwwfHx8fDE2ODUwODI2MDZ8MA&ixlib=rb-4.0.3&q=80&w=2000)](https://bepublish.com/use-telegram-as-a-commenting-system/) You install in Github Repo Setting, at the Notification tab, you enter the email you use to receive notifications. ![Select email notifications for Repo](https://bepublish.com/content/images/2021/09/cap-nhat-email-repo.webp) Select email notifications for Repo Every time you have a new comment (including replying to a comment), you'll receive an email notifying you. ## Personal experience using Giscus Due to the requirement to have a Github account to comment, it is quite unsuitable for general readers. In return, good spam protection. There is no limit on the display of comments, which will be a big issue in terms of display and loading speed if there are many comments on the page. Depending on the Github Discussion API, Microsoft can change the API anytime they feel "abused" or unnecessary. Hopefully it doesn't happen! Giscus is still being updated to be more complete, hopefully more diverse configurations in the next updates. Giscus is only suitable for personal blogs. ## Final Thoughts... Giscus can be used for all platforms, not just Ghost. Each comment will rely on the slug of the article, so you must not change the article slug that will lose the old comment. Finally, check out the demo below ↓. ### How to customise the Ghost theme with Github URL: https://bepublish.com/how-to-customise-the-ghost-theme-with-github/ Last updated: 2023-08-27T04:44:28.000Z Tutorials on how to manage Ghost themes conveniently with Github. _This post is for subscribers only._ ### Auto-install ghost CMS from DigitalOcean Marketplace URL: https://bepublish.com/install-ghost-cms-digitalocean/ Last updated: 2025-10-01T15:18:26.000Z How to install Ghost CMS automatically using DigitalOcean with the click of a button. _This post is for subscribers only._ ### Speeding up Ghost's website by preloading links URL: https://bepublish.com/a-magic-trick-that-speeds-up-ghost/ Last updated: 2025-10-04T23:53:26.000Z The following instructions will help you generate a faster ghost website by preloading links before they are displayed. _This post is for subscribers only._ ### Create a contact page with HTML form for Ghost URL: https://bepublish.com/create-a-contact-page-with-html-form-for-ghost/ Last updated: 2024-08-01T03:27:08.000Z The contact page is always a "must-have" page on every website, it seems to be popular so anyone can do it, but most people have problems with this page. Even if you use WordPress, it won't be easy to create a standard contact form that balances operation and design even with the help of expensive plugins. Creating a contact page isn't as easy as many of you think😅, and it's never been that simple. This article will help you quickly create a standard contact form, manage messages, and fly technical concerns. What's even better is that you can do it right on the ghost site without touching the theme. ## 1\. Create Contact Pages and HTML Forms First, you create a new page, without selecting the Page Template. You just create a normal Page page and name it Contact slug arbitrarily. Next, you create an HTML form pasted into an HTML Block of Ghost. A contact form will have common fields that are: 1. Form title 2. Sender information (name, email, website) 3. Message content 4. Attachments (usually only used to report errors, if the contact is normal, you don't need to) You can copy the form I used in a streamlined way below as follows. ```html





``` Pay attention to , this is the key for the next steps because the above 4 data will be sent thanks to .`Form ActionForm Action` P/S: You can customize more fields with just a few lines of code. Learn more about [creating HTML forms at W3schools](https://www.w3schools.com/html/html%5Fforms.asp?ref=bepublish.com). ## 2\. Choose an HTML form management tool You've probably heard of [Formspree](https://formspree.io/?ref=bepublish.com), a multi-platform HTML generator and the 100% choice of Ghost theme developers for contact form integration. Formspree is one of the pioneering HTML form businesses that should have market share in the market. However, there are 2 major shortcomings of Formspree 1. Few improvements if not no updates 2. High price I encourage you to use [Formspark](https://formspark.io/?ref=bepublish.com) instead of Formspree because of the LOVING PRICE but NUCLEAR😁 TECHNOLOGY ![](https://bepublish.com/content/images/2021/03/Bang-gia-Formspark-1.png) ![](https://bepublish.com/content/images/2021/03/Bang-gia-Formspree-1.png) Formspark ($25 is 1-time purchase) vs Formspree [Formspark Lifetime Deal - $49 - Dealify Exclusive DealGet the Formspark lifetime deal today and start using the form solution for any developer. Simple, but powerful. Get it now at one-time $49!![](https://www.dealify.com/wp-content/uploads/2022/08/cropped-Dealify-Logo-V3-270x270.jpg)Dealify.![](https://www.dealify.com/wp-content/uploads/2020/12/formspark-homepage.png)](https://www.dealify.com/formspark/?deal=cuongtran&ref=bepublish.com) Formspark is being sold for $49 for 1 lifetime fee on Dealify ## 3\. How to Use Formspark Once you sign up for a Formspark account, you can create a form right away, no lengthy Visa card or account verification process required. Each form created will have a unique ID for that form corresponding to a URL. ```html
``` ![Form ID from the Formspark Dashboard](https://bepublish.com/content/images/2021/03/image.png) Form ID from the Formspark Dashboard You will use this address for `form action` , I mentioned above. Basically, you've created a contact form. ## 4\. Make spam a thing of the past Did you know, all comments or forms must be spambot-proof ([the reason I use Hyvortalk comments](https://bepublish.com/why-i-choose-hyvor-talk-comment/) is because it is very effective against spam) otherwise your whole contact page will become a disaster of spam. Luckily, unlike other HTML form management software, Formspark has [Akismet](https://akismet.com/?ref=bepublish.com) built into their anti-spam filter, you already have a layer of protection in place from the start. However, subjectivity will harm you, you must strengthen your anti-spambot fight with the free Honeypot. Not the default honeypot, but [the custom honeypot](https://documentation.formspark.io/setup/spam-protection.html?ref=ghostfam.com#custom-honeypot). Honeypot will help you fight spam and honeypot is technically free, we should not waste it. To complement the Honeypot, we need to [add Google reCapcha](https://documentation.formspark.io/setup/spam-protection.html?ref=bepublish.com) to make sure. We recommend reCapcha v2 because it is the most efficient (better than reCapcha v3). hCapcha is annoying for users, if not really necessary you should not use it. The most effective is the 3rd layer, [Botpoison](https://botpoison.com/?ref=bepublish.com), which is the most effective anti-bot service available today and has a starter free plan. Disclosure: Botpoison and Formspark are the same company 😅. So your form will be completely immune to spambots 😋 ## 5\. Manage messages sent to you on the Formspark Dashboard The dashboard is where all messages sent to you via the form are stored, and the great thing is that it has a very good notification system. ![Lựa chọn thông báo Formspark](https://bepublish.com/content/images/2021/03/Lua-chon-thong-bao-Formspark.png) Formspark notification selection Formspark allows you to send notification emails to multiple recipients (great when you're working in a group). Not stopping there, Formspark also has built-in Slack channel notifications for you, I always use [Slack](https://slack.com/intl/en-vn/?ref=bepublish.com) and this feature really satisfies me. Even if you don't use Slack, you can receive notifications via Telegram or Discord indirectly via webhooks. Yes, Formspark supports webhooks as well. The added advantage is that Formspark allows you to reply to the person who sends you a message by replying right in the email 🤫 (remember to have a business mailbox, don't use your personal Gmail to reply). ![Direct Reply from business mailbox (domain email)](https://bepublish.com/content/images/2021/03/image-2.png) Direct Reply from business mailbox (domain email) Formspark's notification system in my opinion is a 10-point must. It is difficult for opponents to do the same. In addition, Formspark automatically sends you statistical reports every week which is very convenient. Below is an example form generated using Formspark, and it incorporates Cloudflare Turnstile to combat spam. It inherits my theme with additional classes. Send it → ## Final Thoughts... Note that Formspark does not have its own SMTP, so it is not possible to reply to senders in the Dashboard. The optimal way is always [to use Direct Reply](https://documentation.formspark.io/customization/direct-replies.html?ref=bepublish.com). This feature will allow you to reply to senders directly to your business mailbox. ![Formspark only stores messages, cannot reply from Dashboard](https://bepublish.com/content/images/2021/03/image-1.png) Formspark only stores messages, cannot reply from Dashboard The next note is the feature that automatically sends a confirmation email to the sender. You can still do it with Webhooks, but it requires you to use middleware like Zapier or similar. If you want to hide the Formspark brand when the sender is done, then you need to [redirect the redirect](https://documentation.formspark.io/customization/redirection.html?ref=bepublish.com) to the URL you created (create a thank you page or confirm). Good luck! ### How to use Telegram as a commenting system for ghost URL: https://bepublish.com/use-telegram-as-a-commenting-system/ Last updated: 2024-08-01T03:25:08.000Z In addition to Hyvortalk and Disqus, you have quite a selection of commenting systems for Ghost blogs, among which is the FREE Telegram Comments Widget. Although not perfect, Telegram Widget Comments can still be extremely suitable for those who are in the Telegram-related niche. In particular, you can use it with [Hyvor Talk Comment](https://talk.hyvor.com/?aff=7496&ref=bepublish.com) when needed😁, because it is a widget. [Why I choose Hyvor Talk Comment for my ghost Blog?Is there a reason why I chose Hyvor Talk for commenting on the Ghost website and every other platform I use?![](https://ghostfam.com/en/content/images/size/w256h256/format/png/2023/08/ghostfam.webp)ghostFamCuong![](https://images.unsplash.com/photo-1606159068539-43f36b99d1b2?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8c2VhcmNofDEzfHxjb218ZW58MHx8fHwxNjg0NzQxNzE1fDA&ixlib=rb-4.0.3&q=80&w=2000)](https://bepublish.com/why-i-choose-hyvor-talk-comment/) ## How to Add Telegram Widget Comments to Ghost 1 **Create a Telegram account** You can skip this step if you already have a Telegram account. If you do not have one, you [create a new](https://telegram.org/?ref=bepublish.com) Telegram account with your phone number (download the Telegram app to your phone or computer to register an account). 2 **Create a Telegram Comments script for your site** Visit [Telegram's Comments.app (Telegram's](https://comments.app/?ref=bepublish.com) main site, so rest assured) and fill in the necessary information such as domain and site name. ![Fill in the necessary information to identify your website](https://bepublish.com/content/images/2021/05/image-17.png) Fill in the necessary information to identify your website Next, customize the comment interface a little more to suit your site design. ![Customize the interface and get embedded code](https://bepublish.com/content/images/2021/05/image-18.png) Customize the interface and get embedded code Finally, you will have an automatically generated script. Copy the script code and insert it into the Ghost theme in the next step. 3 **Insert Telegram Comment into Ghost theme** Paste the script code into either the replacement (the AspireTheme theme) or (depending on the theme's creation and name).`post.hbsdisqus.hbscomment.hbs` Usually in the following code: ```html
....
``` Note: Add in the code to distinguish the page ID for each comment.`data-page-id="{{comment_id}}"` Your code will be as follows: ```javascript ``` ## How to Use Telegram Comments After adding the code, the comment section will display as follows ↓ Anyone who wants to leave a comment must grant Telegram permission to create a DiscussBot channel on your account to receive notifications when someone responds to a comment. Of course, the person who wants to comment must have a Telegram account and log in to comment. There is no option to use email. You can add Mods or Admins to manage your comment system. The condition is that the Mod account must leave a comment on your site, you can only grant Mod permissions after they have commented. 💡 Extremely important note: The reason I consider Telegram Comment to be imperfect is because when there is a new comment you (Admin and Mod) will not receive any notification to reply. Huge minus. Commenters will receive a notification via **the DiscussBot** channel when someone replies. ![DiscussBot Telegram](https://bepublish.com/content/images/2021/05/DiscussBot.png) DiscussBot ## Combine Telegram Comment with other comments Because it is a widget, you can insert it anywhere you want, not only at the blog but also on the page. I'm sure there will be some pages where you want to insert a separate comment area from your blog, such as a sales page or specific pages. Once there, you just need to create an HTML block and insert the code to edit a bit as follows. ![HTML block](https://bepublish.com/content/images/2021/05/image-16.png) HTML block Note the ID, which you must manually assign to separate the page. You can optionally set different pages that will have different IDs. This method does not only apply to Ghost, but you can apply to any platform you want as long as you can insert HTML blocks. You can see me inserting Telegram above as an example. ## Final Thoughts... Although Telegram comments have a very streamlined and gentle interface, there are some extremely annoying shortcomings (not as perfect as mentioned at the beginning of the article) 1. There is no notification when there are new comments. 2. Moderation rules cannot be installed. 3. No email notification. 4. Commenters are required to have a Telegram account. And it seems that Telegram will not improve further, this is just a widget that competes with Facebook Comment. Telegram will not be centralized. You won't be able to expect new updates to Telegram Comments anytime soon. Compared to my favorite [Hyvor Talk](https://talk.hyvor.com/?aff=7496&ref=bepublish.com), Telegram Comments are not comparable in every way, except cost😅. ### For new bloggers, how to use Google Search Console with Ghost URL: https://bepublish.com/for-new-bloggers-how-to-use-google-search-console-with-ghost/ Last updated: 2023-08-27T05:04:58.000Z [Google Search Console](https://search.google.com/search-console/?ref=ghostfam.com) is the only means of communication between site owners and Google, a tool that 100% of new bloggers must know how to use. Due to constant updates (online guidelines are often outdated) and Google Search Console itself is not easy to understand, it will create quite a challenge for newbies. I will show you the most standard way to use Google Search Console with Ghost in 4 easy steps, you can gently master this tool. ## 1\. Add your site to Google Search Console Since Google Search Console has updated changes that are both dynamic and secure, now the standard and recommended way to use from Google is to add both and .`Domain property` `URL property` Since Google Search Console has updated changes that are both dynamic and secure, now the standard and recommended way to use from Google is to add both and . `Domain property` `URL property` ![Domain Property and URL Property (Add new Property)](https://bepublish.com/content/images/2021/05/image-25.png) Domain Property and URL Property (Add new Property) Always add the Domain Property first because after completing **the Domain Property** verification, **the Property URL will also automatically validate**, saving time validating around. 1. Add a domain property and verify the domain owner. 2. Add property URLs (auto-authenticate owners). Domain Property will help Google understand the entire root domain and related subdomains, thereby supporting overall SEO. Domain properties should always be added to Google Search Console. Verifying the domain property owner is extremely simple. You just need to add 1 TXT record with the code Google provides in DNS management (Cloudflare, Namecheap, Namesilo,...). ![Google's domain validation guide for your site](https://bepublish.com/content/images/2021/05/image-21.png) Google's domain validation guide for your site ![Validate your domain (Cloudflare)](https://bepublish.com/content/images/2021/05/image-24-1.png) Validate your domain (Cloudflare) Then click Validate in Google Search Console to complete (need an update time for DNS records of a few minutes if Cloudflare, a few hours if other domain name providers). ## 2\. Submit your website's sitemap to Google Search Console Not all websites have the ability to generate sitemaps automatically. WordPress recently added the ability to create automated sitemaps to the core. Ghost has already created sitemaps for you by default from the first versions. Blogs are essentially creating a lot of content, so sitemaps are essential because they will help Google quickly index your newly published articles and orphaned pages on your site (pages that don't have any links from all of your posts). The default ghost automatically generates a sitemap for you with the following URL: ``` https://yourdomain.com/sitemap.xml ``` You just need to add the sitemap at the property URL, the domain property will be automatically added. You don't add any sitemaps in your Domain Property. ![Add a site map at the Property URL (e.g. https://yourdomain.com)](https://bepublish.com/content/images/2021/05/image-26.png) Add a site map at the Property URL (e.g. https://yourdomain.com) ## 3\. Set up automatic sitemap ping every time you publish a new article Ping your sitemap will help Google index your newly published article faster, just like you tell Google "I've published a new article, please index it." Pinging sitemaps is extremely simple on Ghost (complicated with other platforms) because Ghost has very good webhooks. You will create a custom integration (or use an existing **custom integration**, no new one required). Choose 4 important events 1. `Post published` 2. `Page published` 3. `Post unpublished` 4. `Page unpublished` ![4 Loại Webhook Event bạn cần tạo](https://bepublish.com/content/images/2021/06/Image-2021-06-18-at-6.45.18-AM.png.png) 4 Types of Webhook Events You Need to Create Add the webhook URL for each event as follows: ```http http://www.google.com/ping?sitemap=https://yourdomain.com/sitemap.xml ``` ![Post Published webhook event](https://bepublish.com/content/images/2021/05/image-27.png) Post Published webhook event ![4 Webhook event after installation](https://bepublish.com/content/images/2021/06/Image-2021-06-18-at-6.46.35-AM.png.png) 4 Webhook event after installation Note, do not choose the wrong event trigger, pay careful attention. ## Final Thoughts... If you use Ghost's AMP, Google Search Console will add an AMP tab in the Enhancements tab. However, posts for members will cause AMP errors, of course. If you see an AMP error in your member posts, ignore it. No problem (member-only pages won't have AMP). Good luck! ### How to use ghost comment the right way – detailed guide URL: https://bepublish.com/how-to-use-ghost-comment/ Last updated: 2025-10-05T00:00:17.000Z Ghost Comment has a simple and sophisticated interface, full of necessary functions, and coordinates smoothly with ghost membership features, including newsletter emails. The usage of Ghost Comment is quite unique. Check out this guide to find out what's different about ghost comments. ## Enable ghost comment By default, ghost will turn off the comment feature and let the user decide to turn it on / off according to needs. To use Ghost Comment, you first need to check if the theme you're using supports this feature. Most of the newly developed themes and official themes from Ghost have updated support for Ghost Comment. If the theme you don't already support, then you need to add ghost comments manually to the theme or hire someone to do it for you. Enabling ghost comments in Ghost Admin is quite simple, you go to **Setting > Membership > Commenting > All members** ![Select All members to enable Ghost Comment](https://bepublish.com/content/images/2023/05/ghost-comment-turn-on.webp) Select ****All members** to enable Ghost Comment ## How do I use ghost comments? The principle of using ghost comments is simple: Whoever comments on which page, you go to reply to comments on that page. That means in ghost admin there are no tags for you to manage comments, reply to comments, delete comments like other platforms. Instead, you need to visit the pages where readers leave comments and click the reply button to reply or delete any comments. You need to ensure the following 2 mandatory steps to use ghost comments: 1. **Logged in ghost** admin as admin or staff 2. Logged **in blog** as a member ![1. Login Ghost Admin](https://bepublish.com/content/images/2023/05/login-ghost-admin.webp) 1\. Login Ghost Admin ![2. Self-login as a member](https://bepublish.com/content/images/2023/05/login-member.webp) 2\. Self-login as a member This means that you must manually add yourself to the Member list so that you can log in as a member. ![Add yourself as a Member in the Ghost Admin > Member Tab](https://bepublish.com/content/images/2023/05/tu-theme-minh-lam-member.webp) Add yourself as a Member in the Ghost Admin > Member Tab When you log in to ghost admin, the duplicate browser you use saves the cookie and uses it to identify you as an admin when you log in as a member. From there, the ghost will grant you the permission of a Moderator manager to reply to comments (delete, flag,...). Therefore, when you log in to ghost admin and use a browser on your computer, when you use a mobile browser, it is imperative that you log in again in the above 2 steps: login ghost admin and member again. ## Pros and cons of ghost comment **Ghost comment still has some of the following shortcomings:** 1. Caches must be optimally configured, especially with Cloudflare Cache. 2. There is no Vietnamese interface, only English. Users are requesting multilingual support. 3. The page loads slower, not because the ghost comment script is too heavy, but because the cache is configured to use ghost comments, so the whole site will load slower. **Great advantages of ghost comment:** 1. Automatically recognizes the commenter's Gravatar. 2. Seamless integration with ghost membership. 3. Help build a better community and email list because you have to register as a member to comment. 4. As part of the data, when you move the site, all comments are still retained. ## Final Thoughts... If your site is pure news or blog, using ghost comments will slow down your site, you should use a third comment like Cusdis. [Add free Cusdis comments to ghost to increase conversionsExplore the Cusdis commenting utility and detailed instructions on how to integrate Cusdis easily.![](https://ghostfam.com/en/content/images/size/w256h256/format/png/2023/08/ghostfam.webp)ghostFamCuong![](https://images.unsplash.com/photo-1623915695133-d624f7759fd0?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8c2VhcmNofDg5fHxjaGF0fGVufDB8fHx8MTY4NDcxODY4MHww&ixlib=rb-4.0.3&q=80&w=2000)](https://bepublish.com/add-cusdis-comment-to-ghost/) But if you're looking to build a newsletter blog, paid memberships, or build a loyal fan, Ghost Comment couldn't be a better choice. If you have difficulty using Ghost Comment, please leave a comment below for assistance! ### A step-by-step guide to setting up Cloudflare's free domain email URL: https://bepublish.com/setting-up-cloudflares-free-domain-email/ Last updated: 2025-10-01T15:07:56.000Z If you use your own domain email to contact potential partners, you're significantly more likely to get a response than using a personal email. With custom domain emails, partners will easily recognize your identity and website content, helping to ensure the accuracy of the information you present. This is the basis of a successful long-term partnership in the future. In this tutorial I will help you create a private domain email using Cloudflare Email Routing in step-by-step details with the following characteristics: - Free - Easy installation - Convenient to use - Receive and send emails with Gmail - Domain email settings for Ghost blogs --- ## About Cloudflare Email Routing ![Cloudflare Email Routing](https://bepublish.com/content/images/2023/04/email-routing.webp) Cloudflare Email Routing [Cloudflare Email Routing](https://www.cloudflare.com/products/email-routing/?ref=bepublish.com) is a free email forwarding service from Cloudflare that helps you create a domain email address simply with just a few taps. In addition, all forwarded emails will not be stored on Cloudflare's servers, but will be forwarded directly to your personal mailbox for your security and privacy. Cloudflare Email Routing also offers email tracking to help you see if emails forward succeed or fail. --- ## Set up email receipt with Cloudflare Email Routing To set up receiving email using Cloudflare Email Routing, you need to make sure your domain's DNS is managed by Cloudflare (If you don't know how, refer to the video below). Next, go to the Email tab to configure DNS automatically, Cloudflare will automatically add the necessary DNS records for you. ![Click the "Add records and enable" button to have Cloudflare set up automatically for you](https://bepublish.com/content/images/2023/04/auto-add-records.webp) Click the "Add records and enable" button to have Cloudflare set up automatically for you If an error occurs, check the conflicting DNS records section (because you have installed email services such as Mailgun SMTP) and delete all MX records in DNS (Mailgun MX you feel free to delete because it is not necessary) so that Cloudflare adds new ones to avoid conflicts with old records. ![Add to TXT DNS records if conflictinginclude:_spf.mx.cloudflare.net](https://bepublish.com/content/images/2023/04/fix-dns-records.webp) Add to TXT DNS records if conflicting`include:_spf.mx.cloudflare.net` After the automatic installation is complete, you will have 2 installation options: 1. **Custom addresses** – Forward only specified domain names. You set email forwarding only when someone sends to the email address you specify as *admin@domain.com* only. 2. **Catch-all address** – Forward every email sent to an email with your domain (no-reply@domain.com, admin@domain.com, *support@domain.com, blabla@domain.com*,...) ![Select Catch-all address and Custom addresses](https://bepublish.com/content/images/2023/04/cache-all-email.webp) Select ****Catch-all address** and ****Custom addresses** All of the above options will forward the email received to your personal Gmail (Destination addresses) or multiple emails at once, of your choice. You manually add your Gmail to receive forwarded emails. ![Destination addresses can be 1 or more emails](https://bepublish.com/content/images/2023/04/destination-addresses.webp) Destination addresses can be 1 or more emails So complete the email reception setup for your domain email. Next is the part that sends outbound emails from custom domain emails. --- ## Email sending settings with Gmail SMTP Cloudflare only forwards emails to your personal inbox for you, only 1-way. If you want to reply to or email a contact, you have to manually set up SMTP to send, and we have free Gmail SMTP from Google. Here's how: 1. You MUST enable 2-factor security of your Gmail account. [Enable 2FA security for Gmail here](https://www.google.com/landing/2step/?ref=bepublish.com). 2. Create a Gmail App Password. [Go here to create an App Password](https://security.google.com/settings/security/apppasswords?ref=bepublish.com). You must copy the password again to use in step 5. 3. Add email alias to Gmail. Go to **Gmail** \> **Setting** \> **Accounts and Import** \> **Send email as:** \> **add another email address**. [Quick links](https://mail.google.com/mail/u/0/?ref=bepublish.com#settings/accounts). 4. Fill in the sender information including Sender Name and Sender Email. With Sender email, you'll use the domain email you want. Remember to uncheck "treat as an alias". 5. Fill in the Email information. SMTP is , Username is your personal email (original Gmail), Password is the password you created in step 2, Port: , TLS remains the same.`smtp.gmail.com587` 6. Claim. You'll receive an email from Gmail confirming whether you're the owner. Follow the instructions in the email to confirm (fill in the code). 7. Complete. Now you can send emails by email by your domain name. When you reply to an email message or compose a new message, click the From box to select the sender. You will see your Domain Email and proceed to send the email as usual. Watch the detailed video tutorial below App Password Fill in the sender and email information Configure SMTP Server under Gmail (Note: Your personal Gmail email + App Password created) Next, go to **Gmail to Settings** \> **Accounts and Important** \> Select **Reply from the same address the message sent to to** ensure you will reply to every email forwarded with your own domain email. ![Make sure you reply to every email forwarded with your own domain email](https://bepublish.com/content/images/2023/04/Cai-dat-tu-dong-dung-dia-chi-email-tra-loi.webp) Make sure you reply to every email forwarded with your own domain email If an email forwards to spam for some unknown reason, there are 2 things you can do to make sure the forwarding email doesn't go to spam: 1. Add your custom domain email to your Gmail contacts. Like how you add a new contact on an Android phone. 2. Use filters to force emails not to go to spam. ![Use filters](https://bepublish.com/content/images/2023/04/image.png) Use filters --- ## Set up domain email for ghost As you know, ghost has a built-in feature to send emails simultaneously via SMTP of Mailgun, the default outgoing email will be . However, ghost still allows you to change that default email address `no-reply@domain.com` But to redeem it, it is mandatory that you have your own domain name available to receive authentication emails from ghosts. ![You redeem your custom domain email in the Newsletter settings](https://bepublish.com/content/images/2023/04/ghost-email-setting.webp) You redeem your custom domain email in the Newsletter settings After redeeming and saving, you will receive an authentication email from your ghost blog, you click on the authentication link to complete the email exchange process in the ghost. --- ## Final Thoughts... You are free to add as many domain emails as you want, all those domain emails will forward to your personal email as installed as instructed above. If you find it confusing or failing to make it, leave a comment below, I will help you. ### Why I choose Hyvor Talk Comment for my ghost Blog? URL: https://bepublish.com/why-i-choose-hyvor-talk-comment/ Last updated: 2025-10-01T15:20:50.000Z When starting a blog, the commenting system has always been an important feature for me. With or without traffic, my commenting system still functions as a new blog. If you visit my blogs, you may also notice this. In my work, commenting is a place where I can interact with readers and get inspired by them. If you prefer to self-host for free and have a paid comment system, there is a number of services to choose from. However, you won't be happy with the results, I promise you. Having a great experience should not be limited by cost. [Hyvor Talk](https://talk.hyvor.com/?partner=cuongthach&ref=bepublish.com) is a paid commenting system that provides a fun user experience and an interface that can blend with any design. Currently, I am using it both for WordPress and Ghost blogs. --- ## Great user interface, smooth and stimulating A big thing about Hyvor Talk is its comment interface. It's simple, but it's powerful, and it's got some cool options. Markdown support, embed preview links, insert images, and format comments. You're better off posting it on Facebook. Additionally, the UI is deeply customizable and it's designed extremely harmoniously, I'm really impressed with Hyvor Talk's UI compared to all of its competitors. Disqus also theoretically has a beautiful design, but it's too ad-stuffed to make the interface too "busy" in addition to slowing down your site as an inevitable consequence of "advertising" and tracking information. Some competitors offer other commenting platforms, such as [Commento](https://commento.io/?ref=bepublish.com), which is so simple that it loses essential features. --- ## Hyvor Talk gets rid of a lot of real annoyances Hyvor Talk helped me get rid of dozens of headaches, especially page caches. Hyvor Talk refreshes every download for real-time commentary and you don't need to worry about page cache at all. This is an extremely wonderful thing. Some of you think that HTML commentary will be better for SEO, but the fact that JavaScript rendering DOM like Hyvor Talk (similar to Disqus) is still standard SEO as usual, even better because no-cache, Google will fetch content as easily and standard as HTML. The second worry to mention is SPAM. Hyvor Talk has an effective defense system against Spambot and is virtually ineffective against Spambot with Hyvor Talk. Amazingly, spam is gone! Finally, I have to praise Hyvor Talk for optimizing page speed. Most of you will have speed related issues when inserting any commenting system into your blog. Hyvor Talk insertion also helps your blog faster because the inserted code has been well optimized besides Hyvor Talk's server infrastructure is very fast. I really like this advantage of Hyvor Talk, it really convinces me to use it for every blog. --- ## Hyvor Talk things to improve There are always defects that exist for regardless of platform, I need to remind you two major defects of Hyvor Talk. Although they are aware, they have not improved. When you use the **$120/year plan**, you get **100,000 pageviews/month**, which is enough for many different blogs, but ![](https://bepublish.com/content/images/2023/05/pricing.webp) [Hyvor Talk Pricing](https://talk.hyvor.com/pricing?partner=cuongthach&ref=bepublish.com) Hyvor Talk is a good comment platform at a fair price, but I expect a better deal. --- ## Final Thoughts... It is a pity that the Slack notification feature is only for the business plan, the price is quite high. This feature should be intended for casual users, as it does not waste Hyvor Talk's resources much. And you, what do you think? ### Ghost CMS is still the leading blogging platform in 2023 URL: https://bepublish.com/ghost-cms-lead-premier-blogging-platform-2023/ Last updated: 2025-10-01T15:09:11.000Z ![Doanh thu của dịch vụ ghost (Pro) tăng trưởng đều đặn qua nhiều năm](https://bepublish.com/content/images/2023/03/ghost-stats.webp) The annual revenue of [ghost (Pro) services](https://ghost.org/pricing/?via=cuong76&ref=ghostfam.com) is \~6 million USD in 2022\. Source: [Ghost Founder](https://twitter.com/JohnONolan/status/1620784745222381569?s=20&ref=ghostfam.com) According to the chart, ghost CMS management service - ghost (Pro) alone generated about $**6 million/year** in revenue in 2022, and ghost users generated more than $**25 million/year** in revenue. Thanks to the membership feature that ghosts have oriented since 2020, there has been an extremely sudden increase. Ghosts generate $6 million a year in revenue, which will be used to cover all developer costs, making the ghost even more complete. This is a great open-source model that most other platforms fail to achieve. There were many doubts before that that ghosts were no longer themselves,... The ghost has, however, proven them correct in the end. Major publishing companies generate $25 million in revenue per year through the ghost platform. Also, OpenAI (ChatGPT) uses a ghost platform. Although I have used ghost for a long time, every time ghost releases a new version or new feature, I am always excited. At the moment, ghost is on version 5, and traditionally, version 6 will come out this year. It's quite addictive, I must admit. As I haven't brought you the news in a while, I will share what features ghost 2023 has added that you may have missed, especially if this is your first time using the software. ## Ghost has built-in comment ![Ghost Comment](https://bepublish.com/content/images/2023/03/ghost-comment-ra-mat.png) Ghost Comment The comment feature has been demanded, complained about, and been railed against by many ghost users from version 1 up until version 5, which will be released. It is also pretty tough to work with ghost's development team 😂 The use of ghost's comments does, however, come with some pros and cons. **LOGIN** is required to comment on ghost comments. ![You need to be logged in to comment on ghost](https://bepublish.com/content/images/2023/03/dang-nhap-de-binh-luan.png) You need to be logged in to comment on ghost Logging in to comment makes it easier for you to build a better email list, but if your site doesn't have enough unique content, signing up to comment reduces engagement. Nevertheless, ghost's free commenting is also delicious since it directly benefits newsletters and membership sites. ## Ghost has native search feature ![Ghost Search](https://bepublish.com/content/images/2023/03/ghost-search.png) Ghost Search Ghost has integrated **Sodo-search** into its core. All the new version themes have been updated for your convenience. It is one of the custom plugins that iVeel has created. In 2020, ghost acquired iVeel to own their premium themes, including Sodo search. Trying Sodo-search is easy at ghostFam. There are some limitations to this ghost search (sodo-search), including smooth performance if your website has less than 10,000 articles. If your website has many articles, you should use a third-party search plugin like Agolia Search. Since few blogs reach such a large number of posts, ghost search is sufficient to serve 99% of bloggers. There should be praise for the CMS ghost development team, as they listened to users more closely. ## Ghost already allows live video and audio uploads 0:00 /0:10 1× Webm Video In addition to the comment feature, users have had to wait from version 1 until now to upload videos to articles. Now, ghosts allow you to upload video and audio files directly like any other CMS.`.mp4.webm.ogg.mp3.wav.pdf` ![Audio Upload Card](https://bepublish.com/content/images/2023/03/audio-upload.webp) Audio Upload Card You can already create podcast sites more easily without embedding from another platform like Spotify. Video and audio files are stored in the "media" folder while your blog's image files are stored in the "image" folder. However, you must be very careful when uploading video and audio files. It's best if possible to use Youtube or a 3rd party host like [Bunny](https://bunny.net/?ref=t0llshkh2c) to embed in your blog. Because when you upload too large a video file, it will increase the backup capacity, annoy you later when moving hosts or increase memory costs. You only use it in case the file is very small and takes a long time to upload 1 time or podcast site. ## More customization for Email Newsletter ![Tùy biến nhiều hơn cho bản tin email – Newsletter](https://bepublish.com/content/images/2023/03/Removing-post-title.webp) **Newsletter** is a specialty of Ghost, is a complex feature and takes a lot of effort to improve and fix bugs continuously from version 4 to now. This email newsletter feature alone is enough to convince many bloggers to decide to switch and stick with Ghost for a long time. Ghost has enhanced its strengths by continuously launching email customization features such as: 1. Create a feedback button for email recipients. 2. Create a comment button to increase reader engagement (ghost comment enabled). 3. Create governance and transparency of recipient information. Recipients can cancel or manage newsletter emails as they wish, demonstrating transparent disclosure of information for your blog. 4. Create suggestions for the latest articles right in the email to help increase traffic for the blog. 5. Optionally remove email headers to make emails more personalized. 6. Filter email lists automatically (zombie email or fake email). This feature is super nice. Helps you save costs, increase email open rates, and better conversions. ![Feedback button responds to email recipients](https://bepublish.com/content/images/2023/03/Email-Screenshot.webp) Feedback button responds to email recipients ![Create a comment button directly in an email](https://bepublish.com/content/images/2023/03/ghost-comment.png) Create a comment button directly in an email ![Email recipient information transparency](https://bepublish.com/content/images/2023/03/subscriber-details-preview.webp) Email recipient information transparency ![List the latest 3 articles right in the email](https://bepublish.com/content/images/2023/03/latest-posts.webp) List the latest 3 articles right in the email ![Allows removing article titles to make emails more personalized](https://bepublish.com/content/images/2023/03/Removing-post-title-newsletter-1-1.webp) Allows removing article titles to make emails more personalized ![Automatic email list filtering (excellent)](https://bepublish.com/content/images/2023/03/Design---Idea-3.webp) Automatic email list filtering (excellent) Full of worthwhile email features. The ultimate goal is to help you send clearer, more transparent, more effective emails. Especially when you apply multi-newsletter to ghost blog (multi-newsletter). ## Ghost Explorer – Great for international blogs ![Ghost Explorer](https://bepublish.com/content/images/2023/03/ghost-explore-2.webp) Ghost Explorer Similar to Substack Reader or Medium, ghost launches Ghost Explorer to increase traffic to your site. To be listed on [Ghost Explorer](https://ghost.org/explore/?ref=ghostfam.com), your site needs to be written in English and have a relatively good amount of posts. The ghost team will browse and index your site on their Ghost Explorer page. Metas such as titles and descriptions should provide sufficient service for SEO Ghost Explorer. ## Final Thoughts... Currently, ghost is translating the site into all languages with email, ghost portal,... This is a major update. Although very strong in email, some default features are in English language. With a major update in the future (i18n for both ghost cores), it will 100% complete the ghost's email features and become a great CMS for bloggers even more. What do you think of ghost CMS 2023? Leave a comment below to discuss! ### Add free Cusdis comments to ghost to increase conversions URL: https://bepublish.com/add-cusdis-comment-to-ghost/ Last updated: 2025-10-05T00:14:46.000Z A successful article with a high conversion rate is often coupled with a positive and lively comment section of readers. Therefore, you need to ensure that the article comment section is convenient for readers to view and interact easily. In this article, let's explore [**Cusdis Comment**](https://cusdis.com/?ref=bepublish.com) **–** A free commenting utility that works smoothly on the Ghost CMS and how to use it in detail. ## What's particularly striking about Cusdis? The first is that the name is easily confused with another comment utility, [Giscus](https://giscus.app/?ref=bepublish.com), that ghostFam shared in the previous article. These two commenting widgets are completely different. Giscus has the disadvantage of having to have a Github account to comment, which reduces interaction. Next, when compared to integrated ghost comments, should ghost comments be replaced with Cusdis or not? As previously shared, ghost comments have a limitation of having to register as a member to comment, which causes many news sites to seriously reduce interaction. When compared to [Hyvor Talk](https://talk.hyvor.com/?aff=7496&ref=bepublish.com) paid commentary, despite its many powerful features, Cusdis is superior because of its economy. Free is always the first choice for every new project started. Cusdis stands out for its following feature: 1. Free. 2. Simple-friendly interface (looks like WordPress commentary). 3. Anti-spam is perfectly fine (You browse all comments manually). 4. Great notifications (via email and also Telegram). 5. Support switching from Disqus to. 6. Multi-language comment interface. ## How to install Cusdis for blogs? Currently, Cusdis allows you to use the service for free, you do not need to host Cusdis yourself. Create a Cusdis account, get the embedded code, insert it into the Ghost theme, and use it. You go to [Cusdis.com](http://cusdis.com/?ref=bepublish.com) and create an account, so log in with Gmail for more safety and speed. After entering the Dashboard, create a new site, click the "**\+ New Website**" button. ![Click the "+ New Website" button](https://bepublish.com/content/images/2023/04/New-Site.webp) Click the "+ New Website" button Then. you get the embed code into the site, click the "**Embed Code**" button. ![Click the "Embed Code" button to get the code](https://bepublish.com/content/images/2023/04/Embed-Code.webp) Click the "****Embed Code**" button to get the code The embed code will look like this: ```html
``` Default code from Cusdis You need to revise the code a bit to embed and embed into the Ghost theme. ```html
``` The code was eventually revised according to the CMS ghost theme You copy and paste the last code as above into your current Ghost theme, replacing the comment widget you are using. ## Set up notifications when there are new comments with Telegram If you don't use Telegram or don't like it, you can skip this section because Cusdis notifies you by default when there are new comments and includes a browse comment button in your full email. However, Telegram is still faster and more convenient to use than email, for those who use Telegram regularly. Here's how: 1. Open and start [the bot https://t.me/CusdisBot](https://t.me/CusdisBot?ref=ghostfam.com) 2. Send commands `/gethook` 3. Copy the resulting URL and paste it into the Cusdis project webhook settings ![Vào Preference > Webhook và dán HTTP API bạn vào](https://bepublish.com/content/images/2023/04/api-webhook.webp) Go to Preference > Webhook and paste the HTTP API you into ## Final Thoughts... Cusdis has the feature of moving houses from Disqus to very convenient. You can do it in the Cusdis dashboard. Also, please note that each Ghost theme has a comment code located in a completely different file 100%. So if you have trouble adding Cusdis to any theme, please comment below, I will guide you specifically according to the theme you use. P/S: Below is Cusdis Comment. You can test it.