Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

Начало и конец условной конструкции в разных файлах расширения

Форум для авторов расширений для phpBB. Здесь можно попросить помощи в разработке у коллег.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB3.1.x/3.3.x | FAQ | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
toxic steel
phpBB 1.4.0
Сообщения: 36
Стаж: 13 лет 2 месяца
Откуда: .msk.ru
Благодарил (а): 10 раз
Поблагодарили: 1 раз

Re: Начало и конец условной конструкции в разных файлах расширения

Сообщение toxic steel »

Да, ваш способ рабочий, спасибо! Эх, из условий придётся городить огород :(

Очень печально, что конструкция

Код: Выделить всё

<!-- SET S_IS_BOT = 1 -->
			
<!-- IF S_IS_BOT -->Сделай что-нибудь<!-- ENDIF -->
Работает только если и SET и условие находятся в одном файле :( Стоит задать SET в одном файле, а проверить его в другом - хитрый план накрывается медным тазом :cry:

Интересно, а об этом можно отрепортить и исправить эту досадную особенность? Или, может быть, есть какая-нибудь навеска типа global? :)
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12372
Стаж: 12 лет 7 месяцев
Благодарил (а): 223 раза
Поблагодарили: 3517 раз
Контактная информация:

Re: Начало и конец условной конструкции в разных файлах расширения

Сообщение Татьяна5 »

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

Отправлено спустя 1 минуту 26 секунд:
toxic steel писал(а): 02.11.2018 22:36 типа global
В page_header или page_footer можно переменную задать (если она не назначается после по коду)
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

Re: Начало и конец условной конструкции в разных файлах расширения

Сообщение rxu »

toxic steel писал(а): 02.11.2018 22:36 а об этом можно отрепортить и исправить эту досадную особенность?
Так работает компилятор шаблонов. Исправлять это не будут.
Аналогичную проблему, только уже с ошибкой, получите, если в одном файле зададите if, а в другом endif. Файлы компилируются по отдельности, а потом соединяются в страницу.
Изображение
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

Re: Начало и конец условной конструкции в разных файлах расширения

Сообщение rxu »

toxic steel писал(а): 02.11.2018 22:36 Стоит задать SET в одном файле, а проверить его в другом - хитрый план накрывается медным тазом
Но это не тот случай. Скорее всего, S_IS_BOT где-то переназначается ядром, между назначением вручную и проверкой.
Изображение
Аватара пользователя
toxic steel
phpBB 1.4.0
Сообщения: 36
Стаж: 13 лет 2 месяца
Откуда: .msk.ru
Благодарил (а): 10 раз
Поблагодарили: 1 раз

Re: Начало и конец условной конструкции в разных файлах расширения

Сообщение toxic steel »

rxu писал(а): 03.11.2018 7:15 Аналогичную проблему, только уже с ошибкой, получите, если в одном файле зададите if, а в другом endif. Файлы компилируются по отдельности, а потом соединяются в страницу.
С этой проблемы тема и началась, она так и называется :)
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

Re: Начало и конец условной конструкции в разных файлах расширения

Сообщение rxu »

toxic steel, ну так используйте обходные пути. В одном файле под условием присваивайте значение какой-нибудь собственной переменной шаблона, в другом проверяйте ее значение и исполняйте нужный код.
Изображение
Аватара пользователя
toxic steel
phpBB 1.4.0
Сообщения: 36
Стаж: 13 лет 2 месяца
Откуда: .msk.ru
Благодарил (а): 10 раз
Поблагодарили: 1 раз

Re: Начало и конец условной конструкции в разных файлах расширения

Сообщение toxic steel »

rxu, я же выше привёл пример того, что мне нужно, вот фрагмент кода из вьюфорум:

Код: Выделить всё

    						<!-- EVENT topiclist_row_append -->
    					</div>
    				</dt>
    				<dd class="posts">{topicrow.REPLIES} <dfn>{L_REPLIES}</dfn></dd>
    				<dd class="views">{topicrow.VIEWS} <dfn>{L_VIEWS}</dfn></dd>
    				<dd class="lastpost"><span><dfn>{L_LAST_POST} </dfn>{L_POST_BY_AUTHOR} {topicrow.LAST_POST_AUTHOR_FULL}
    					<!-- IF not S_IS_BOT --><a href="{topicrow.U_LAST_POST}" title="{L_GOTO_LAST_POST}">{LAST_POST_IMG}</a> <!-- ENDIF --><br />{topicrow.LAST_POST_TIME}</span>
    				</dd>
    			</dl>
    			<!-- EVENT viewforum_body_topic_row_append -->


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

Код: Выделить всё

<!-- IF not S_IS_BOT --><a href="{topicrow.U_LAST_POST}" title="{L_GOTO_LAST_POST}">{LAST_POST_IMG}</a> <!-- ENDIF -->
по-простому забороть никак не получается, в коде останутся хвосты в виде бесхозных "<a> </a>". Мне нужно сделать это фрагмент ЕСЛИ НЕ ГОСТЬ И НЕ БОТ.

rxu писал(а): 03.11.2018 16:42 В одном файле под условием присваивайте значение какой-нибудь собственной переменной шаблона, в другом проверяйте ее значение и исполняйте нужный код
Не очень понимаю как ваш совет мне тут поможет и как я смогу применить это на практике? Не сочтите за труд дать хотя бы примерный пример пример, пожалуйста.

Пока самый жизнеспособный вариант - Татьяны, но совсем не простой :roll: По крайней мере для меня, т.к. я ещё не настоящий сварщик :)
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

Re: Начало и конец условной конструкции в разных файлах расширения

Сообщение rxu »

Второй кусок кода откуда? Или это кастомный стиль?
Изображение
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

Re: Начало и конец условной конструкции в разных файлах расширения

Сообщение rxu »

А, так это 3.1. А я в 3.2 ищу.

Добавление значения через EVENT topiclist_row_append должно работать.
Изображение
Аватара пользователя
toxic steel
phpBB 1.4.0
Сообщения: 36
Стаж: 13 лет 2 месяца
Откуда: .msk.ru
Благодарил (а): 10 раз
Поблагодарили: 1 раз

Re: Начало и конец условной конструкции в разных файлах расширения

Сообщение toxic steel »

rxu писал(а): 05.11.2018 7:05 Добавление значения через EVENT topiclist_row_append должно работать.

Как? Какого?

33254134_fe4b407cdc6918264fde1dd06d83719a_800[1].jpg
Ответить

Вернуться в «Для разработчиков»