希望WP愛好者能夠喜歡并嘗試一下‘
1.樣式表
在上面的樣式表中,假設放置的是四個250px*250px的圖片廣告,所以250+(4-1)*21=313px。
2.javascript代碼
3.示例的HTML代碼
使用的是索凌網絡前面介紹過的"假圖"生成網站fakeimg.pl生成的"假圖"。
這組代碼的一個顯著缺點是:不適合移動設備顯示。
1.樣式表
在上面的樣式表中,假設放置的是四個250px*250px的圖片廣告,所以250+(4-1)*21=313px。
2.javascript代碼
3.示例的HTML代碼
使用的是索凌網絡前面介紹過的"假圖"生成網站fakeimg.pl生成的"假圖"。
這組代碼的一個顯著缺點是:不適合移動設備顯示。
這才是獲取Wordpress當前文章作者ID的正確方式,網上到處亂傳的那篇名叫“WordPress 通過文章ID獲取文章標題、內容等信息”的文章里的說法是錯誤的,雖然是錯誤的,但是卻被廣泛的Ctrl+C然后Ctrl+V,以訛傳訛,不可思議啊。
另外get_post($id)->可以獲取與文章有關的許多信息,轉述如下:
只在無序列表ul里輸出一個列表,格式是截斷的標題加上鏈接,查詢了僅僅5篇,多了的話,沒什么用,這里僅僅是測試。
WordPress用戶角色或者Wordpress用戶權限說是從Wordpress2.0開始,逐漸的完善起來的,默認分以下幾種的:
當新用戶在你的Wordpress站點上注冊了的時候(假設已經開啟注冊),他的默認角色可以在Wordpress后臺-->設置-->常規頁面設置。
下面的用戶角色以及對應的權限能力等級對照表翻譯自Wordpress官方網站,所在頁面:
http://codex.wordpress.org/Roles_and_Capabilities#Capabilities
角色 | 超級管理員 | 管理員(單個站點) | 編輯 | 作者 | 貢獻者(投稿者) | 訂閱者 |
---|---|---|---|---|---|---|
manage_network | 是 | |||||
manage_sites | 是 | |||||
manage_network_users | 是 | |||||
manage_network_plugins | 是 | |||||
manage_network_themes | 是 | |||||
manage_network_options | 是 | |||||
unfiltered_html | 是 | |||||
角色 | 超級管理員 | 管理員(單個站點) | 編輯 | 作者 | 貢獻者(投稿者) | 訂閱者 |
activate_plugins | 是 | 是 | ||||
create_users | 是 | 僅單個站點 | ||||
delete_plugins | 是 | 是 | ||||
delete_themes | 是 | 僅單個站點 | ||||
delete_users | 是 | 是 | ||||
edit_files | 是 | 是 | ||||
edit_plugins | 是 | 僅單個站點 | ||||
edit_theme_options | 是 | 是 | ||||
edit_themes | 是 | 僅單個站點 | ||||
edit_users | 是 | 僅單個站點 | ||||
export | 是 | 是 | ||||
import | 是 | 是 | ||||
角色 | 超級管理員 | 管理員(單個站點) | 編輯 | 作者 | 貢獻者(投稿者) | 訂閱者 |
install_plugins | 是 | 僅單個站點 | ||||
install_themes | 是 | 僅單個站點 | ||||
list_users | 是 | 是 | ||||
manage_options | 是 | 是 | ||||
promote_users | 是 | 是 | ||||
remove_users | 是 | 是 | ||||
switch_themes | 是 | 是 | ||||
update_core | 是 | 僅單個站點 | ||||
update_plugins | 是 | 僅單個站點 | ||||
update_themes | 是 | 僅單個站點 | ||||
edit_dashboard | 是 | 是 | ||||
角色 | 超級管理員 | 管理員(單個站點) | 編輯 | 作者 | 貢獻者(投稿者) | 訂閱者 |
moderate_comments | 是 | 是 | 是 | |||
manage_categories | 是 | 是 | 是 | |||
manage_links | 是 | 是 | 是 | |||
edit_others_posts | 是 | 是 | 是 | |||
edit_pages | 是 | 是 | 是 | |||
edit_others_pages | 是 | 是 | 是 | |||
edit_published_pages | 是 | 是 | 是 | |||
publish_pages | 是 | 是 | 是 | |||
delete_pages | 是 | 是 | 是 | |||
delete_others_pages | 是 | 是 | 是 | |||
delete_published_pages | 是 | 是 | 是 | |||
delete_others_posts | 是 | 是 | 是 | |||
delete_private_posts | 是 | 是 | 是 | |||
edit_private_posts | 是 | 是 | 是 | |||
閱讀_private_posts | 是 | 是 | 是 | |||
delete_private_pages | 是 | 是 | 是 | |||
edit_private_pages | 是 | 是 | 是 | |||
閱讀_private_pages | 是 | 是 | 是 | |||
角色 | 超級管理員 | 管理員(單個站點) | 編輯 | 作者 | 貢獻者(投稿者) | 訂閱者 |
edit_published_posts | 是 | 是 | 是 | 是 | ||
upload_files | 是 | 是 | 是 | 是 | ||
create_product | 是 | 是 | 是 | 是 | ||
publish_posts | 是 | 是 | 是 | 是 | ||
delete_published_posts | 是 | 是 | 是 | 是 | ||
edit_posts | 是 | 是 | 是 | 是 | 是 | |
delete_posts | 是 | 是 | 是 | 是 | 是 | |
閱讀 | 是 | 是 | 是 | 是 | 是 | 是 |
角色 | 超級管理員 | 管理員(單個站點) | 編輯 | 作者 | 貢獻者(投稿者) | 訂閱者 |
在本文的開頭,我們已經知道如何獲取Wordpress某一篇文章的作者ID了,現在就來獲取其角色:
管理員和編輯都能publish_posts,但是這里的判斷有先后順序,所以不用擔心這個問題,這個判斷是不錯的!
WordPress某篇文章的作者是否有某權限的推薦函數:
這個相對簡單一些,可以直接去判斷,所以我再某個項目中最終使用了這個函數。參數中的$post可以是文章自身,也可以是文章ID,使用起來很方便!
這個函數是經常被使用的,使用的是權限等級,Wordpress官方已經聲明:從Wordpress3.0,已經廢棄了對這個權限等級制度的支持,所以,網上到處亂飛的復制文章,謹慎對待吧!
首先設置.htaccess文件,將動態調用的參數轉換為靜態的HTML的URL地址,例如將在post目錄下的文件,轉發到根目錄的wp- post.php文件中,加入的語句類似:RewriteRule ^post/([a-z0-9\-]+\.html)$ wp-post.php?$1$2
然后修改wp-post.php文件,在文件的開頭加入以下PHP代碼:
以下為引用的內容:
ob_start();
$qstring = isset($_SERVER["QUERY_STRING"]) ? $_SERVER["QUERY_STRING"] : "";
define("HTML_FILE", $_SERVER['DOCUMENT_ROOT']."/post/".$qstring);
if (file_exists(HTML_FILE))
{
$lcft = filemtime(HTML_FILE);
if (($lcft + 3600) > time()) //判斷上次生成HTML文件是否超過1小時,若沒有才直接輸出文件內容
{
echo(file_get_contents(HTML_FILE));
exit(0);
}
}
之后是現有的PHP的代碼,然后在當前代碼的最后面加上如下的PHP代碼:
以下為引用的內容:
define("HTMLMETA","");
$buffer = ob_get_flush();
$fp = fopen(HTML_FILE, "w");
if ($fp)
{
fwrite($fp, $buffer.HTMLMETA);
fclose($fp);
}
好了,然后查看你的靜態HTML頁面,如果頁面尾部出現了注釋行,說明已經成功的創建了靜態HTML文件。
這個方法的一個應用就是我先前寫的那個“WordPress年度博客統計插件”,這個統計插件由于查詢十多次數據庫,很多人訪問的時候會有很大性能問題,使用我介紹的這種動態生成HTML技術后,一天就查詢一次,生成一次統計排行,完美解決了查詢數據庫的性能問題。