所以基本上我已经在 Joomla 上安装了 K2!基于网站,我已打开 IntroText 以进行类别视图。有一个主类别 Master,其中所有其他类别都是子类别,这就是您必须将 IntroText 应用于多个类别的方式,因为 K2 很挑剔 - 在主类别中设置您想要的所有选项并从子类别中调用它们。
我的特殊问题是在 IntroText 中丢失 HTML 格式,因此所有博客文章看起来都像一块文本(红线表示段落应该开始的位置,即
<p>
标签):
它应该如下所示:
我尝试更改主类别中类别视图选项中的几乎所有设置,但无济于事,因为 IntroText 所在的页面是 K2 类别页面。我还尝试打开 ON HTML 格式(默认情况下关闭),然后排除
p
和 br
标签被删除,但无济于事。
经过一番谷歌搜索后,我找不到答案,但我承认有一两个我没有尝试(主要是修改 PHP 文件,如果答案实际上有一些反馈,我会尝试的)。因此,如果有人有任何建议或想法,请告诉我,我将不胜感激。如果需要,我可以提供更多详细信息,但该网站目前处于离线状态。如果您想对网站设置进行更多说明,我可以帮忙,但我相信我已经添加了所有相关的 K2 详细信息。
编辑:我也尝试在
/~siteDir~/public_html/modules/mod_articles_category/helper.php
中注释掉这些行来解决问题,但这也不起作用。
$introtext = str_replace('<p>', ' ', $introtext);
$introtext = str_replace('</p>', ' ', $introtext);
$introtext = strip_tags($introtext, '<a><em><strong>');
EDIT2:我尝试删除整个
_cleanIntrotext
函数及其调用,$item->introtext = self::_cleanIntrotext($item->introtext);
,但这也不起作用......这意味着其他地方也正在剥离IntroText?
为了保持 K2 内容模块内介绍文本的初始格式,您需要使用 两个编辑器来创建项目。 一个用于介绍文本,一个用于全文。您还需要在介绍文本中包含特定数量的单词。这是必要的,因为您之后在模块设置中无法限制 introtext 字数,因为默认情况下,字数会删除所有 html 标签,以避免破坏页面代码,因为 Introtext 字数限制字段指出:
Introtext word limit Leave blank to diasble. If you enable this option, all html tags from the text will be cleaned up to make sure the html structure of the site does not brake.
。恕我直言,保留原样是一件好事,因为您事先并不总是知道哪个 <p>
或其他标签将保持打开状态。我这样做了,它对我有用;该模块保留了所有初始格式。因此,总而言之,为了保持格式完整,将模块的 Introtext 字数限制留空,并在创建文章时分别存储 introtext 和全文。如果您需要更多信息,请告诉我。
编辑
这同样适用于类别列表。正如我在您的网站中看到的,您在类别设置中设置了对 introtext 的限制。因此,您应该检查哪个类别(父类别或子类别)设置了限制并将其删除。转到
Components>K2>Categories
单击以编辑具有限制的类别(-ies),它应该位于 Item view options in category listings>Introtext word limit
中,如果将鼠标悬停在字段标题上,您将看到我之前提到的有关标签剥离的相同警告工具提示。
要将项目创建设置为使用两个编辑器,请转到
Componets>K2>Parameters>Advanced>Use one editor window for introtext & fulltext
将其设置为 No
。这样您的项目就有两个独立的编辑器。但这不是强制性的,如果您不需要,您只需单击编辑器下方的按钮即可在文本中的任意位置添加 Read more
分隔符。