Обсуждаем Thunder 3.1х

Тема в разделе "Thunder 3.X", создана пользователем Firestarter, 19 май 2016.

  1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Внимание!!! До 1 Мая, скидка 30% на Thunder 3 и MassSiteProxy в магазине. http://ifirestarter.ru
    76197935908C47D5
    DB8D53C51B1B4292
    ECE321C0FEAA401A
    BC91C339687A45BF
    D2B06542439C4948
    400AF79DD3C64D5A
    C244061C86A64B01
    6E1B8B292E944D0D
    354131281E244BD3
    A11B629F8F97427F
  1. amness

    amness Активный Участник

    11 апр 2016
    250
    86
    Мужской
    Попробуй так:
    Код:
    {% if php_strpos(line, srch_key)%}
    
    {% set film = line %}
    
    <!--Вывожу -->
    {{line}}
    
    <!--И сразу выхожу-->
    {{php_break}}
    
    {% endif %}
     <p>ВЫВОД ПОСЛЕ ЦИКЛА</p> 
    {{film}}
    
     
  2. Glokken

    Glokken Участник

    26 окт 2015
    144
    32
    Мужской
    Так пробовал - не сработало.

    РЕШИЛОСЬ ТАК:

    Код:
       <!-- Устанавливаю в переменную с какого файла буду брать ключи, пусть они лежат в папке с шаблоном -->
        {% set file =  settings.doc_root ~ '/templates/public/shablon/data/keyfile.txt' %}   
        <!--Читаю файл в массив-->
        {% set lines = php_file(file) %}
    
        <!--Что ищу-->   
        {% set srch_key = php_mb_substr( '##'~keyword~'##', 1) %}  
    
        <!--Куда положу--> 
        {% set rez = ''  %}
       
                    <!--Иду по всем строкам в массиве-->
                {% for line in lines %}
                    <!--Если строка содержит ключ-->
                    {% if php_strpos(line, srch_key)%}
                        <!--Запоминаю-->
                        {% set rez = line  %}
                        <!--И сразу выхожу-->
                        {{php_break}}
                    {% endif %}
                {% endfor %}
      
        <!--Результат--> 
        {% set rez = rez|split ('##') %}
     
  3. Tantal

    Tantal Новичок

    20 май 2016
    6
    1
    Мужской
    А как сделать, чтобы генерировался контент из файла (blog/data/text.txt) по Маркову {{ 'Мама мыла раму'|markov(3, 100) }}

    <!-- Беру случайные N предложений в файле text.txt -->
    {%set content = rand_text_from_file(settings.doc_root ~ '/templates/public/blog/data/text.txt',10) %}


    {{%set content = rand_text_from_file(settings.doc_root ~ '/templates/public/blog/data/text.txt'|markov(3,100) %}}


    так или по-другому ?
     
  4. heyner

    heyner Участник

    25 янв 2016
    218
    43
    Ребят помогите сделать простенькую комбинацию. Есть ключи в столбец. Есть файлы с текстом txt под эти ключи. Как вы водить на страницу 1 ключ - и вставлять текст из файла, соответствующий этому ключу? Как взять конкретный файл к конкретному ключу?
     
  5. Glokken

    Glokken Участник

    26 окт 2015
    144
    32
    Мужской
    Как-то так... точно не помню конструкцию.... гдето на форуме было, но не нашел сейчас...
    {{%set content = text_from_file(settings.doc_root ~ '/templates/public/blog/data/'~keyword~'.txt' %}}

    Короче - в эту сторону копай... Ну или через мультикей.
     
  6. heyner

    heyner Участник

    25 янв 2016
    218
    43
    Так это ..чисто будет брать ключ из файла, а мне нужно чтоб ключ и текст определенный из файла.
     
  7. Glokken

    Glokken Участник

    26 окт 2015
    144
    32
    Мужской
    Будет брать текст из файла с именем ключ.txt

    {{%set content = text_from_file(settings.doc_root ~ '/templates/public/blog/data/'~keyword~'.txt' %}}

    {{keyword}}
    {{content}}

    Только нужно чтоб название текстового файла ключ.txt совпадало с ключом
    Был где-то на форуме пример....


    Ну или сделай файл с мультикей :

    ключ1;текст1
    ключ2;текст2
    ..............
    Про мультикей - на форуме поищи...
     
    heyner нравится это.
  8. heyner

    heyner Участник

    25 янв 2016
    218
    43
    Только нужно чтоб название текстового файла ключ.txt совпадало с ключом - ну не ручками сидеть делать же. Есть мысля как ?
     
  9. Glokken

    Glokken Участник

    26 окт 2015
    144
    32
    Мужской
    Ну ищи программы Renamer-ы в Инете. Попадались такие которые переименовывают файлы в соответствии со списком....
    Ну или учи php...
    Я сам новичок - подсказать особо не могу... Курю Инет :)
     
  10. ddn128

    ddn128 Опытный Пользователь

    31 дек 2015
    507
    232
    Мужской
    Total Commander могёт переименовывать по списку.

    Либо http://www.datamystic.com/textpipe.html - ваще чудеса может творить с текстами и\или с файлами (есть нулл в тырнетах)
     
    heyner нравится это.
  11. heyner

    heyner Участник

    25 янв 2016
    218
    43
    Тотала нет у меня. Может ТС сможет тузлу написать? Я бы сделал эксперимент отписал бы рабочий или нет.
     
  12. Glokken

    Glokken Участник

    26 окт 2015
    144
    32
    Мужской
    :):):)
    Скачай в Инете... бесплатно...
    У ТС и дел то больше нет - твою лень перепрограммировать :)
    Обратись к фрилансерам ...
     
  13. Glokken

    Glokken Участник

    26 окт 2015
    144
    32
    Мужской
    Поиск совпадения в файле мультикея

    Обнаружилась проблемка :-(


    Код:
       <!-- Устанавливаю в переменную с какого файла буду брать ключи, пусть они лежат в папке с шаблоном -->
        {% set file =  settings.doc_root ~ '/templates/public/shablon/data/keyfile.txt' %}  
        <!--Читаю файл в массив-->
        {% set lines = php_file(file) %}
    
        <!--Что ищу.   У меня мультикей вида:   часть1##часть2##keyword##часть3  -->  
        {% set srch_key = php_mb_substr( '##'~keyword~'##', 1) %} 
    
        <!--Куда положу-->
        {% set rez = ''  %}
      
                    <!--Иду по всем строкам в массиве-->
                {% for line in lines %}
                    <!--Если строка содержит ключ-->
                    {% if php_strpos(line, srch_key)%}
                        <!--Запоминаю-->
                        {% set rez = line  %}
                        <!--И сразу выхожу-->
                        {{php_break}}
                    {% endif %}
                {% endfor %}
     
        <!--Результат-->
        {% set rez = rez|split ('##') %}
    Все отрабатывает хорошо. НО пока не найдет нужную строку - в код html страницы добавляется пустая строка :-(
    То есть если совпадает например строка 10001 - то сначала появляется 10000 пустых строк в html коде страницы. :-(
    Впустую потом растет кэш...
    Как решить эту проблему? HELP!
     
  14. amness

    amness Активный Участник

    11 апр 2016
    250
    86
    Мужской
    Была подобная проблема, только у меня килобайты пробелов херачило в код, частично решается с помощью spaceless и trim
     
    Glokken нравится это.
  15. heyner

    heyner Участник

    25 янв 2016
    218
    43
    Мультике не нашел. Ребят как брать файлы с текстом, чтобы название текстового файла ключ.txt совпадало с ключом?
     
  16. ddn128

    ddn128 Опытный Пользователь

    31 дек 2015
    507
    232
    Мужской
    откуда взялся text_from_file?
    На сколько понимаю попутали с rand_text_from_file.
    Я так понимаю нет макроса для взятия всего текста из файла, да он и не нужен, т.к. есть php (file_get_contents)
    т.е. чтобы взять текст из файла

    Код:
    {% set content = php_file_get_contents(settings.doc_root ~ '/templates/public/'~settings.view.public.template~'/data/'~keyword~'.txt') %}
    
    При условии, что ключ и название файла 100% соответсвуют др. другу
    Т.е.
    Ключ - "кнопка бабло"
    Файл - "кнопка бабло.txt"
     
  17. Glokken

    Glokken Участник

    26 окт 2015
    144
    32
    Мужской
    Да. Попутал малеха. Согласен с тобой полностью.
     
  18. heyner

    heyner Участник

    25 янв 2016
    218
    43
    Т.е. полное выражение будет такое ?
    {% set content = php_file_get_contents(settings.doc_root ~ '/templates/public/'~settings.view.public.template~'/data/'~keyword~'.txt') %}
    {{keyword}}
    {{content}}
    Все файлы лежат в data?
     
  19. ddn128

    ddn128 Опытный Пользователь

    31 дек 2015
    507
    232
    Мужской
    типо того
     
  20. heyner

    heyner Участник

    25 янв 2016
    218
    43
    Буду пробовать.