2016-07-20 3 views
0

Как эту функцию можно переписать так, чтобы, если я на странице индекса, читается больше текста.WordPress - Написание условных операторов для отрывки

function wpdocs_excerpt_more($more) { 
    return '...' . '<div class="read-more"><a href="'.get_the_permalink().'" rel="nofollow">Read More</a></div>'; 
} 
add_filter('excerpt_more', 'wpdocs_excerpt_more'); 

На index.php я хотел бы сказать, «Полный текст статьи». Что делать, если мы сделали еще один шаг и указали wp_query? Таким образом, можно изменить его более одного раза в файле шаблона.

Было бы проще просто удалить .read-more из этой функции и использовать echo в моем wp-query?

ответ

1
function wpdocs_excerpt_more($more) { 
    // depending on how you set up your home page, you will use either "is_home()" or "is_front_page()" 
    $more_text = is_home() ? 'Read The Full Article' : 'Read More'; 
    return '...' . '<div class="read-more"><a href="'.get_the_permalink().'" rel="nofollow">' . $more_text . '</a></div>'; 
} 
add_filter('excerpt_more', 'wpdocs_excerpt_more'); 

Reference это, если вы не уверены, что вы должны использовать is_home() или is_front_page(): https://wordpress.stackexchange.com/questions/30385/when-to-use-is-home-vs-is-front-page

+0

Есть ли по умолчанию для '$ more_text'? Что делать, если вы не находитесь на главной странице, что определяет значение переменной? –

+0

'$ more_text = is_home()? «Прочитайте полную статью»: «Подробнее»; «Это на простом английском говорит:« Если на домашней странице установите $ more_text в «Читать полную статью». в противном случае установите $ more_text в «Read More». «Тогда вместо жесткого кодирования« Read More », как в вашем вопросе, мы используем переменную' $ more_text'. – Shane

+0

Удивительный, вместо файла шаблона, например 'is_home()' можно ли это сделать с помощью wp_query? Просто ищем гибкость. –

Смежные вопросы