国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務(wù)器之家:專(zhuān)注于服務(wù)器技術(shù)及軟件下載分享
分類(lèi)導(dǎo)航

DEDECMS|帝國(guó)CMS|Discuz|PHPCMS|Wordpress|ZBLOG|ECSHOP|蘋(píng)果CMS|極致CMS|CMS系統(tǒng)|

服務(wù)器之家 - 建站程序 - Wordpress - 較完美的WordPress文章摘要(截?cái)?方案分享

較完美的WordPress文章摘要(截?cái)?方案分享

2019-09-29 14:50WordPress教程網(wǎng) Wordpress

話(huà)說(shuō), 這關(guān)于 文章摘要 的方案, 網(wǎng)路上卻是一抓一大把, 從 Wordpress 內(nèi)置摘要, 然后便是既好用又方便的 more標(biāo)簽 截?cái)? 再就是使用php自身的 mb_strimwidth 函數(shù)截?cái)?.. 此三種方案, 都可以在一定程度上解決問(wèn)題

當(dāng)然, 尚有諸位前輩也曾把以上三種方案結(jié)合一二, 以達(dá)到更廣泛的適應(yīng)度. 不過(guò), 這廂先前在網(wǎng)路上搜索許久, 卻未曾尋到三種方案合為一體的嘗試, 于是只好自己動(dòng)手寫(xiě)一下了:) 
沒(méi)有demo, 整個(gè)過(guò)程并不麻煩, 主要分作以下兩部分: 
STEP 1. 加工 more標(biāo)簽 ↓ 

復(fù)制代碼

代碼如下:


<?php 
function my_more_link($link){ 
//禁止more標(biāo)簽自動(dòng)跳轉(zhuǎn) 
$link=preg_replace('/#more-\d+/i','',$link); 
//我在more標(biāo)簽的外圍加了一層 p, 用以更方便地自定義more標(biāo)簽在頁(yè)面中的顯示(使用 p.read-more) 
$link=str_replace('<a','<p class="read-more"><a rel="nofollow" /> 以上, 應(yīng)是添加入主題的 function.php, 略有注釋. 整個(gè) more標(biāo)簽, 我新增了 nofollow 與 /> STEP 2. 加工完整方案 ↓ 
嗯, 這廂以下才是正題... 
我的想法是, 首先判斷 內(nèi)置摘要, 如果有就直接顯示, 否則進(jìn)入下一判斷, 是否存在 more標(biāo)簽. 最后才是使用php自身的 mb_strimwidth 函數(shù)截?cái)? 
實(shí)現(xiàn)的全部代碼如下(基于 STEP 1 中的操作): 

復(fù)制代碼

代碼如下:


<?php //這是為了在單篇文章(或頁(yè)面)直接顯示全部?jī)?nèi)容,而不使用以下的判斷 
if(is_singular()){the_content();}else{ 
//定義兩個(gè)$ 
$pc=$post->post_content; 
$st=strip_tags(apply_filters('the_content',$pc)); 
//判斷是否存在 內(nèi)置摘要 
if(has_excerpt()) 
the_excerpt(); 
/*使用正則表達(dá)式嘗試匹配more標(biāo)簽, 
并判斷如果存在more標(biāo)簽, 或者正文內(nèi)容長(zhǎng)度小于300, 則直接以more標(biāo)簽方式顯示, 
即是說(shuō), 有more便顯示more, 沒(méi)more且長(zhǎng)度小于300則直接顯示全文. 
我使用了mb_strwidth來(lái)判斷長(zhǎng)度. 
*/ 
elseif(preg_match('/<!--more.*?-->/',$pc) || mb_strwidth($st)<300) 
the_content('Read more &raquo;'); 
//否則...以下 
elseif(function_exists('mb_strimwidth'))//判斷是否支持mb_strimwidth函數(shù) 
echo'<p>'//mb_strimwidth截?cái)嗪蟮玫降氖羌兾谋? 所以我給它包了一層 p 
.mb_strimwidth($st,0,300,' ...')//對(duì)文本內(nèi)容截?cái)? 從位置0開(kāi)始往后截取300長(zhǎng)度, 超出部分以點(diǎn)點(diǎn)點(diǎn)替代 
.'</p><p class="read-more"><a /> 以上便是整個(gè)過(guò)程了, 把 STEP 2 的全部代碼拷貝, 然后找到主題循環(huán)部分, 以之替換類(lèi)似 <?php the_content(); ?>" 的存在即可. 
至此, 我使用的文章摘要與截?cái)喾桨?便算完成了, 若有不當(dāng)之處, 還請(qǐng)不吝留言指教~感恩啦~ 
注1: 使用 mb_strimwidth 倘若出現(xiàn)亂碼, 請(qǐng)自行 Google 之... 
注2: 使用 mb_strimwidth 會(huì)強(qiáng)制截?cái)鄅tml代碼塊而導(dǎo)致格式亂套, 所以最好還是手動(dòng)設(shè)置 more標(biāo)簽, 或者只將其用于純文字的文章. 
注3: 若php文件中寫(xiě)入了中文字符, 請(qǐng)保存為 utf8-no-bom 格式. 
Update: 2011.05.31

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 色视频在线播放 | 中文在线视频 | 免费黄色在线 | 激情一区二区 | 国产日韩精品视频 | 免费网站在线 | 欧美日韩国产一区二区三区 | 久久精品久久综合 | 91社区福利 | 欧美一区二区三区免费 | 日韩1区 | 超级碰在线 | 欧美人成在线观看 | 日韩毛片一区二区三区 | 成人在线免费 | 亚洲精品一 | 99久久久无码国产精品 | 亚洲伦理一区二区 | a久久| 国产色视频一区 | 中文字幕一区二区在线观看 | 欧美日韩一区二区三区在线观看 | 中文字幕1区 | 久久精品国产99国产精品 | 国产日韩一区二区在线 | 午夜草民福利电影 | 久草视频在线观 | 美女福利网站 | 欧美性一区二区三区 | 中文字幕av在线播放 | 久久久久久久免费 | 亚洲精品一区二区三区在线观看 | 日韩在线电影 | 黄色网页在线 | 伊人天堂在线 | 精品欧美一区二区三区久久久 | 日韩成人精品在线 | 午夜黄色 | 欧美日韩中文 | 黄视频在线观看免费 | 亚洲精品国产片 |