- How To Install the Astra Theme
- System Requirement for Astra Theme
- What Is a Child Theme and How To Install It for Astra?
- Manually Install Astra via FTP
- How to Update Astra Theme Manually?
- Automatic Beta Updates for Astra
- Astra 4.2.0-beta.1 : Migrations & Backwards Compatibility
- Know More about Astra Beta Versions? How to Download and Use?
- How to Set Up a WordPress Multisite Network and Use an Astra Child Theme
- Getting Started with Astra Pro Addon Plugin
- What is Astra Pro Add on?
- How to Install Astra Pro Plugin?
- How to Get License Key of Astra Pro?
- How to Activate Astra Pro Addon License?
- How to Fix “The Package Could Not Be Installed. The Theme Is Missing the style.css Stylesheet” Error
- Why Can’t I Access Astra Pro Features After Purchasing the Pro Version?
- Do Not See License Activation Form for Astra Pro Addon Plugin?
- How to Fix “Sorry, You Are Not Allowed To Access This Page” Error In Astra Pro
- How to Download Your Purchase Invoice
- How to Manage License on Store?
- How Do License Upgrades Work?
- How To Update Your Payment Method?
- How to Process Refund Requests?
- How to Apply For Brainstorm Force Affiliate Program? (Become Astra Affiliate)
- Frequently Asked Questions – VIP Priority Support
- How do I check my Support Ticket History?
- How To Create a Header With Astra Header Builder
- How To Create Mobile Header With Astra Header Builder
- Why Is My Logo Blurry?
- Astra – Customize the Submenu
- FAQs – Astra Header/Footer Builder
- Elements in Header/Footer Builder With Astra Theme and Astra Pro
- Add Multiple Elements in Header Footer Builder
- FAQs – Astra Header/Footer Builder – Existing Customers
- Clone Elements in Header Footer Builder
- How To Manage Sidebars in Free Astra Theme
- Understanding Sidebar Style in Astra Theme: Customizing Your Sidebar’s Look
- Sticky Sidebar
- Scroll To Top
- How to Display a Breadcrumb Anywhere within a Page or Post with Shortcode?
- Find the Way With Breadcrumbs
- How to Change the “HOME” String in Breadcrumbs
- How to Switch From Existing Breadcrumb to New Trail?
- How To Add Breadcrumbs in WordPress Website with Astra
- Blog Overview
- Blog / Archive
- Single Post
- Display Related Posts on Single Blog Post
- How to remove an Author’s name from a Single Blog Post?
- How to Remove Astra Post Excerpt from the Post Archive
- Show “Last Updated” or “Published Date” on Blog
- The Recommended Size for Featured Image
- How to add a Blog page banner/title with Astra
- How to Keep Accordion Closed for Single Product Description
- How to Change the Heading Tag for WooCommerce Product Titles in Astra
- Astra WooCommerce Mini Cart Shortcode
- WooCommerce Module Overview
- How to Design a Product Catalog Page or Shop Page Using WooCommerce Module in Astra?
- Single Product WooCommerce
- Checkout Page WooCommerce
- Colors & Background Options For WooCommerce
- Typography Options for WooCommerce
- How to Disable EDD Inbuilt Styling?
- How to Add Download Archive Pages to the Menu When Using Astra with EDD?
- How to Add EDD Cart in Header? (Old Astra Header)
- How to Display a Mini Cart Anywhere Using Shortcode? (Astra and EDD)
- EDD – Easy Digital Downloads Module Overview
- General – EDD Module Options
- Product Archive – EDD Module Options
- Single Product – EDD Module Options
- Checkout Page – EDD Module Options
- Footer Custom Text Helper Strings
- How To Disable Right Click in WordPress
- Increasing the PHP Memory Limit of Your Website
- How To Disable Header or Footer for a Landing Page or Post
- Where Does Astra Primary Color Setting Take Effect?
- How To Adjust the Width of Your Sidebar
- How to Update the Plugin Manually from WordPress Backend?
- Recommended Settings for Elementor and the Astra Theme
- Recommended Settings for Beaver Builder and the Astra Theme
- How To Translate Site Builder With WPML?
- How To Make Astra Multilingual With WPML
- How to Translate Astra Strings with WPML?
- Translating the Advanced Custom Fields with WPML
- How to Turn Astra Website Multilingual with Polylang?
- How to Translate Categories, Tags, and Astra Strings with Polylang
- How to Turn Astra Website Multilingual with TranslatePress?
- How to Translate Astra Theme / Plugins in Your Own Language using GlotPress?
- Translate Site Builder Layouts Using Polylang
- Fix for – The PCLZIP_ERR_BAD_FORMAT (-10) Error
- Host Google Fonts Locally – Performance Is the Key
- Fix for – Parse error: syntax error, unexpected T_FUNCTION
- How to fix Fatal Error / White Screen of Death?
- Fix for- cURL error 51: SSL: no alternative certificate subject name matches target host name ‘websitedemos.net’
- ‘The preview could not be loaded’ Pop Up with Astra and Elementor
- Troubleshooting Steps ( with Health Check & Troubleshooting plugin )
- How to Deal with Update Issues in Astra Theme and Astra Pro Addon?
- Blog Featured Image Size Not Working / Error in Image Processing Library
- How to Change the Default Astra Strings
- Using Hooks in Astra
- How to Change the “Scroll To Top” Icon in Astra?
- Astra Pro WP CLI Commands
- How to Add Custom PHP Code?
- How to Disable the Loading of Astra’s Default Font File? (Astra.woff)
- Disable Featured Image on Posts, Pages, or Other Post Types
- Change Sidebar Widget Title Heading Tag
- Disable All Meta Settings of Page or Post by Default
- How to Change Website Logo Destination URL
- Remove Primary Navigation Menu with Hook
- Change the Astra Header Breakpoint Width
- How to Disable Primary Header?
- Add Title attribute to Header Background Image as a Substitute for Alt Text
- How to Change HTML tag for Site Title and Tagline?
- How to Change the Heading Tag for the Page/Post Titles?
- How to Change the “Search Results For” String
- Change Placeholder for Search Box (Old Astra Header)
- How to Change Previous and Next Link Text from a Single Blog Post?
- How to Remove Featured Image Link on Archive Page?
- Filter to Remove Link From Featured Images on Blog Page
- Blog Featured Image Size Not Working / Error in Image Processing Library
- Filters to Support CPTs for Blog Meta and Single Blog Meta
- How To Change Navigation Links Text for a Blog Archive?
- How to Display the Post Category as a Related Posts Title?
- Change “Leave A Comment” title tag
- Customizing Social Profile Links for Individual Authors in Single Posts
- Change Woocommerce Out of Stock Text
- How to Modify/Change the Quick View text?
- Filter to Add Global Button Settings Support for WooCommerce Buttons
- Change the “Shopping Cart” Text for WooCommerce & EDD Mobile Header Cart
- Fix Woocommerce Cart Becoming Transparent With Header Builder
- Restrict Search Results to WooCommerce Products Only
- How To Hide Quantity Number When the Woocommerce Cart Is Empty?
- Remove Astra Customization for WooCommerce
- Remove Woocommerce Product Category Archive Title
- How to Add Custom CSS Code Without Editing Theme Files?
- How to Highlight a Certain Menu Item?
- How to Design Bullets & Lists?
- Dim Content on Menu Hover
- How to add custom CSS and JavaScript to Astra theme
- How To add Custom CSS for Specific Pages
- How to Create Custom CSS using Inspect Element Tool?
- Display Coupon Field on Checkout & Cart Pages
- Always Show Order Summary on Mobile (Astra Modern Checkout)
- Fix Swap Sections Not Working on Mobile (Old Astra Header)
- How to Remove Google Fonts Suggestions in Astra Theme?
- Remove default stretched block layout spacing
- How to Change the Logo on Specific Pages?
- How to remove horizontal & vertical gallery layouts from a single product page?
- Introducing New Filter to Enable/Disable Rank-Math Theme Support
- Enable/Disable YouTube videos from Astra admin dashboard
- How to Fix the Line Height Unit being converted to “EM”?
- How to Change WordPress Post labels to Projects
How to Add Additional Content on the My Account Login Page
You can add headings, notices, links, or any custom content to specific parts of the WooCommerce My Account page, such as above the login form, above the registration form, or on the account dashboard. This guide covers two methods: Astra Pro’s Site Builder (no code) and an Astra child theme (code).
Requirements
- WooCommerce installed and activated, with a My Account page set under WooCommerce > Settings > Advanced
- Method 1: Astra Pro with the Site Builder module active
- Method 2: An Astra child theme (works with free Astra)
- To show the registration form, WooCommerce > Settings > Accounts & Privacy must allow customers to create an account on the My Account page
Before You Start: Shortcode vs Block-Built My Account Pages
How your My Account page is built decides whether the methods below will work.
Default (shortcode) My Account page: WooCommerce creates the My Account page with the [woocommerce_my_account] shortcode inside a Shortcode block. This page loads WooCommerce’s account templates, which include the hooks used in this guide. Both methods below work here.
Block-built or page builder My Account page: If the shortcode has been replaced with standalone login or registration blocks, or a page builder layout, WooCommerce’s account templates don’t load. In that case, the hooks below don’t run. Add your content directly with blocks in the page editor instead.
To check which one you have, go to Pages, edit your My Account page, and look for a Shortcode block containing [woocommerce_my_account].
Method 1: Using Site Builder Hooks (Astra Pro)
Astra Pro’s Site Builder module lets you add content easily using hooks. Site Builder lets you design the content with blocks and attach it to any of the hooks above, with no code required.
- Go to Astra > Site Builder and select Hooks.
- Create a new layout and give it a name, for example “Login Form Intro”.
- Add your content using blocks, such as a Heading and a Paragraph. You can also enable the Code Editor to add HTML instead.
- In the layout settings, set:
- Layout: Hooks
- Placcement: Custom Hook and then add action:
woocommerce_login_form_start - Display On: Specific Pages, then select your My Account page. This keeps the content off the Checkout login form.
- User Roles: Logged Out
- Click Publish.

To add content above the registration form, repeat these steps with woocommerce_register_form_start. For content on the logged-in dashboard, use woocommerce_account_dashboard and set User Roles to Logged In.
Why Use Hooks Instead of Editing the Page?
Blocks added above or below the shortcode on the My Account page show to every visitor, whether they’re logged in or not. Hooks let you place content at a precise spot, such as inside the login form or on the logged-in dashboard only.
Available My Account Hooks
| Hook | Where the content appears |
|---|---|
| woocommerce_before_customer_login_form | Above the login and registration forms (logged-out visitors) |
| woocommerce_login_form_start | Top of the login form. Also fires on the Checkout login form. |
| woocommerce_login_form_end | Bottom of the login form |
| woocommerce_register_form_start | Top of the registration form |
| woocommerce_register_form_end | Bottom of the registration form |
| woocommerce_after_customer_login_form | Below the login and registration forms |
| woocommerce_account_dashboard | The Dashboard tab (logged-in customers) |
Apart from that, you can also use the hook placement added directly in the Site Builder module and display any custom before the My Account Navigation Tabs.
Method 2: Using an Astra Child Theme
If you prefer code, add the snippet below to the functions.php file of your Astra child theme. See How to Add Custom PHP Code for safe ways to add it.
Once the child theme is installed and activated, go to Appearance > Theme File Editor, and find the child theme. Open the functions.php file within the child theme for code customization.
Note: It’s generally recommended to edit the file over FTP or your host’s file manager rather than Appearance > Theme File Editor, since a typo in the editor can lock you out of the dashboard.
Next, copy and paste the provided code snippets at the end of the functions.php file.
// Add a heading and text at the top of the My Account login form.
add_action( 'woocommerce_login_form_start', 'astra_child_login_form_intro' );
function astra_child_login_form_intro() {
// Skip the login form shown on the Checkout page.
if ( ! is_account_page() ) {
return;
}
echo '<h3 class="myaccount-form-title">Registered Customers</h3>';
echo '<p class="myaccount-form-text">If you already have an account, sign in with your email address.</p>';
}
// Add a heading and text at the top of the registration form.
add_action( 'woocommerce_register_form_start', 'astra_child_register_form_intro' );
function astra_child_register_form_intro() {
echo '<h3 class="myaccount-form-title">New Customers</h3>';
echo '<p class="myaccount-form-text">Create an account for faster checkout, saved addresses, and easy order tracking.</p>';
}

Then, save the functions.php file by clicking the Update File button.
You can change the text, or swap in any other hook from the table above. To style the content, target the myaccount-form-title and myaccount-form-text classes under Appearance > Customize > Additional CSS.
Expected Outcome
Log out, or open a private browser window, and visit your My Account page. The custom content appears at the top of the login and registration forms, and doesn’t appear on the Checkout page’s login form.
The added content should now be displayed on the login and registration forms. You can visit your My Account page to view the changes.

By following these steps, you have successfully customized the My Account login page on your WooCommerce store. Feel free to adjust the HTML content and styling according to your store’s design preferences.
Notes
- If the registration form doesn’t appear, enable account creation under WooCommerce > Settings > Accounts & Privacy.
- If the content doesn’t show up, clear your site and browser cache, then confirm the page still uses the
[woocommerce_my_account]shortcode. - Content added with
woocommerce_login_form_startwithout a My Account display rule, or without theis_account_page()check, also shows on the Checkout page’s login form. - The above solution works with both the Classic My Account and Modern My Account Layout from Astra Pro.
Related Docs
- Site Builder – Hooks
- WooCommerce Hooks
- Using Hooks in Astra
- What Is a Child Theme and How To Install It for Astra?
We hope the above guide has been helpful. If you face any issues or need help with this, feel free to reach out to our support team.
We don't respond to the article feedback, we use it to improve our support content.