С помощью этого ответа PHP-OOP, связанного с WordPress, я нашел свое решение для того, что ищу. Но с той же функцией my_excerpt();
я хочу передать другой тег привязки (<a>
) внутри тега <p>
.
Прямо сейчас вызов my_excerpt()
охватывает тексты БД с тегом абзаца (<p>here comes the excerpt</p>
). И если я добавлю свой тег привязки следующим образом:
// Echoes out the excerpt
public static function output() {
the_excerpt(); ?>
<a class="read-more" href="<?php the_permalink(); ?>" title="<?php the_title(); ?>" rel="bookmark"><?php _e( 'Read More »', 'my-theme'); ?></a>
<?php
}
он показывает «Подробнее» только внизу текста, кроме текстов. Inspect Element показывает следующее:
<p>here comes the excerpt.</p>
<a href="post-link">Read More</a>
Как я могу внести изменения в функцию или класс, чтобы у меня была ссылка «Подробнее» внутри абзаца, например:
<p>here comes the excerpt.<a href="post-link">Read More</a></p>
Кроме того
Кроме того, я также пытаюсь удалить часть [...]
из отрывка, созданного my_excerpt();
. Итак, я попробовал следующее:
function change_excerpt($content) {
$content = str_replace( '[...]','>',$content ); // remove [...], replace with ...
$content = strip_tags( $content ); // remove HTML
return $content;
}
add_filter('my_excerpt','change_excerpt');
Я ничего не делаю с представлением. Но если я изменю его на:
add_filter('the_excerpt','change_excerpt');
Затем, не зная, я получаю ранее желаемый тег привязки [внутри абзаца], потому что фильтр полностью удалил тег абзаца.
here comes the excerpt.<a href="post-link">Read More</a>
Но это ничего не делает с частью [...]
. :(
Итак, мой заданный вопрос:
Как я могу поместить тег привязки внутри тега абзаца или удалить тег абзаца и удалить часть [...]
из функции my_excerpt()
?