typecho主题开发记录

一直想自己学习开发一个模板,奈何一直没有下定决心,国庆节时间开始准备自己先模仿一个typecho主题试试!

随时记录感觉好用的教程,持续更新

  • typecho获取分类不跳转链接
这个带超链接的分类名
<?php $this->category(','); ?> 

这个不带链接的分类名
<?php $this->category(',', false); ?>
  • typecho获取域名相信信息
<script>
  // 获取网址域名信息
  var url = "<?php echo $this->fields->url(); ?>";

  if (url) {
    // 构建API请求URL
    var apiUrl = "https://yuanxiapi.cn/api/info/?url=" + encodeURIComponent(url);

    // 发送GET请求获取数据
    fetch(apiUrl)
      .then(response => response.json())
      .then(data => {
        // 处理返回的数据
        if (data && data.code === 200) {
          var title = data.title;
          var keywords = data.keywords;
          var description = data.description;
          var domain = data.url; // 获取域名信息

          // 在页面上展示获取到的数据
          document.getElementById("title").textContent =" " +  title;
          document.getElementById("keywords").textContent = " " + keywords;
          document.getElementById("description").textContent = " " + description;
          document.getElementById("domain").textContent = " " + domain; // 在页面上展示域名信息
        } else {
          // 如果没有成功获取到数据,隐藏对应的展示元素
          document.getElementById("title").style.display = "none";
          document.getElementById("keywords").style.display = "none";
          document.getElementById("description").style.display = "none";
          document.getElementById("domain").style.display = "none";
        }
      })
      .catch(error => {
        console.error("获取网站信息失败:", error);
      });
  }
</script>

<!-- 在页面上展示获取到的网站信息 -->
        <p id="domain"></p>
        <p id="title"></p>
        <p id="keywords"></p>
        <p id="description"></p>
  • typecho获取文章内容输出去掉p标签

如果在 Typecho 的模板文件中使用 `$this->content(‘Continue Reading…’);` 函数获取文章内容,会自动在内容周围添加 `<p>` 标签。

解决方案:

1. 打开 Typecho 主题的 `functions.php` 文件。
2. 在文件中添加以下代码:

function remove_auto_p_tags($content) {
$content = preg_replace('/<p[^>]*>/', '', $content);
$content = preg_replace('/<\/p>/', '', $content);
return $content;
}

3. 保存文件并关闭。

然后,在模板文件中使用以下代码来获取文章内容,它将不会自动添加 `<p>` 标签:

<?php echo remove_auto_p_tags($this->content); ?>

这样,你就可以在不自动添加 `<p>` 标签的情况下获取文章内容了。请确保在修改代码之前备份你的文件,以防止意外发生,注意调用你所在函数输出的写法是否正确。

------本页内容已结束,感谢您的观看------
© 版权声明
THE END
喜欢就支持以下吧
点赞10 分享
评论 共1条

请登录后发表评论