修改 WordPress 留言表單的文字

WordPress 有內建的留言表單格式,如果你使用的是預設的布景主題 (例如 twentyten),表單應該會像這樣:

如果你只想簡單修改留言表單的文字、欄位大小,或簡單的微調,不用重新寫一個 comment function,而是使用 comment form 內建的參數即可。

步驟一:打開檔案

留言的表單通常都寫在 comments.php 裡,所以請打開你佈景主題的comments.php

步驟二:搜尋語法

找到$agrs = array( 語法,我們要在裡面修改表單的文字以及欄位等資訊,建議有一些 HTML 基礎再進行修改。

步驟三:設定參數

以下是參數設定,提供給大家做參考。可以照著修改表單欄位(把英文改成中文)、以及使用 HTML 語法修改input設定。

<?php
	$args = array(
		'fields' => apply_filters('comment_form_default_fields', array(
			'author' =>
				'<p class="comment-form-author">' .
				'<label for="author">' . __( '姓名*', 'themetext' ) . '</label> ' .
				'<input id="author" name="author" type="text" value="' . esc_attr( $commenter['comment_author'] ) .
				'" size="30"' . $aria_req . ' /></p>',
			'email' =>
				'<p class="comment-form-email"><label for="email">' . __( '郵件*', 'themetext' ) . '</label> ' .
				'<input id="email" name="email" type="text" value="' . esc_attr(  $commenter['comment_author_email'] ) .
				'" size="30"' . $aria_req . ' /></p>',
			'url' =>
				'<p class="comment-form-url"><label for="url">' .
				__( '網址*', 'themetext' ) . '</label>' .
				'<input id="url" name="url" type="text" value="' . esc_attr( $commenter['comment_author_url'] ) .
				'" size="30" /></p>'
		)),
		'label_submit' => '發表留言',
		'comment_field' => '<p class="comment-form-comment"><label for="comment">' . _x( '留言', 'themetext' ) . '</label><textarea id="comment" name="comment" aria-required="true" cols="45" rows="8"></textarea></p>',
		'comment_notes_after' => '',
		'comment_notes_before' => '',
	);
	comment_form( $args ); 
?>

通常表單欄位的字會跟著 WordPress 的語系設定,如果你使用的是正體中文語系,「comment」的字會變成「迴響」,但假使你想把「迴響」改成「留言」的話,一種方法是直接修改語系檔,另一種方法就是利用 comment form 的參數做設定。

至於像input, textarea,如果有額外需求,就可以利用上面這樣的參數設定,自己在裡面調整 HTML。

想要更進一步了解 comment form 的參數,可以參考 WordPress 官網的文件:Function Reference/ comment form


  • 您好,看了好多的佈景主題,留言表單在comments.php裡面都找不到,找了好久還是不知道在哪裡能修改…?

    • 你好,如果你使用的是客製化程度高,或是需要付費的高檔佈景主題,他的位置會隱藏得比較深,要有一點 php 基礎的人才比較容易找到。
      因為我是以 WordPress 預設的佈景主題作為例子說明,如果是要練習的話可以先從預設主題開始練習。