Уважаемые пользователи!
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 раз

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

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

Коллеги, пытаюсь модифицировать viewforum_body без курочанья шаблона, по новомодному, молодёжному :)

В соответствующей папке расширения создаю topiclist_row_append.html с условием <!-- IF *** --> и содержимым условия, а в файле viewforum_body_topic_row_append.html - закрываю его (<!-- ENDIF -->). То что "в лоб" не взлетит я уже понял :) Обходной путь, разрешающий растащить условие по разным файлам есть? Мне нужно как раз то что в этом фрагменте находится слегка видоизменить.

Не комментировать же и не пересобирать эту часть шаблона внутри IF ещё раз?!
Перенесено из форума Стили для phpBB 3.2.x в форум Для авторов 01.11.2018 10:25 модератором Sheer

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

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

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

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

<!-- IF * -->
<div style="display: none;">
<!-- ENDIF -->

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

<!-- IF * -->
</div>
<!-- ENDIF -->
Это если менять надо радикально. Для варианта "слегка" есть куча обходных путей без скрытия блока (к примеру, вывести невидимый блок с индентификатором в любом из событий, а от этого блока потом плясать через javascript)

Отправлено спустя 1 минуту 35 секунд:
toxic steel писал(а): 01.11.2018 10:04 Не комментировать же
Комментарий может не сработать, т.к. внутри блока могут оказаться условия или события
Аватара пользователя
toxic steel
phpBB 1.4.0
Сообщения: 36
Стаж: 13 лет 2 месяца
Откуда: .msk.ru
Благодарил (а): 10 раз
Поблагодарили: 1 раз

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

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

Не, мне надо именно код страницы модифицировать, не визуал. Например - попрятать количество просмотров и ответов в теме от роботов (это сейчас просто пример с потолка). В других местах - что-то ещё.

Невидимые блоки не подойдут, мне прям радикально надо убрать из кода фрагменты.
Аватара пользователя
Siava
Поддержка
Поддержка
Сообщения: 5270
Стаж: 19 лет 2 месяца
Откуда: Питер
Благодарил (а): 188 раз
Поблагодарили: 800 раз
Контактная информация:

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

Сообщение Siava »

toxic steel, внутри .html можно комментировать целые блоки с помощью
{#
...
#}
Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb 2.0.x 3.5.x)
Аватара пользователя
toxic steel
phpBB 1.4.0
Сообщения: 36
Стаж: 13 лет 2 месяца
Откуда: .msk.ru
Благодарил (а): 10 раз
Поблагодарили: 1 раз

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

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

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

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

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

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

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

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

Татьяна5 писал(а): 01.11.2018 15:27 display: none; в css отлично работает, боты его понимают
???

Дисплей нон ничего от роботов не прячет. Посмотрите сохранённую текстовую копию любой страницы с дисплейнон.
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12372
Стаж: 12 лет 7 месяцев
Благодарил (а): 223 раза
Поблагодарили: 3517 раз
Контактная информация:

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

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

В поиск скрытые надписи не попадают

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

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

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

Татьяна5 писал(а): 01.11.2018 16:47 В поиск скрытые надписи не попадают
Татьяна, я не готов спорить на этот счёт, ибо при желании вы можете легко проверить эту гипотезу. Достаточно найти любой интернет-магазин, у которого описание-харакетристики-отзывы реализованы на вкладках и посмотреть текстовую сохранёнку или пройтись запросом site: или inurl:
Вы увидите, что содержимое вкладок, которое изначально скрыто под дисплейнон, прекрасно индексируется и участвует в поиске.

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

Давайте про SEO спорить на Сёрче, а здесь - обсудим как быть с условными конструкциями :) Есть задача: физически убрать фрагменты кода со страницы. Вопрос - как её решить?
Вложения
2018-11-01_16-59-57.png
Последний раз редактировалось toxic steel 01.11.2018 17:11, всего редактировалось 1 раз.
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12372
Стаж: 12 лет 7 месяцев
Благодарил (а): 223 раза
Поблагодарили: 3517 раз
Контактная информация:

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

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

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

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

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

Вот фрагмент, про который мы говорим:

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

						<!-- 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 -->

то я хочу его сделать НЕ ГОСТЬ И НЕ БОТ.

Если я просто обнулю переменные topicrow.U_LAST_POST, L_GOTO_LAST_POST и LAST_POST_IMG, у меня в коде останется мусор в виде <a href="" title=""></a>. Не вдаваясь в подробности, почему по моему мнению это плохо, вопрос - как это убрать?
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12372
Стаж: 12 лет 7 месяцев
Благодарил (а): 223 раза
Поблагодарили: 3517 раз
Контактная информация:

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

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

Переназначить только на той странице переменную S_IS_BOT на "гость или бот" (перед этим проверив, что не исчезает ничего нужного)

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

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

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

Изображение

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

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

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

Татьяна5 писал(а): 01.11.2018 17:36 Переназначить только на той странице переменную S_IS_BOT на "гость или бот"
У меня возникли проблемы с гуглением способа сделать это :( Дайте подсказку куда копать или где подсмотреть, пожалуйста.
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12372
Стаж: 12 лет 7 месяцев
Благодарил (а): 223 раза
Поблагодарили: 3517 раз
Контактная информация:

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

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

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

$this->template->assign_vars(array(
    'S_IS_BOT' => !$this->user->data['is_registered'] || $this->user->data['is_bot'],
));
Примерно так (очепятки и неточности быть могут)

Вопрос только в том, где это требуется. Возможно, ещё придётся закрывать объявление условием о некоторой странице
Ответить

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