Перейти к публикации

Рекомендованные сообщения

Вот допустим есть код {custom xfields="Выводить на главной" template="topnews" limit="5"}

а в topnews такой код

[not-available=showfull]<input type="hidden" name="izo" id="izo{news-id}" value="[xfvalue_image_url_prevbanner]">[/not-available]

 

Мне нужно вместо id новости, пронумировать новости от 1 до 5, чтобы выводилось так

<input type="hidden" name="izo" id="izo1" value="img/1.jpg">

<input type="hidden" name="izo" id="izo2" value="img/dd.jpg">

<input type="hidden" name="izo" id="izo3" value="img/ee.jpg">

<input type="hidden" name="izo" id="izo4" value="img/31.jpg">

<input type="hidden" name="izo" id="izo5" value="img/122.jpg">

 

Как сделать нумерацию выводимых новостей

Ссылка на сообщение
Поделиться на других сайтах
9 часов назад, Zero сказал:

Сходить и почитать документацию по шаблонным тегам например...

Вы правы, но хочется поменьше работать, а чтобы просто ctrl+c, ctrl+v.

Поэтому хотелось бы просто увидеть работающий пример, ну как на php, только на dle

$i=1

while($i<6)

{

echo'<input type="hidden" name="izo'.$i.'" id="izo'.$i.'" value="">';

$i++;

}

Ссылка на сообщение
Поделиться на других сайтах

 

10 часов назад, Zero сказал:

Сходить и почитать документацию по шаблонным тегам например...

https://dle-news.ru/extras/online/index.html?startnews.html

Читаю документацию, тут нет нигде тега отвечающий за номер новости, начиная с 1.  Хотя бы скиньте ссылку, где я смогу прочитать решение своей проблемы

Ссылка на сообщение
Поделиться на других сайтах

Вот тут нашел статейку 

celsoft Советы 68 965 29
Итак нередко возникает необходимость вставки на свой сайт PHP скрипт стороннего производителя. Однако по умолчанию данная возможность отключена в скрипте. Поэтому предлагаем вам небольшой хак, позволяющий использовать любой PHP код в шаблонах

Откройте файл index.php найдите строчку:
echo $tpl->result['main'];
и замените ее на 
eval (' ?' . '>' . $tpl->result['main'] . '<' . '?php ');

Все заработало, спасибо

Изменено пользователем alexei1800@mail.ru
Ссылка на сообщение
Поделиться на других сайтах
4 часа назад, alexei1800@mail.ru сказал:

Читаю документацию, тут нет нигде тега отвечающий за номер новости, начиная с 1.

Не путай номер новости и ID

4 часа назад, alexei1800@mail.ru сказал:

Вот тут нашел статейку 

 

Хреновая идея, разрешать php  в шаблонах. Вставить счетчик в цикл while религия не позволяет?  Две строчки на все про все.

Ссылка на сообщение
Поделиться на других сайтах
3 часа назад, alex32 сказал:

Не путай номер новости и ID

Хреновая идея, разрешать php  в шаблонах. Вставить счетчик в цикл while религия не позволяет?  Две строчки на все про все.

Мне в шаблонах нужно пронумеровать новости от 1 до 5. В документации я не нашел возможности использования использования тега с номером новости. Конкретно на примере можете показать, я не знаю как в dle шаблоне использовать счетчик while. В каждой новости я использую input hidden c некими параметрами, мне нужно пронумеровать эти inputы.  id="izo1", id="izo2", id="izo3", id="izo4".  Ваш ответ не очень информативен, не могли бы вы показать пример, все равно он занимает не более 2-3 строк

Ссылка на сообщение
Поделиться на других сайтах

Ну вы же программист или я не понял, должны всё знать и уметь читать, я например, нет? А делая шаблон заказчику с внедрением небезопасного кода в двиг, за это "мозги отрывают", утрирую - убивал бы. Отвечать не нужно. ;) 

Ссылка на сообщение
Поделиться на других сайтах
6 часов назад, Captain сказал:

Ну вы же программист или я не понял, должны всё знать и уметь читать, я например, нет? А делая шаблон заказчику с внедрением небезопасного кода в двиг, за это "мозги отрывают", утрирую - убивал бы. Отвечать не нужно. ;) 

отвечу на ваш высер.

Я программист, не эксрасенс. В документации нет тега, отвечающего за номер новости.

Как можно "все знать и уметь читать" т.е. в самописном движке догадаться, что и как сделать

Ссылка на сообщение
Поделиться на других сайтах
22 часа назад, alexei1800@mail.ru сказал:

Вот тут нашел статейку 

celsoft Советы 68 965 29
Итак нередко возникает необходимость вставки на свой сайт PHP скрипт стороннего производителя. Однако по умолчанию данная возможность отключена в скрипте. Поэтому предлагаем вам небольшой хак, позволяющий использовать любой PHP код в шаблонах

Откройте файл index.php найдите строчку:

echo $tpl->result['main'];
и замените ее на 

eval (' ?' . '>' . $tpl->result['main'] . '<' . '?php ');

Все заработало, спасибо

Этой статье больше 10 лет. Уже многое в скрипте изменилось. Разрешать использование PHP в шаблонах плохо и небезопасно. Существуют уже давно другие способы безопасного внедрения сторонних PHP кодов. Они описаны в документации https://dle-news.ru/extras/online/index.html?modules_include.html

52 минуты назад, alexei1800@mail.ru сказал:

Я программист, не эксрасенс. В документации нет тега, отвечающего за номер новости.

Как можно "все знать и уметь читать" т.е. в самописном движке догадаться, что и как сделать

Я вас понимаю, для вас обидны высказывания других пользователей скрипта. Но в этом ваша вина. Вы в соседней теме поставили себя выше других, заявив что вы программист, и разбираетесь во всем лучше других, при этом задаете ну очень простые вопросы, которые программист не задаст. И теперь другие пользователи форума будут это постоянно вам "припоминать" эти слова и "тыкать" в них, когда вы просите помощи. Это же форум, публичное место, где ваши сообщения читают и видять все другие пользователи. И делают соответствующие для себя выводы. И они правы, зачем вам давать какие то примеры и помощь, если вы сами заявили, что вы программист. А программист не будет просить примеры, он спросит примерно следующее: "Ребята, хочу внедрить в при выводе новостей через {custom...} свою функциональность, какой файл скрипта отвечает за формирование этого контента". На что ему собственно и ответят где, это кстати файл engine/modules/show.custom.php. После чего он пойдет и сделает ее себе, потому как он программист и любому программисту код в этом файле уже понятен. Но вы же просите дайте готовый пример и код и распишите и расскажите и т.д., а программисту это не нужно. Поэтому вам теперь другие участники форума это и "припоминают".

 

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

 

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

Ссылка на сообщение
Поделиться на других сайтах
3 часа назад, celsoft сказал:

Этой статье больше 10 лет. Уже многое в скрипте изменилось. Разрешать использование PHP в шаблонах плохо и небезопасно. Существуют уже давно другие способы безопасного внедрения сторонних PHP кодов. Они описаны в документации https://dle-news.ru/extras/online/index.html?modules_include.html

Я вас понимаю, для вас обидны высказывания других пользователей скрипта. Но в этом ваша вина. Вы в соседней теме поставили себя выше других, заявив что вы программист, и разбираетесь во всем лучше других, при этом задаете ну очень простые вопросы, которые программист не задаст. И теперь другие пользователи форума будут это постоянно вам "припоминать" эти слова и "тыкать" в них, когда вы просите помощи. Это же форум, публичное место, где ваши сообщения читают и видять все другие пользователи. И делают соответствующие для себя выводы. И они правы, зачем вам давать какие то примеры и помощь, если вы сами заявили, что вы программист. А программист не будет просить примеры, он спросит примерно следующее: "Ребята, хочу внедрить в при выводе новостей через {custom...} свою функциональность, какой файл скрипта отвечает за формирование этого контента". На что ему собственно и ответят где, это кстати файл engine/modules/show.custom.php. После чего он пойдет и сделает ее себе, потому как он программист и любому программисту код в этом файле уже понятен. Но вы же просите дайте готовый пример и код и распишите и расскажите и т.д., а программисту это не нужно. Поэтому вам теперь другие участники форума это и "припоминают".

 

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

 

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

Т.е. вы меня оскорбляете и я должен соглашаться с вашими оскорблениями

Вы продолжаете меня оскорблять, приписывать мне какие-то заявления и мысли. 

Следовало ограничиться этим посмотри файл engine/modules/show.custom.php

 

Ссылка на сообщение
Поделиться на других сайтах
9 минут назад, alexei1800@mail.ru сказал:

Т.е. вы меня оскорбляете и я должен соглашаться с вашими оскорблениями

Вы продолжаете меня оскорблять, приписывать мне какие-то заявления и мысли. 

То есть, это не ты писал? 

Цитата

Я и есть программист и как бы не очень приятно читать, когда отвечают какую-то чушь не по существу.

1) Потому что это строка не должна никуда копироваться и тем более переноситься на другие сайты, о чем вы написали, когда скопировали ее на другой сайт.

Что тут непонятного, копируешь строку в браузере и сохраняешь например как jquery.js, затем добавляешь этот скрипт на слайдер(который надо добавить на сайт), в одном случаи он не открывается  - следовательно слайдер не совместим с этим скриптом, в другом открывается, следовательно совместим. Что вы за чушь пишите!!!

 

10 минут назад, alexei1800@mail.ru сказал:

Следовало ограничиться этим посмотри файл engine/modules/show.custom.php

С чего ты взял, что можешь указывать, кому и и как тут писать, а кому ограничиваться?  

Ссылка на сообщение
Поделиться на других сайтах
3 минуты назад, alex32 сказал:

То есть, это не ты писал? 

 

С чего ты взял, что можешь указывать, кому и и как тут писать, а кому ограничиваться?  

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

 

 

17 минут назад, alex32 сказал:

То есть, это не ты писал? 

 

С чего ты взял, что можешь указывать, кому и и как тут писать, а кому ограничиваться?  

Мне неинтересно читать текст, о том, что я ничтожество, а вы великие программисты, мне интересно только решение моих проблем, желательно с наименьшими трудозатратами.

Ссылка на сообщение
Поделиться на других сайтах

В общем тему можно закрывать. Решение было найдено в файле engine/modules/show.custom.php. Дальнейший флуд считаю неконструктивным

 

Ссылка на сообщение
Поделиться на других сайтах
3 часа назад, alexei1800@mail.ru сказал:

Т.е. вы меня оскорбляете и я должен соглашаться с вашими оскорблениями

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

 

3 часа назад, alexei1800@mail.ru сказал:

Следовало ограничиться этим посмотри файл engine/modules/show.custom.php

Если вы внимательно посмотрите, то я вам об этом и написал, и других сообщений в этой теме до этого от меня не было. Но вы не можете указывать другим, что и как им отвечать, они такие же участники этого форума как и вы, у вас у всех одинаковые права и обязанности. Если вам неприятно что кто то "ерничает" над вашими сообщениями, то не пишите тогда вопросы в публичных форумах. У нас есть техническая поддержка https://dle-news.ru/index.php?do=feedback вы можете писать только туда, на ваши сообщения будет отвечать только техническая поддержка и никто другой, ваши сообщения и вопросы не будут публичны, и "ерничать" над вами официальная тех. поддержка никогда не будет. Но форум это публичная площадка. И на нем вам отвечают много пользователей, которые никак не относятся к поддержке, или официально к нашей компании, это обычные пользователи такие же как и вы. Отвечают они так как вы поставили вопрос (иногда правильно отвечают, иногда совершенно неправильно, потому как они такие же пользователи форума а не тех. поддержка). Вы не ставили свой вопрос что вас интересует имя файла, это уже я просто по своему опыту догадался, и написал вам ответ без собственно вопроса. А вы прочитайте свой изначальный вопрос в начале вашей темы и подумайте как бы вы на него ответили, если бы его задал другой человек.

Ссылка на сообщение
Поделиться на других сайтах
8 часов назад, celsoft сказал:

Этой статье больше 10 лет. Уже многое в скрипте изменилось. Разрешать использование PHP в шаблонах плохо и небезопасно. Существуют уже давно другие способы безопасного внедрения сторонних PHP кодов. Они описаны в документации https://dle-news.ru/extras/online/index.html?modules_include.html

Эм. А вы не знаете своих же тегов?

4 часа назад, alexei1800@mail.ru сказал:

В общем тему можно закрывать. Решение было найдено в файле engine/modules/show.custom.php. Дальнейший флуд считаю неконструктивным

 

Что мешает зайти в документацию и прочесть теги? 

[newscount=x] текст [/newscount] - Выводит текст указанный в тегах если показывается X новость, где X это число показываемой на странице новости. Например [newscount=1] текст [/newscount] покажет текст при показе первой по счету на странице новости.

 

И делаете так:

[newscount=1]<input type="hidden" name="izo" id="izo1" value="img/1.jpg">[/newscount]
[newscount=2]<input type="hidden" name="izo" id="izo2" value="img/dd.jpg">[/newscount]
[newscount=3]<input type="hidden" name="izo" id="izo3" value="img/ee.jpg">[/newscount]
[newscount=4]<input type="hidden" name="izo" id="izo4" value="img/31.jpg">[/newscount]
[newscount=5]<input type="hidden" name="izo" id="izo5" value="img/122.jpg">[/newscount]

Сложно. Настолько что нужно делать eval и подвергать сайт риску или делать правки в движке.

Изменено пользователем Gameer
Ссылка на сообщение
Поделиться на других сайтах

 я сделал небольшую правку в движке engine/modules/show.custom.php в этом файле зарегистрировал переменную которая начиная с 1 увеличивается на единицу, начиная с 1 новости.

 

Спасибо за ваш ответ

Изменено пользователем alexei1800@mail.ru
Ссылка на сообщение
Поделиться на других сайтах
19 часов назад, Gameer сказал:

Эм. А вы не знаете своих же тегов?

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

Ссылка на сообщение
Поделиться на других сайтах
В 13.04.2018 в 13:05, Zero сказал:

А я в самом начале сказал ему смотреть документацию, т.к. там этот тег есть, но он ответил:

Вот такие нынче программисты пошли, что даже условную шаблонную логику не понимают...

Отвечу я всегда отвечаю, когда меня обвиняют в глупости, а в такой конструкции можно использовать теги dle?

[newscount=1]<input type="hidden" name="izo1" id="izo1" value="[xfvalue_image_url_prevbanner]">[/newscount]
[newscount=2]<input type="hidden" name="izo2" id="izo2" value="[xfvalue_image_url_prevbanner]">[/newscount]
[newscount=3]<input type="hidden" name="izo3" id="izo3" value="[xfvalue_image_url_prevbanner]">[/newscount]
[newscount=4]<input type="hidden" name="izo4" id="izo4" value="[xfvalue_image_url_prevbanner]">[/newscount]
[newscount=5]<input type="hidden" name="izo5" id="izo5" value="[xfvalue_image_url_prevbanner]">[/newscount]

Судя по ответу пользователя Gameer можно, но после прочтения документации, можно ли сразу однозначно ответить на этот вопрос?

 

Не кажется ли вам, что правильным ответом на мой вопрос было бы либо ответ посмотри файл engine/modules/show.custom.php.

Либо же ответ пользователя Gameer .

 

Я вот, когда читал документацию целенаправленно искал что-то типа переменной {news_number}, которую еще не ввели, но надеюсь введут

 

 

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, Zero сказал:

Если вы "программист" и работаете с DLE, может стоит немного изучить его классы, понять как оно там хотя бы примерно работает, и тогда станет примерно понятно что можно в друг друга вкладывать, а что нет...
Вы нас не перестаёте удивлять, вместо того что бы открыть пару файлов и посмотреть что бы уже понимать что к чему, каждый раз вопросы о том что есть в документации, или что можно узнать быстрее, чем дождаться ответа тут на форуме...

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

Может потому нужно использовать сторонний шаблонизатор, к примеру Fenom? https://github.com/fenom-template/fenom

Ссылка на сообщение
Поделиться на других сайтах
4 часа назад, Gameer сказал:

Может потому нужно использовать сторонний шаблонизатор, к примеру Fenom?

Кто сказал, что он мало потребляет? Он потребляет очень даже немало. Он потребляет меньше Smarty, который просто неповоротлив, но он не такой уж и быстрый.

Ссылка на сообщение
Поделиться на других сайтах
10 часов назад, celsoft сказал:

Кто сказал, что он мало потребляет? Он потребляет очень даже немало. Он потребляет меньше Smarty, который просто неповоротлив, но он не такой уж и быстрый.

Где я писал что он мало потребляет? Но не зависимо от того, он более гибкий чем сейчас тот что в DLE.

Ссылка на сообщение
Поделиться на других сайтах
4 часа назад, Gameer сказал:

Где я писал что он мало потребляет?

Вы прочитайте на какое сообщение вы отвечали и писали про этот шаблонизатор, а именно:

21 час назад, Zero сказал:

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

 

Соответственно и я вам написал, как может выше описанный вами шаблонизатор, решить указанную проблему? Никак. Вашу гибкость может дать и шаблонизатор DLE, но за счет серьезного проседания производительности.

Ссылка на сообщение
Поделиться на других сайтах
11 часов назад, Zero сказал:

У DLE нет PHP подобной логики даже, вот если бы её добавить, сделать нативный PHP в шаблонах

И не будет никогда. Она ему не нужна. Шаблоны это не PHP код, и верстаться с использованием PHP он никогда не будет, это я могу сказать точно.

 

11 часов назад, Zero сказал:

В итоге получаем что сервис рассчитан на куда больших дилетантов, но шаблонизатор гибче, DLE вроде как для людей поумнее, но шаблонизатор хуже, где логика?

Это лишь ваше персональное мнение. Многие выбирают DLE исключительно из за легкости верстки шаблонов, и отсутствия в нем PHP кодов и PHP логики. Потому как шаблоны делают не только PHP программисты.

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...