9 WordPress代碼為您的博客增添趣味並改善用戶體驗

文章撰寫者:
  • WordPress
  • 更新:可能是08,2019

WordPress易於配置和安裝,您可以在發布博客後立即開始使用。

但依賴WordPress的默認選項可能會導致您的損失:

  • 功能較少
  • 無聊的用戶(他們偶然發現的每個WP站點都看到相同的東西)
  • 搜索引擎排名下降。

您手中有一個靈活的工具,您可以調整它以使其成為一種令人愉快的使用和高效的依賴。 為什麼不為你的用戶(和你自己)加油呢?

本文旨在通過添加有趣的內容,幫助您使基於WordPress的網站對您的用戶有趣和有用 代碼片段 這也將增強你的SEO。

需要幫助為WordPress博客增添趣味?
WHSR現在與Codeable.io合作,為需要專業WP開發/定制服務的用戶提供幫助。

要獲得免費報價, 請填寫此申請表.

給他們一個嘗試,讓我知道他們是如何為你工作的! ;)

9代碼增強您的WordPress博客

我將在這篇文章中為您提供兩種類型的代碼片段:

  1. 法典代碼
  2. 代碼片段和小部件

Codex代碼是我自己編寫的PHP片段(在未婚夫Simone的幫助下)嚴格使用 WordPress.org Codex 作為參考。

代碼片段和小部件是現成的PHP代碼(或WordPress插件),可以在其他網站和WordPress.org上免費獲得,但我還包括我的未婚夫片段和我使用開放和Codex引用從頭開始編寫。

這兩種類型的代碼都易於實現和安裝,但如果您不確定如何操作代碼,則可能需要從小部件和插件開始。

我知道9代碼片段對於那些喜歡嘗試大量不同代碼的人來說可能還不夠,所以我相信我們的Robert Ludrosky's 25為WordPress開發人員提供了便捷的代碼片段 會滿足你的飢餓感(至少會持續一段時間)。 ;)

法典代碼

1。 區分粘性帖子

要使WordPress檢查您當前的帖子是否是粘貼帖子 - 並相應地顯示它 - 您可以使用Codex布爾函數:

<?php is_sticky(); ?>

單獨的函數只返回TRUE或FALSE值,所以如果寫一個條件結構(if / else)來管理你的粘貼帖子,你可以在這裡做什麼。 一個例子:

<?php if is_sticky(){the_title(); the_time('M,d,Y'); the_excerpt(); } else {include'post-template.php'; }

在此示例用法中,我將粘貼帖子顯示為僅包含標題,發布日期和摘錄(不是整個帖子)的框,而其他帖子的標準模板包含在post-template.php中。

每種類型的帖子都有自己的CSS樣式表,但我們不在這裡定義樣式; 只有模板。

Single.php是單個帖子的默認模板(您會發現它包含在每個默認的WP主題中)。

如果您已經開發了自己的WP主題但是沒有為單個帖子設置模板,則可以按照Codex指南進行操作 點擊瀏覽,獲取更多資訊.

2。 顯示帖子URL

添加到模板可能很有趣。 如果您希望讀者獲取每個頁面(或帖子)的URI,只需在single.php,page.php甚至index.php模板中使用以下標記:

<a href="<?php echo get_page_link();?>“> <?php echo get_page_link(); ?> </A>

不是使用the_permalink,這是最明顯的選擇,適用於所有情況,WP允許您為帖子和頁面使用兩種替代形式:

<?php echo get_post_permalink(); ?>
 <?php echo get_page_link(); ?> 

例如,您的頁面模板可以包含:

<p>鏈接:<a href="<?php echo get_page_link();?>“> <?php echo get_page_link(); ?> </A> </ P>

3。 檢索並顯示帖子ID號

即使您將永久鏈接結構設置為用戶和SEO友好,您仍然可以通過將以下簡單函數添加到元行來向訪問者顯示帖子ID:

<?php the_ID(); ?>

樣品用法:

<p class =“meta”>作者姓名發布。 帖子ID是<?php the_ID(); ?> </ p>

4。 按ID列出類別

WordPress標準功能是:

<?php get_all_category_ids()?>

這是我在我的一個博客上使用的一個例子,使用來自的代碼編寫 法典 - StackOverflow上的一個主題:

<?php $ category_ids = get_all_category_ids(); foreach($ category_ids as $ cat_id){$ cat_name = get_cat_name($ cat_id); $ category_link = get_category_link($ cat_id); //我們需要cat鏈接才能使用URL! echo“<a href=\"{$category_link}\"> {$ cat_id} </a>:{$ cat_name} <br/>”; }?>

......以及它是如何顯示的:

類別WP代碼

注意:get_all_category_ids()現在是一個已棄用的函數,但你仍然可以毫無問題地使用它,就像我在我的博客上所做的那樣(上面的截圖)。 但是,如果您希望對此代碼段使用新功能,請訪問 get_terms() 食典委的頁面。

這段代碼有什麼作用?

代碼獲取每個ID的所有類別ID和類別名稱,然後將ID鏈接到類別鏈接,同時在“:”之後顯示類別名稱 - 因此 迴聲() 表達 <a href=\"{$category_link}\"> {$ cat_id} </a>:{$ cat_name} <br/>.

5。 為您的博客提供詳細的用戶/作者頁面

您是否曾想構建一個自定義頁面,可以顯示所有博客作者或用戶而無需依賴插件?

好吧,你 能夠 創建您自己的自定義作者/用戶頁面,只有文本編輯器,FTP上傳器和您心愛的WordPress儀表板。

首先,您需要創建page.php文件的副本。 將您的副本重命名為任何名稱 - 我將其命名為users.php。

模板標籤 在WordPress的模板頂部將其識別為模板,然後轉到您的儀表板 - >頁面 - >添加新的 並為您的用戶/作者列表創建一個頁面。 返回“頁面”列表,單擊新頁面標題下的“快速編輯”,然後從“模板”下拉菜單中選擇新模板。 保存更改。

現在打開您的users.php(或任何您命名的文件)文件並應用以下代碼:

 <?php $ result = count_users(); echo'有',$ result ['total_users'],'總用戶'; foreach($ result ['avail_roles'] as $ role => $ count)echo',',$ count,'are',$ role,'s'; echo'。'; ?> 

這段代碼使用了 count_users 功能在Codex中列為“默認用法”。 您可以在以下位置查看此代碼的實例 http://robocity.in/users/.

在那段代碼之後,讓我們添加一些關於博客管理員的內容:

<?php printf(__('用戶發布的帖子數量“領導者”:%d','text-dom-here'),count_user_posts(1)); ?>

我用 count_user_posts 這裡的功能,遵循食典委建議的使用格式。

該功能 get_userdata 很好地顯示某個用戶名與使用它的人的真實姓名之間的相關性。 見下文:

<?php $ user_info = get_userdata(1); $ username = $ user_info-> user_login; $ first_name = $ user_info-> first_name; $ last_name = $ user_info-> last_name; echo“$ first_name $ last_name使用用戶名$ username登錄到他們的WordPress站點。”; ?>

現在,這是您可以在作者/用戶頁面上使用的最有趣的功能 - get_users 功能:

<?php $ blogusers = get_users('blog_id = 1&orderby = nicename&role = administrator'); // WP_User對象的數組。 foreach($ blogusers as $ user){echo'<span>'。 esc_html($ user-> user_login)。 ' - '。 esc_html($ user-> user_email)。 '</跨度> <BR/>'; }?>

此函數將根據您可以在代碼中配置的某些參數檢索用戶列表。 在上面的示例中(取自Codex頁面並在Robocity.in中編輯以適合我的用戶頁面),我想獲得由'nicename'訂購的博客ID 1(當前博客)的管理員列表,並且對於每個用戶,我想在“用戶名”類型的句子中顯示用戶名和電子郵件 [電子郵件保護]“。

如果您希望向用戶顯示有關自己的信息,可以使用 get_currentuserinfo 用於檢索用戶姓名和地址的功能。 我沒有在我的例子中使用這個功能,但創造力不知道限制,對吧? ;)

代碼片段和小部件

6。 另類......檔案!

更好的博客檔案想像一下,如果您可以替換舊的側邊欄檔案列表 - 隨著您的博客增長而不斷增長並強制用戶滾動 - 使用您可以在右側看到的片段。

難道不會讓您的讀者更容易一目了然地捕捉您的博客時代和檔案深度嗎? :)

我的未婚夫和我使用Codex的get_post和檔案列表的簡單下拉菜單編寫了這個簡單的片段。 我們創建了自己的功能,以使這個想法很好地運作。

<?php function formatPostDate($ postId,$ format ='%F'){$ post = get_post($ postId); $ output = strftime($ format,strtotime($ post-> post_date)); 返回$ output; function getLastPostID(){list($ post)= get_posts(array('posts_per_page'=> 1)); return $ post-> ID; 這個博客的帖子是<?php echo formatPostDate(1,'%B%e,%Y'); ?>。<br/>最後發表於<?php echo formatPostDate(getLastPostID(),'%​​B%e,%Y'); ?>。</ p> <p>您是否希望訪問特定存檔?</ p> <select name =“archive-dropdown”onchange =“document.location.href = this.options [this.selectedIndex]。 value;“> <option value =”“> <?php echo esc_attr(__('Select Archive')); ?> </ option> <?php wp_get_archives(array('type'=>'monthly','format'=>'option','show_post_count'=> 1)); ?> </ select>

這段代碼有什麼作用?

函數formatPostDate採用帖子的ID和日期格式,並以您選擇的格式返回日期。 第二個函數getLastPostID獲取僅包含一個帖子的帖子數組並返回其ID。

要獲得博客的第一篇文章 - 通常使用ID = 1,我們在第一段中編寫echo formatPostDate(1,'%B%e,%Y'):此代碼使用formatPostDate函數並將post ID作為參​​數#1和日期的標準英文格式,並返回日期。

要獲取博客的最後一篇文章,我們使用formatPostDate(getLastPostID(),'%​​B%e,%Y')來獲取上一篇文章的ID和日期格式(再次,用英語)並打印日期屏幕。

7。 檢查訪問者是否使用移動設備

WP-Snippets.com上的Muneeb分享了一個有趣的代碼片段(一個函數)來檢查您網站上的訪問者是否正在使用移動設備。

代碼可用 點擊瀏覽,獲取更多資訊.

此功能有助於移動優化,因為如果您只想向移動用戶顯示某些功能或將移動用戶排除在某些網站功能之外,此功能非常有用。

8。 使用if / else構造來操縱頁面邊欄內容

此代碼段基於WordPress的Codex,但我將其放在此部分中,因為它允許很多創造力,您可以在Web上找到現成的代碼段。

假設您要在您的網站上使用多個側邊欄。 你可以用div和section填充你的側邊欄,但是文件越多(即使你使用小部件),它就會越重。

食品法典委員會帶你去救援 get_sidebar($名) 功能。 用法很簡單:

  1. 為您的報價摘要創建(比方說)側邊欄。 將其命名為sidebar-quotes.php
  2. 在主sidebar.php文件(或頭文件或索引文件中,根據您的WP主題結構)編寫get_sidebar(“quotes”); 包含“sidebar-quotes.php”文件。

如果你知道一些PHP編碼的WordPress,你可以通過調用其他子邊欄來獲得更簡潔的邊欄,你可以使用if / else結構進行優化。

您可能不知道這一點,但是當您使用通用的get_sidebar()代碼時,它將包含“sidebar.php”,因為您沒有添加$ name參數。 這是默認用法。 在“sidebar * .php”之後添加“-name”時,可以使用$ name arg調用該名稱addon。

如果您要在博客的某些頁面上顯示廣告,特別優惠或側邊欄功能,或者會使標準側邊欄超載的代碼,您會發現此代碼段可以為用戶體驗提供終身保護。

9。 用於將代碼段集成到WordPress站點的工具

codesnippets截圖

代碼片段 是一個由Shea Bange創建的免費WordPress插件,允許您輕鬆地向您的博客添加代碼片段。

這個插件的好處是你不再需要編輯你的 的functions.php 文件,但您可以直接從WordPress儀表板添加自定義代碼。 基本上,您可以添加代碼片段,就像添加新帖子或頁面一樣。

WPMUDev.org的Tom Ewer 寫了一篇關於這個插件的有趣介紹,但到目前為止,我發現Code Snippets最有用的資源是 WordPress.org上的插件支持論壇.

給你!

在下面的評論中分享您的WordPress編碼實驗! 並隨意提出有關本文中介紹的片段的問題。

關於Luana Spinetti

Luana Spinetti是一位自由撰稿人和藝術​​家,總部設在意大利,是一位充滿激情的計算機科學專業的學生。 她擁有心理學和教育方面的高中文憑,並參加了3年的漫畫書藝術課程,並從中畢業於2008。 作為一個多面的人,她對SEO / SEM和網絡營銷產生了濃厚的興趣,特別傾向於社交媒體,她正在用母語(意大利語)製作三部小說,她希望獨立出版很快。