WordPress – Polylang 語言套件: 遇上缺少的單字該怎麼辦

前言

前陣子在換著各類型的佈景主題時,發現了有些主題設計都不錯

但裡面有些頁面的單字都是英文,但網站畢竟是雙語的,可以的話還是做些調整好,故想說來查查看怎麼做~

解決方法及範例

像是我現在用的 Femina 佈景主題的搜尋顯示的是英文

然後我現在用的語言轉換套件是Polylang,簡單來說就是會可以幫一些單字註冊群組

然後就可以在特定的時候去進行文字的轉換,有機會再詳細介紹下~

但在他的頁面卻沒有看到 Femina 的這一個群組

語法介紹

故上網查了下,發現polylang有提供內建的註冊方式 – pll_register_string

但尷尬的是,我沒有找到解除註冊的方式,上面頁面UI的刪除似乎也是沒甚麼用的

再又找了一下之後,發現了另一個做法 – icl_register_string

該語法是 WPML的,也是一個在polylang之前的外掛套件,而polylang支援了其中的一大部分語法(參考資料有提供連結)

使用方法如下: 我是寫在Femina的 functions.php 中

//第一個參數是群組名,第二個是設定的參數名稱,最後一個則是預設值
if (function_exists('icl_register_string')) {
    icl_register_string('femina', 'Search Results','Search Results for:');
}

//這個則是移除註冊的方法
if (function_exists('icl_unregister_string')) {
    icl_unregister_string('femina', 'Search Results');
}

⬇這時候到套件的介面就會看到有一個新的群組了

怎麼引用

還沒呢~ Polylang的套件儘管註冊了單字,但其實還是要去手動的引用

故以上面的那個做為範例,我要先去找到對應的php頁面

<?php if ( have_posts() ) : ?>
		<header class="page-header">
			<h2 class="page-title"><?php printf( __( 'Search Results for: %s', 'femina' ), '<span>' . esc_html( get_search_query() ) . '</span>' ); ?></h2>
		</header><!-- .page-header -->

這邊擷取部分程式碼,然後我們可以看出本來的文字是寫死的,現在要改為動態的~

<?php if ( have_posts() ) : ?>
		<header class="page-header">
			<!--<h2 class="page-title"><?php printf( __( 'Search Results for: %s', 'femina' ), '<span>' . esc_html( get_search_query() ) . '</span>' ); ?></h2>-->
			<h2 class="page-title"><?php printf( __( '%s', 'femina' ), icl_t( 'femina', 'Search Results' ) . '<span>' . esc_html( get_search_query() ) . '</span>' ); ?></h2>
		</header><!-- .page-header -->

⬇ 結果如下,可喜可賀~

(大家也可以自己動手試試看,右上角的放大鏡給它按下去!)


結論

主要講解了怎麼註冊特定的單字,之後有機會可以來說明一下polylang這個套件如何使用

在經營多語系網站時候還是挺實用的~

參考資料

🧡希望這篇文章有幫助到你們~

🧡幫我點一個小小的廣告或留言,都是對我的支持!

⭐如有任何疑問,歡迎透過留言或messenger讓我知道 !

🍽️另外,徵求任何合作機會(不管是業配、廣告或是友站連結)

看看一些其他的筆記吧,就跟淘金一樣,說不准有你/妳要的呢~

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *