我正在为几乎所有内容都需要不同长度的客户建立一个站点。 the_excerpt
标签已经缩短到 15 个字,但我需要the_content()
在主“更新”页面上缩短,但随后需要在实际帖子页面上以完整形式(无限制)工作。
我该怎么做呢?有谁知道是否有办法改变the_content
每页的输出?
我如何创建一个基本上执行以下操作的“功能”
the_content("short")
对于博客登录页面,
the_content();
正常输出在 single.php 上是否正常工作?
我正在为几乎所有内容都需要不同长度的客户建立一个站点。 the_excerpt
标签已经缩短到 15 个字,但我需要the_content()
在主“更新”页面上缩短,但随后需要在实际帖子页面上以完整形式(无限制)工作。
我该怎么做呢?有谁知道是否有办法改变the_content
每页的输出?
我如何创建一个基本上执行以下操作的“功能”
the_content("short")
对于博客登录页面,
the_content();
正常输出在 single.php 上是否正常工作?
将以下代码放入您的主题中functions.php
function custom_excerpt_length( $length ) {
return 20;
}
add_filter( 'excerpt_length', 'custom_excerpt_length', 999 );
而不是 20 使用您想要的摘录长度
the_excerpt()
您可以通过将以下代码放入您的 中来更改 的字符长度functions.php
:
function custom_excerpt_length( $length ) {
return 20;
}
add_filter( 'excerpt_length', 'custom_excerpt_length');
两种解决方案: 第一种解决方案:将过滤器应用于过滤器挂钩the_content
,如下所示:add_filter('the_content', 'filter_function_name')(放在 functions.php 中)。然后创建函数filter_function_name
来查找调用的上下文并有条件地缩短返回的长度。有关将过滤器应用于 the_content 的更多信息,请参见此处:http: //codex.wordpress.org/Plugin_API/Filter_Reference/the_content
第二种解决方案:不要使用 the_content(),而是使用你自己的函数,如 sp_content()。
function sp_content($length) {
if ($length == "") { $content = get_the_content(); }
else { $content = substr(get_the_content(), 0, $length) }
return $content;
}
甚至更简单:当您需要长内容时,请使用the_content()
,在任何其他情况下,只需short_content()
在创建自己的函数后使用,如下所示:
short_content() {
substr(get_the_content())... etc.
}