为emlog文章内容页添加功能:
EMLOG文章内容页展开全部

1.实现用户访问时只显示部分内容,需要点击展开全部才显示全部内容。
2.蜘蛛爬虫访问时直接爬取全部内容。
打开模版文件echo_log.php,找到<?php echo $log_content;?>替换成下面代码

<?php
$content = $log_content; // 获取文章内容
$showContentLength = 500; // 设置展示内容的长度,根据需要进行调整
$userAgent = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : '';
$isSpider = false; // 判断是否为蜘蛛爬虫
$spiderKeywords = array('spider', 'bot', 'crawl', 'slurp', 'spider'); // 常见蜘蛛爬虫关键词
foreach ($spiderKeywords as $keyword) {
if (stripos($userAgent, $keyword) !== false) {
$isSpider = true;
break;
}
}
if ($isSpider) {
echo $content;
} else {
if (mb_strlen($content) > $showContentLength) {
$showContent = mb_substr($content, 0, $showContentLength) . '...';
$fullContent = $content;
echo '<div id="content">' . $showContent . '</div>';
echo '<a class="expand-link" href="javascript:;" onclick="expandContent()"><div class="all-content-box"><div class="all-content bk">展开全文</div></div></a>';
} else {
echo '<div id="content">' . $content . '</div>';
}
}
?> 


[wv]

<script>
function expandContent() {
document.getElementById("content").innerHTML = <?php echo json_encode($fullContent); ?>;
document.getElementsByClassName("expand-link")[0].style.display = "none";
}
</script>

 [/wv]