~/blog/wordpress-medical-seo-template-guide.md
WordPress 開發與技巧 · 2025 / 08 / 15

別讓專業醫療知識石沉大海!打造 WordPress SEO 模板,搶佔 Google 搜尋第一頁

Eric — 浪花科技創辦人 / AI 架構師
Eric
浪花科技創辦人 · AI 架構師
別讓專業醫療知識石沉大海!打造 WordPress SEO 模板,搶佔 Google 搜尋第一頁
目錄 table-of-contents.md

「文章內容明明比別人專業,為什麼 Google 排名就是上不去?」這是醫師和診所行銷人員最常丟給我的問題。醫療網站是我們經手過挑戰性最高的專案類型:專業知識寫得再扎實,少了對的結構與模板,搜尋引擎還是讀不懂你的價值。這篇就把實戰用的 WordPress 醫療 SEO 模板攤開來,別讓專業內容石沉大海。

老實說,這問題問得很好。在醫療領域,光有專業知識是不夠的,你還得「讓 Google 看得懂」你的專業。醫療內容被 Google 歸類為「Your Money or Your Life」(YMYL) 內容,審核標準極度嚴苛。如果你的網站結構、內容呈現方式不符合 Google 的 E-E-A-T (經驗、專業、權威、信譽) 原則,寫得再好都可能石沉大海。今天,我就要以一個資深工程師的龜毛角度,帶你從零到一,打造一個專為醫療文章設計的 WordPress SEO 終極模板。

為什麼醫療 SEO 這麼難搞?先搞懂 Google 的遊戲規則

在我們動手寫任何一行程式碼或安裝任何外掛之前,你必須先理解為什麼醫療內容的 SEO 這麼特別。Google 對於可能會影響使用者健康、財富、安全的資訊,審查標準堪稱「龜毛等級」。這就是 YMYL 的核心概念。

為了評估這些 YMYL 內容的品質,Google 提出了一套名為 E-E-A-T 的指導方針:

  • Experience (經驗):內容創作者是否對該主題有第一手的實際經驗?例如,一位癌症康復者分享心路歷程。
  • Expertise (專業):內容創作者是否具備該領域的專業知識?這對醫療內容至關重要,作者必須是合格的醫療專業人員。
  • Authoritativeness (權威):網站或作者在該領域是否被公認為權威來源?例如,大型教學醫院發布的研究報告。
  • Trustworthiness (信譽):網站的資訊是否準確、誠實、安全?這包含了引用來源、數據的真實性等。

簡單來說,你的每一篇醫療文章,都必須清楚地向 Google 和使用者展示這四個面向。而一個好的「WordPress 醫療文章 SEO 模板」,就是要透過結構化的方式,將這些 E-E-A-T 訊號做到極致。

WordPress 醫療文章 SEO 模板的黃金結構

好了,理論課上完了,接下來是實作。一個完美的醫療文章模板,應該包含以下幾個關鍵元素,而且這些元素都應該在 WordPress 後台可以輕鬆編輯,而不是讓編輯人員在文章裡手動敲程式碼。身為一個工程師,最討厭的就是看到沒有結構化的資料,維護起來簡直是場災難。

核心構成元素:

  • 清晰的作者與審閱者資訊: 誰寫的?誰審閱過?他們的專業資格是什麼?這是建立 Expertise 和 Trustworthiness 的第一步。
  • 明確的發布與更新日期: 醫療資訊有時效性,清楚標示「最後更新日期」能讓使用者和 Google 知道這份資訊是最新的。
  • 結構化資料 (Schema Markup): 這是給 Google 看的「小抄」。透過它,你可以明確告訴 Google 這是一篇醫療文章、作者是誰、被誰審閱過等等,是 SEO 的大絕招。
  • 可信的引用來源: 文章中提到的任何數據、研究,都應該附上權威來源的連結(例如:國健署、PubMed、知名醫學期刊)。
  • 免責聲明: 法律上的必要之惡,提醒讀者內容僅供參考,不能取代專業醫療建議。

實戰教學:用 CPT 和 ACF 打造你的終極模板

接下來,我們就來動手把這個理想的模板在 WordPress 上實現。我會建議使用 Custom Post Type (CPT) 來建立一個獨立的「醫療文章」內容類型,再搭配 Advanced Custom Fields (ACF) 來建立結構化的輸入欄位。

第一步:建立「醫療文章」專屬的 Custom Post Type (CPT)

為什麼不用內建的「文章」就好?因為 CPT 可以幫我們把醫療文章跟一般的部落格文章、最新消息分開管理,不僅後台更整潔,未來要針對這個內容類型做特殊的功能或樣式也更有彈性。你可以把以下程式碼加到你的佈景主題的 `functions.php` 檔案中。

身為工程師的小囉嗦:直接改 `functions.php` 有風險,更新佈景主題時可能會被覆蓋。最專業的做法是建立一個「子佈景主題」或自訂外掛來放這些程式碼。想了解更多?可以參考我們的「子佈景主題」安全客製化 WordPress 教學


// 註冊一個名為「醫療文章」的 Custom Post Type
function register_medical_article_cpt() {

    $labels = array(
        'name'                  => _x( '醫療文章', 'Post type general name', 'textdomain' ),
        'singular_name'         => _x( '醫療文章', 'Post type singular name', 'textdomain' ),
        'menu_name'             => _x( '醫療文章', 'Admin Menu text', 'textdomain' ),
        'name_admin_bar'        => _x( '醫療文章', 'Add New on Toolbar', 'textdomain' ),
        'add_new'               => __( '新增文章', 'textdomain' ),
        'add_new_item'          => __( '新增醫療文章', 'textdomain' ),
        'new_item'              => __( '新醫療文章', 'textdomain' ),
        'edit_item'             => __( '編輯醫療文章', 'textdomain' ),
        'view_item'             => __( '檢視醫療文章', 'textdomain' ),
        'all_items'             => __( '所有醫療文章', 'textdomain' ),
        'search_items'          => __( '搜尋醫療文章', 'textdomain' ),
        'parent_item_colon'     => __( '上層醫療文章:', 'textdomain' ),
        'not_found'             => __( '找不到醫療文章。', 'textdomain' ),
        'not_found_in_trash'    => __( '在垃圾桶中找不到醫療文章。', 'textdomain' ),
    );

    $args = array(
        'labels'             => $labels,
        'public'             => true,
        'publicly_queryable' => true,
        'show_ui'            => true,
        'show_in_menu'       => true,
        'query_var'          => true,
        'rewrite'            => array( 'slug' => 'medical-info' ),
        'capability_type'    => 'post',
        'has_archive'        => true,
        'hierarchical'       => false,
        'menu_position'      => 5, // 在「文章」下面
        'supports'           => array( 'title', 'editor', 'author', 'thumbnail', 'excerpt', 'comments' ),
        'menu_icon'          => 'dashicons-health',
    );

    register_post_type( 'medical_article', $args );
}
add_action( 'init', 'register_medical_article_cpt' );

第二步:使用 ACF Pro 建立結構化欄位

裝了 ACF Pro 外掛後,我們可以建立一個欄位群組,並設定它只出現在「醫療文章」這個 Post Type 的編輯頁面。這能確保你的編輯團隊或客戶,在新增文章時,不會忘記填寫任何重要資訊。

你需要建立以下欄位:

  • 醫療審閱者 (medical_reviewer): 欄位類型為「文字」,用來填寫審閱醫師的姓名與職稱。
  • 最後審閱日期 (last_reviewed_date): 欄位類型為「日期選擇器」,讓編輯可以輕鬆點選。
  • 引用來源 (references): 這是精華所在!使用「中繼器 (Repeater)」欄位,裡面包含兩個子欄位:「來源標題 (source_title)」(文字) 和「來源網址 (source_url)」(URL)。這樣就可以無限新增引用來源,而且結構非常乾淨。

有了 ACF,後台編輯頁面看起來就會非常清爽,編輯人員只需要做「填空題」,而不是在複雜的編輯器裡跟格式奮戰。這才是優雅的工程師作法!

第三步:在前台顯示資料並嵌入 JSON-LD 結構化資料

資料存進去了,再來就是要把它顯示在文章頁面,並同時在 HTML 的 `` 區塊中,放入最重要的 JSON-LD 結構化資料。你需要修改你的文章範本檔案(通常是 `single-medical_article.php`)。

在文章頂部顯示作者、審閱者和日期:


<?php
$reviewer_name = get_field('medical_reviewer');
$last_reviewed_date = get_field('last_reviewed_date');
?>

<div class="article-meta">
    <p>作者: <?php echo get_the_author(); ?></p>
    <?php if ($reviewer_name): ?>
        <p>醫療審閱: <?php echo esc_html($reviewer_name); ?></p>
    <?php endif; ?>
    <p>發布日期: <?php echo get_the_date('Y-m-d'); ?></p>
    <?php if ($last_reviewed_date): ?>
        <p>最後更新: <?php echo esc_html($last_reviewed_date); ?></p>
    <?php endif; ?>
</div>

在文章底部顯示引用來源列表:


<?php if( have_rows('references') ): ?>
    <div class="references-section">
        <h3>參考資料</h3>
        <ul>
        <?php while( have_rows('references') ): the_row(); 
            $source_title = get_sub_field('source_title');
            $source_url = get_sub_field('source_url');
        ?>
            <li><a href="<?php echo esc_url($source_url); ?>" target="_blank" rel="noopener noreferrer"><?php echo esc_html($source_title); ?></a></li>
        <?php endwhile; ?>
        </ul>
    </div>
<?php endif; ?>

最重要的 JSON-LD!將這段程式碼透過 `wp_head` action hook 加到 `` 裡:


add_action('wp_head', 'add_medical_article_schema');
function add_medical_article_schema() {
    if (is_singular('medical_article')) {
        global $post;
        $schema = array(
            '@context' => 'https://schema.org',
            '@type' => 'MedicalWebPage',
            'headline' => get_the_title(),
            'url' => get_permalink(),
            'datePublished' => get_the_date('c'),
            'dateModified' => get_the_modified_date('c'),
            'author' => array(
                '@type' => 'Person',
                'name' => get_the_author(),
            ),
            'publisher' => array(
                '@type' => 'Organization',
                'name' => get_bloginfo('name'),
                'logo' => array(
                    '@type' => 'ImageObject',
                    'url' => '你的網站LOGO網址',
                ),
            ),
        );

        $reviewer_name = get_field('medical_reviewer', $post->ID);
        if ($reviewer_name) {
            $schema['reviewedBy'] = array(
                '@type' => 'Person',
                'name' => $reviewer_name,
            );
        }

        echo '<script type="application/ld+json">' . json_encode($schema, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT) . '</script>';
    }
}

透過這套組合拳,我們不僅讓前端使用者能清楚看到文章的專業背景,更重要的是,我們用 Google 最喜歡的「結構化語言」跟它溝通,告訴它:「嘿!這是一篇由專家撰寫、專家審閱過的高品質醫療文章!」這對於提升 E-E-A-T 分數有著決定性的幫助。

結論:結構化是醫療內容 SEO 的致勝關鍵

總結一下,要在競爭激烈的醫療領域中脫穎而出,內容的專業度只是基本門檻。真正的勝負關鍵在於「如何呈現你的專業」。

透過建立一個專屬的 WordPress 醫療文章 SEO 模板,利用 Custom Post Type 進行內容分類、ACF 進行資料結構化,並搭配精準的 JSON-LD Schema,你就能將無形的 E-E-A-T 信號,轉化為 Google 看得懂的具體數據。這不僅能大幅提升你的搜尋排名,更能鞏固你在使用者心中的專業與信賴感。

這套方法論聽起來可能有點硬核,但這就是專業網站與一般部落格的差別所在。打好地基,才能蓋出穩固的高樓。

延伸閱讀

如果你覺得以上的技術細節讓你頭昏腦脹,或是希望有專業團隊為你的醫療網站量身打造最符合 SEO 規範的內容架構,歡迎隨時聯繫浪花科技。我們很樂意協助你將專業知識轉化為實際的網站流量與品牌影響力。

// FAQ

常見問題

為什麼醫療類網站的 SEO 特別難做?
醫療內容被 Google 歸類為 YMYL(Your Money or Your Life),因為可能影響使用者的健康、財富與安全,審查標準極度嚴苛。若網站結構與內容呈現不符合 Google 的 E-E-A-T(經驗、專業、權威、信譽)原則,內容寫得再專業也可能難以取得好排名。
Google 的 E-E-A-T 原則指的是什麼?
E-E-A-T 是 Google 評估 YMYL 內容品質的指導方針,包含四個面向:Experience(經驗,是否有第一手實際經驗)、Expertise(專業,作者是否具備該領域專業知識)、Authoritativeness(權威,是否被公認為權威來源)、Trustworthiness(信譽,資訊是否準確、誠實、安全並標明引用來源)。
一個理想的 WordPress 醫療文章 SEO 模板應包含哪些元素?
應包含清晰的作者與審閱者資訊及其專業資格、明確的發布與最後更新日期、結構化資料(Schema Markup)、可信的引用來源連結(如國健署、PubMed、醫學期刊),以及內容僅供參考、不能取代專業醫療建議的免責聲明。這些元素都應在後台可輕鬆編輯。
如何用 CPT 和 ACF 打造 WordPress 醫療文章模板?
建議用 Custom Post Type(CPT)建立獨立的「醫療文章」內容類型,與一般部落格文章分開管理;再用 Advanced Custom Fields(ACF)建立結構化輸入欄位,例如醫療審閱者(文字)、最後審閱日期(日期選擇器),以及用中繼器(Repeater)欄位管理可無限新增的引用來源。前台範本則嵌入 JSON-LD 結構化資料。
把自訂程式碼直接加到佈景主題的 functions.php 有什麼風險?
直接修改主題的 functions.php,在更新佈景主題時程式碼可能會被覆蓋而失效。較專業安全的做法是建立子佈景主題,或將這些功能程式碼放進自訂外掛中,避免受主題更新影響。
~/roamer-tech/newsletter // FREE
// newsletter

訂閱免費電子報

把 AI 自動化、企業系統設計與 WordPress / Laravel 開發的真實案例和可直接照做的技巧,整理成電子報寄給你。只寄精選內容、不灌垃圾信,一鍵就能退訂。

$
// final.exec()

準備好讓你的網站開始為你工作了嗎?