我一直在想如何在主页上显示完整的帖子, 和所有档案的摘录大约 3 天。这很好,因为这意味着每篇文章都有相当数量的显示在首页上, 而存档页面包含每个帖子的更简洁的摘要。这对人类都更好, 也为了 本 - 我的存档页面现在没有来自我的主页的重复内容!
我终于提出了一个解决方案。不是特别优雅, 但我已经达到了我的极限 PHP 知识只是为了实现这个方法。这特别适用于 Mystique 3 主题, 其他主题可能会有所不同, 尽管其中一些信息可能会或可能不会被证明是相关的。如果您正在尝试或成功对不同的主题做同样的事情,请发表评论.
目前如何运作
Mystique 具有允许管理员选择是否显示摘录或完整帖子的选项。此选项在 $options 数组中存储为 $post_content_mode.
文件archive.php 显示存档并通过teaser.php 循环显示每个帖子
Teaser.php 有一行
[PHP]<?PHP (is_sticky() && is_home()) ? 内容() : $应用程序->后>内容(); ?>[/PHP]
该行通过调用文件 AtomObjectPost.php 中的 getContent 函数生成内容。如果此行被注释,则帖子内容将从存档页面中消失.
getContent 函数加载 $options 并作为结果调用 the_content() 或 the_excerpt() 哪些是 wordpress 内置函数.
解决方案
我已经通过修改 Teaser.php 设法实现了我的愿望——但我认为这有点拙劣的工作。我刚换了
[PHP]<?PHP (is_sticky() && is_home()) ? 内容() : $应用程序->后>内容(); ?>[/PHP]
同
[PHP]<?如果PHP的(is_home()): ?>
<?PHP (is_sticky() && is_home()) ? 内容() : $应用程序->后>内容(); ?>
<?php else: ?>
<?PHP (is_sticky() && is_home()) ? 摘录() : $应用程序->后>内容(‘e’); ?>
<?php endif; ?>[/PHP]
更好的解决方案?
我宁愿通过添加到functions.php 来实现这个解决方案,但我不知道该怎么做。我的 PHP 知识还不够好.
“Hi James I realise it has been a long while, but I just checked this on windows 11 (build 23H2)…”