我需要修改Wordpress插件(付費會員專業版)顯示摘錄的方式,這實際上已成爲2部分問題。修改Wordpress插件 - 付費會員專業
第一部分:有人可以指示我正確修改插件的方向嗎?是否有類似你可以在覈心上使用的鉤子/過濾器?
有趣的部分:
我想修改這段代碼,以確保只有1段顯示,無論它的長度。如果該段落短於55個字符,則顯示整個事物,僅此而已。如果超過55個字符,則顯示55個字符,僅此而已。
下面是來自插件代碼:
//if show excerpts is set, return just the excerpt
if(pmpro_getOption("showexcerpts"))
{
//show excerpt
global $post;
if($post->post_excerpt)
{
//defined exerpt
$content = wpautop($post->post_excerpt);
}
elseif(strpos($content, "<span id=\"more-" . $post->ID . "\"></span>") !== false)
{
//more tag
$pos = strpos($content, "<span id=\"more-" . $post->ID . "\"></span>");
$content = wpautop(substr($content, 0, $pos));
}
elseif(strpos($content, 'class="more-link">') !== false)
{
//more link
$content = preg_replace("/\<a.*class\=\"more\-link\".*\>.*\<\/a\>/", "", $content);
}
else
{
//auto generated excerpt. pulled from wp_trim_excerpt
$content = strip_shortcodes($content);
$content = str_replace(']]>', ']]>', $content);
$content = strip_tags($content);
$excerpt_length = apply_filters('excerpt_length', 55);
$words = preg_split("/[\n\r\t ]+/", $content, $excerpt_length + 1, PREG_SPLIT_NO_EMPTY);
if (count($words) > $excerpt_length) {
array_pop($words);
$content = implode(' ', $words);
$content = $content . "... ";
} else {
$content = implode(' ', $words) . "... ";
}
$content = wpautop($content);
}
}
謝謝!
剛剛使用您的最大高度/溢出技巧結束。最終我會重新審視這個,但現在它的工作。 – mchandleraz 2013-05-20 18:56:53