Как удалить перевод, когда полный текст включен в WordPress? - PullRequest
0 голосов
/ 07 декабря 2011

код выглядит следующим образом

function new_excerpt_length($length) {
    return 100;
}
add_filter('excerpt_length', 'new_excerpt_length');

есть опция в wp-admin> настройки> чтение> Для каждой статьи в ленте показывать, если для этого параметра задан полный текст, excerpt () долженвернуть полную статью вместо указанной длины.

как это сделать?

1 Ответ

1 голос
/ 09 мая 2012

Хороший вопрос! Ответ прост: напишите свою собственную функцию!

Откройте functions.php в своем любимом редакторе и нажимайте случайные кнопки на клавиатуре, пока не получите что-то вроде этого:

function my_awesome_excerpt ($post_id = false, $full = false, $length = 22) {
    if (!$post_id) global $post;
    else $post = get_post($post_id);

    $text = $post->post_content;

    if ($full) return $text;

    else {
        $text_array = explode(' ', $text);
        $return_string = array();
        for ($i = 0; $i <= $length; $i++)
            array_push($return_string, $text_array[$i]);

        $new_awesome_string = '<p>';
        $new_awesome_string .= implode(' ', $return_string);
        $new_awesome_string .= '</p><p class="readmore">';
        $new_awesome_string .= '<a href="' . get_permalink($post_id) . '">';
        $new_awesome_string .= 'Read More' . '</a></p>';

        return $new_awesome_string;
    }
}

Теперь вы готовы к крутой части. Как только вы в вашем цикле, вы можете написать магию, как это:

echo my_awesome_excerpt();

и он автоматически выплюнет отрывок. Он использует глобальную переменную post и все! Вы даже можете использовать его вне цикла:

echo my_awesome_excerpt($cpt->ID, 22);

и установите свою особую длину!

Или, может быть, вы просто знаете в своем сердце, что это того не стоит, вы просто хотите показать все это. Как это выглядит?

Внутри цикла вам нужно будет присвоить ему почтовый идентификатор, извините за это.

echo my_awesome_script($post->ID, false);

Надеюсь, это поможет. Хорошего дня!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...