Домой Каталог: Дополнения WP-Recall Public Recall Вывод произвольных полей на главной странице.
21ответ(ов) в теме
gunata
не в сети 3 недели
На сайте с 16.10.2014
Участник
Тем 13
Сообщения 87
1
17:28
Версия WP-Recall: 16.10.4
Версия дополнения: 4.0.0

Здравствуйте! На главной странице сайта информация, опубликованная в произвольных полях идет подряд без пробелов, например: "Область: 18 Удмуртская РеспубликаАдрес: Ижевск" Смотрится не красиво. Можно ли в следующих обновлениях сделать эти пробелы или их можно как-то настроить? Адрес:

Вы не можете просматривать опубликованные ссылки
0
Вова (Otshelnik-Fm)
не в сети 1 день
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18647
2
17:44

Здравствуйте.

То что ваш ВП шаблон форматирование теряет на архивах, а в статьях все норм - это проблема ВП темы. Переключитесь на дефолтную ВП тему (twenty) и посмотрите -есть ли проблема?

0
Андрей CS
не в сети 11 часов
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16855
3
17:46

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

0
gunata
не в сети 3 недели
На сайте с 16.10.2014
Участник
Тем 13
Сообщения 87
4
13:58

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

0
Вова (Otshelnik-Fm)
не в сети 1 день
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18647
5
14:11

Otshelnik-Fm сказал(а)
Переключитесь на дефолтную ВП тему (twenty) и посмотрите -есть ли проблема?

- так проверяли?

0
gunata
не в сети 3 недели
На сайте с 16.10.2014
Участник
Тем 13
Сообщения 87
6
14:26

в ней отображается, как в отдельной статье столбиком.

0
Андрей CS
не в сети 11 часов
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16855
7
14:32

gunata сказал(а)
предполагалось, что эта информация будет видна

где видна? в краткой записи?

0
gunata
не в сети 3 недели
На сайте с 16.10.2014
Участник
Тем 13
Сообщения 87
8
14:33

да

0
Андрей CS
не в сети 11 часов
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16855
9
14:42

тогда найдите в шаблон вывода этих публикаций в папке темы и измените функцию вывода с the_excerpt на the_content, хотя в hueman вроде есть опция такая в админке

0
Вова (Otshelnik-Fm)
не в сети 1 день
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18647
10
14:59

Можно попробовать сниппетом отключить вывод произвольных полей:

// отключение произвольных полей везде кроме одиночной записи
function otfm_del_meta(){
    if(is_single()) return false;

    remove_filter('the_content','rcl_concat_post_meta',10);
}
add_action('wp', 'otfm_del_meta');

0
gunata
не в сети 3 недели
На сайте с 16.10.2014
Участник
Тем 13
Сообщения 87
11
09:41

Благодарю, но эти варианты не подходят. Необходимо, чтобы дополнительные поля отображались в сокращенном варианте записи на главной странице. Просто необходимо, чтобы между ними был пробел. Если эти поля создаются через плагин WP-Recall, то вероятнее всего и пробелы можно предусмотреть либо в самом плагине, либо в дополнении.

0
Андрей CS
не в сети 11 часов
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16855
12
09:49

gunata сказал(а)
пробелы можно предусмотреть либо в самом плагине, либо в дополнении

никакие пробелы предусмотреть нельзя, поля выводятся с учетом того, что они будут обрамлены html-тегами, за счет них осуществляется расположение полей на разных строках, при формировании краткой записи все html-теги обрезаются, поэтому они лепятся в одну строку, что неудивительно. Я дал вам вариант решения, который должен вам подойти, но как понял вы даже не пытались копать в этом направлении.

0
gunata
не в сети 3 недели
На сайте с 16.10.2014
Участник
Тем 13
Сообщения 87
13
15:56

Мои раскопки в этом направлении привели меня сюда:

Вы не можете просматривать опубликованные ссылки

Получается, что если я внесу изменения в файл темы, то они будут теряться при каждом обновлении. в статье по этому поводу говориться:
"В файле functions.php вашей темы или любом файле используйте файл функций. Просто помните, когда вы это делаете, если тема не ваша, все изменения будут потеряны при обновлении темы

Лучшим способом было бы использовать код в дочерней теме. Как и выше, в файле functions.php или связанных с функциями

Используйте код в плагине. Это предпочтительный способ, поскольку это делает код доступным для всех тем. Если вы переключаете темы, вам не нужно беспокоиться о переписывании одного и того же кода."

т.е. предлагают изменения в плагине. Если это проблематично, то может тогда в дочерней теме, которая у меня и стоит: Hueman Child WP-Recall. но, опять же, если эти изменения внесу я, то они будут теряться при обновлении дочерней темы.

0
Вова (Otshelnik-Fm)
не в сети 1 день
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18647
14
16:00

Каков ваш вопрос? Вам дали рекомендации что делать и в каком направлении смотреть. Даже пример сниппета дали чтобы отключить это безобразие - так что как минимум 2 решения у вас есть. Вы не воспользовались ниодним.

0
gunata
не в сети 3 недели
На сайте с 16.10.2014
Участник
Тем 13
Сообщения 87
15
16:33

Otshelnik-Fm сказал(а)
Можно попробовать сниппетом отключить вывод произвольных полей:

Мне НЕ НАДО отключать вывод произвольных полей.

0
Вова (Otshelnik-Fm)
не в сети 1 день
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18647
16
16:39

Ок. Ответ вам был дан Андреем. Что вы делали из предложенного?

Вам выбирать как бы не из чего. Или так или смириться или сделать по моему сниппету и пересмотреть свои взгляды.

0
gunata
не в сети 3 недели
На сайте с 16.10.2014
Участник
Тем 13
Сообщения 87
17
10:43

Задачу удалось решить при помощи статьи, на которую давала ссылку ранее.
в файл wp-includes / formatting.php после строки return apply_filters( 'wp_trim_excerpt', $text, $raw_excerpt );
внесла следующий код:

3343	remove_filter('get_the_excerpt', 'wp_trim_excerpt');
	
3344    add_filter('get_the_excerpt', 'wpse_custom_wp_trim_excerpt');

3346   function wpse_allowedtags() {
    // Add custom tags to this string
        return '<script>,<style>,<br>,<em>,<i>,<ul>,<ol>,<li>,<a>,<p>,<img>,<video>,<audio>'; 
    }

if ( ! function_exists( 'wpse_custom_wp_trim_excerpt' ) ) : 

    function wpse_custom_wp_trim_excerpt($wpse_excerpt) {
    $raw_excerpt = $wpse_excerpt;
        if ( '' == $wpse_excerpt ) {

            $wpse_excerpt = get_the_content('');
            $wpse_excerpt = strip_shortcodes( $wpse_excerpt );
            $wpse_excerpt = apply_filters('the_content', $wpse_excerpt);
            $wpse_excerpt = str_replace(']]>', ']]>', $wpse_excerpt);
            $wpse_excerpt = strip_tags($wpse_excerpt, wpse_allowedtags()); /*IF you need to allow just certain tags. Delete if all tags are allowed */

            //Set the excerpt word count and only break after sentence is complete.
                $excerpt_word_count = 75;
                $excerpt_length = apply_filters('excerpt_length', $excerpt_word_count); 
                $tokens = array();
                $excerptOutput = '';
                $count = 0;

                // Divide the string into tokens; HTML tags, or words, followed by any whitespace
                preg_match_all('/(<[^>]+>|[^<>s]+)s*/u', $wpse_excerpt, $tokens);

                foreach ($tokens[0] as $token) { 

                    if ($count >= $excerpt_length && preg_match('/[,;?.!]s*$/uS', $token)) { 
                    // Limit reached, continue until , ; ? . or ! occur at the end
                        $excerptOutput .= trim($token);
                        break;
                    }

                    // Add words to complete sentence
                    $count++;

                    // Append what's left of the token
                    $excerptOutput .= $token;
                }

            $wpse_excerpt = trim(force_balance_tags($excerptOutput));

                $excerpt_end = ' <a href="'. esc_url( get_permalink() ) . '">' . ' » ' . sprintf(__( 'Read more about: %s  »', 'wpse' ), get_the_title()) . '</a>'; 
                $excerpt_more = apply_filters('excerpt_more', ' ' . $excerpt_end); 

                //$pos = strrpos($wpse_excerpt, '</');
                //if ($pos !== false)
                // Inside last HTML tag
                //$wpse_excerpt = substr_replace($wpse_excerpt, $excerpt_end, $pos, 0); /* Add read more next to last word */
                //else
                // After the content
                $wpse_excerpt .= $excerpt_more; /*Add read more in new paragraph */

            return $wpse_excerpt;   

        }
        return apply_filters('wpse_custom_wp_trim_excerpt', $wpse_excerpt, $raw_excerpt);
    }

endif; 

remove_filter('get_the_excerpt', 'wp_trim_excerpt');
add_filter('get_the_excerpt', 'wpse_custom_wp_trim_excerpt'); 

теперь всё красиво отображается и как надо.
Хотя, после обновлений скорее всего, опять придётся редактировать. Поэтому автор и предлагает внести эти изменения в дочернюю тему или в плагин.

Надеюсь, что Андрей всё-таки внесет в будущем эти изменения либо в плагин, либо в дочернюю тему.

Благодарю за помощь и желаю дальнейших творческих успехов.

Редакции сообщения
06.02.2018 10:48Otshelnik-FmПричина: не указано
06.02.2018 10:49Андрей CSПричина: не указано
0
gunata
не в сети 3 недели
На сайте с 16.10.2014
Участник
Тем 13
Сообщения 87
18
10:47

полный корректный код, кому надо, смотрите в статье:

Вы не можете просматривать опубликованные ссылки

, а тон как-то странно отобразился.

0
Вова (Otshelnik-Fm)
не в сети 1 день
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18647
19
10:47

в файл wp-includes / formatting.php

- это очень-очень плохо. Ядро вордпресса хакать нельзя. Потом удивляются когда неожиданно несвязанные проблемы появляются или вирусы...

gunata сказал(а)
Надеюсь, что Андрей всё-таки внесет в будущем эти изменения либо в плагин, либо в дочернюю тему.

- в плагин точно нет. Он не занимается выводом контента из записей.

0
Вова (Otshelnik-Fm)
не в сети 1 день
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18647
20
10:49

gunata сказал(а)
а тон как-то странно отобразился.

- ну да странно - вы ведь не воспользовались кнопкой Многострочный код. Для кого удобства делаем...

0
gunata
не в сети 3 недели
На сайте с 16.10.2014
Участник
Тем 13
Сообщения 87
21
13:30

Ну, извините. Я вообще не любитель лезть в какой-либо код. Но придётся пока оставить так.
Надеюсь, что такой классный функционал, как произвольные поля, будет когда-нибудь отображаться без косяков везде, а не только на одиночных записях. Думаю, что Андрей, как специалист, найдёт нужное решение, тогда и вордпресс хакать не придётся.
Сообщите, когда это произойдет и я с удовольствием перейду на Ваш вариант.

У вас очень хороший продукт, но нет предела совершенству. А обратная связь от клиентов помогает его развитию.

0
Вы не имеете права на публикацию сообщений в этой теме